Защищаемся от malware с помощью BufferZone
Вывод
Построение правил iptables
Таблица tproxy содержит все встроенные цепочки, наиболее естественно использовать PREROUTING. Самое простое правило, которое направит нужный пакет в Zorp, выглядит так:
# iptables -t tproxy -A PREROUTING -j TPROXY --on-port 50080
Но чтобы не засорять Zorp мусором, отсеивая пакеты, которые не должны проходить через фильтр, средствами самого Netfilter, лучше указать интерфейс, с которого ожидается пакет, поэтому для каждого создадим свои цепочки. Остальные пакеты будут проходить в соответствии с политикой по умолчанию (-Р):
# iptables -t tproxy -P PREROUTING ACCEPT
# iptables -t tproxy -P OUTPUT ACCEPT
Создаем цепочки для каждого интерфейса:
# iptables -t tproxy -N PRlocal
# iptables -t tproxy -N PRdmz
# iptables -t tproxy -N PRinternet
И привязываем их к своему интерфейсу:
# iptables -t tproxy -A PREROUTING -i eth0 -j PRinternet
# iptables -t tproxy -A PREROUTING -i eth1 -j PRlocal
# iptables -t tproxy -A PREROUTING -i eth2 -j PRdmz
Заполняем:
# iptables -t tproxy -A PRlocal -p tcp --dport 80 ↵
-j TPROXY --on-port 50080
# iptables -t tproxy -A PRlocal -p tcp --dport 22! ↵
-d zorp.domain.com -j TPROXY --on-port 50022
# iptables -t tproxy -A PRintenet -p tcp --dport 80 ↵
|
|
-j TPROXY --on-port 50080
И разрешаем прохождение по цепочке INPUT:
# iptables -P INPUT DROP
# iptables -A INPUT -m tproxy -j ACCEPT
# iptables -A INPUT -m state ↵
--state ESTABLISHED,RELATED -j ACCEPT
# iptables -A INPUT -i lo -j ACCEPT
# iptables -N LOlocal
# iptables -A INPUT -i eth1 -j LOlocal
# iptables -A LOlocal -p tcp --dport 22 --syn -j ACCEPT
# iptables -A LOlocal -p udp --dport 53 -j ACCEPT
# iptables -A LOlocal -p tcp --dport 25 --syn -j ACCEPT
# iptables -A LOlocal -j LOG --log-prefix "LOblue DROP: "
# iptables -A LOlocal -j DROP
# iptables -N LOdmz
# iptables -A INPUT -i eth2 -j LOdmz
# iptables -A LOdmz -p udp --dport 53 -j ACCEPT
# iptables -A LOdmz -j DROP
# iptables -N LOinternet
# iptables -A INPUT -i eth0 -j LOinternet
# iptables -A LOinternet -p udp -sport 53 -j ACCEPT
# iptables -A LOinternet -p tcp --dport 25 --syn -j ACCEPT
# iptables -A LOinternet -j DROP
Теперь можно запускать Zorp: «zorpctl start» и проверить результат.
Zorp позволяет на порядок лучше защитить компьютерные системы по сравнению с обычным межсетевым экраном хотя бы потому, что сам прокси даже без контроля приложений изолирует системы от нападений, направленных на более низкий уровень, которые, возможно, не видит Netfilter. Но, к сожалению, настраивать GPL-вариант все-таки непросто. Хотя, впрочем, вовсе не обязательно делать это сразу и за один день, можно постепенно наращивать его возможности.
Сергей Яремчук
Разработчики израильской компании Trustware Inc., образованной в 2003 году, предлагают иной подход, позволяющий активно защищать операционную систему Windows против злонамеренного программного обеспечения и компьютерных атак. Без каждодневных обновлений, с максимальной защитой при минимальном участии пользователя.
Суть технологии Virtualization, используемой в продукте, имеющем название BufferZone, заключается в том, что непроверенная программа помещается в виртуальную среду, наподобие sanbox. Но с некоторым отличием. Такие программы могут видеть файлы на жестком диске, но не могут их изменить. Если же программе потребуется изменение, например параметра реестра, то в виртуальном пространстве будет создана копия и программа будет в дальнейшем работать с ней, не трогая оригинал.
|
|
Для того чтобы избежать утечки информации, непроверенные программы могут вообще не иметь доступа к определенным (confidential) ресурсам.
И, наоборот, доверенные процессы могут видеть все ресурсы (принцип прозрачности) или не иметь доступа к таким ресурсам.
Любая доверенная программа может изменить статус в том случае, когда работает с недоверенным источником. Например, при помощи MS Word пользователь открывает документ, полученный через Интернет. Таким образом, ненадежные программы всегда создают недоверенные ресурсы, а надежный процесс всегда производит доверенный ресурс.
Надежный процесс может получить доступ к непроверенному ресурсу, полученному результату система
защиты также не будет доверять. Если файл, либо реестр изменен доверенной программой, то программа, помеченная как недоверенная, увидит это изменение. А если наоборот? Недоверенная программа, работая с копией, будет уверена, что изменила требуемый ресурс, остальных это изменение не коснется.
Таким образом любой троянец, даже проникнув в систему, не сможет полноценно работать, так как вся информация о его автозагрузке будет находиться в подставном ресурсе.
Кроме того, дисплей и клавиатура для доверенных и недоверенных процессов как бы разделены, поэтому даже если троянцу и удастся в последующем запуститься, то считать с них информацию он не сможет.