ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Авторские статьи
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Отлов сетевых тварей
  #1  
Старый 20.09.2007, 00:32
Аватар для ShadOS
ShadOS
ы
Регистрация: 11.02.2007
Сообщений: 750
Провел на форуме:
1347723

Репутация: 1477


Отправить сообщение для ShadOS с помощью ICQ
По умолчанию Отлов сетевых тварей

Вот решил здесь для потомков разместить свою статью, которая выходила в журнале Хакер.

[Вступление - Introduction]

Начнем с того, что проясним и расскажем что именно подразумевается под этой несовсем знакомой многим технологии – malware honeypot. Для простоты и ради шутки изложения также будем называть далее по тексту malware – малварь (сетевая тварь, нечисть) или вредоносная программа, а honeypot – ханейпотом). Подобные штуки используют многие компании, выпускающие антивирусное ПО (ведь не все образцы заразы им на исследование по почте присылают) – пора и тебе узнать как они это делают. Чаще всего под ханейпотом для малвари подразумевается low-interaction honeypot, т.е ханейпоты слабого и среднего уровня взаимодействия и эмуляции “среды существования” червя, предназначенные для отлова всякого рода сетевой нечести, в том числе еще неизвестных модификаций уже известных червей, точнее червей, эксплуатирующих уже известные уязвимости, путем фейк-процесса заражения "виртуального" хоста. Первая реализация включает в себя использование «песочницы» (sandbox) (зачастую основанной на виртуальной машине, частично эмулирующей инфицируемую систему). Песочница имитирует операционную систему и запускает исполняемый файл в этой имитируемой системе, после чего анализирует изменения, характерные для вредоносных программ. После исполнения программы, антивирусное программное обеспечение анализирует содержимое песочницы на присутствие каких либо изменений, которые можно квалифицировать как присутствие вредоносной программы, и выдает подробный отчет пользователю.

Существует, конечно, достаточно известная техника отлова сетевых червей, которую уже можно отнести к системе высокого уровня взаимодействия: то есть бананльно ставится виртуальная машина (vmware,quemu,bochs etc.) в которую помещается абсолютно чистая Windows с доступом в интернет, как вариант, подключается к локальной сети в виде ethernet-узла со своим IP (естественно, с этим возникает куча проблем - договор с провайдером и так далее) либо вариантом проще: поднятием NAT. Затем наружу транслируем порты вроде RPC DCOM(135), LSASS(445) и т.д. и соответственно порты для централизованного RAT-сервера (если ботамастер управляет червем по HTTP - чаще всего 80 порт, если по IRC - по большей части 6667 - конкретно об используемых backdoor-портах самых распространенных червей можно найти инфу на viruslist.com, хотя с этим тоже могут возникнуть проблемы, ввиду того, что каждый мастер волен повесить систему управления HTTP или IRC-ботнетом на любой порт, тогда мы можем нацелиться на отлов только определенного вида заразы. Далее по большому счету идет банальных сниффинг трафика и мониторинг сетевой активности в системе, ожидающий команды auth от ботмастера и влекущий за собой угон ботнета. Об этом уже писал Крис Касперски в одном из старых номеров Хакера. Главное отличие этой реализации от первых двух заключается в том, что она не столь автоматизированна и требует постоянного вмешательства наблюдателя, хотя и цели преследуются другие. Посему, вышеназванный метод сразу идет лесом: в провайдере, на сеть которого идет атака, никто не будет использовать столь ограниченную реализацию, да и угонять ботнет врядли кто из админов будет. Я ж по большей степени хочу прояснить ситуацию с тем, как именно это организуется Там, в админской обители Т.е. здесь речь идет о более крупномасштабных реализациях, которые создают "виртуальные хосты" в заданной подсети, а далее автоматически (ну или вручную) блокируют заданные адреса для всей подсети провайдера. Конечно же, тема с vmware и ей подобных не нова. Об этом много материала, далее продолжим без упоминания этого метода.


[Пару слов об обнаружении ханипотов]


А что насчет обнаружения и борьбы с подобными ловушками со стороны червя? О методах борьбы с ханипотами на основе vmware и еже с ней сказать особо нечего, точнее не будем повторяться. Антиотладка, обнаружение виртуальной машины, "антинаживки" и прочие классиеческие методы, о которых написано достаточно много - чего стоит только один раздел вирусологии на wasm.ru. Так как принцип работы ханипота заключается в эмуляции “среды существования” вирей, червяков, etc., то если в качестве ханипота используется реальный хост, с реальной ОС, боюсь, идентифицировать его будет весьма проблематично (читай, нетривиальная задача). Если же эта самая виртуальная среда ввиде хоста с бажными демонами эмулируется с помоющью honeyd, например, то обнаружить его можно анализируя отличия в поведении его tcp-ip стека и скриптов, создающих видимость работы различного рода серверного ПО на нем. Так, например, есть сканер, winnie, который может определять honeyd<=1.0.
Вот тут лежит статья по этой теме: http://jon.oberheide.org/files/winnie.pdf
Сам винни-пух лежит тут: http://jon.oberheide.org/projects/winnie/
Пожалуй, эта тема немного тухлая (точнее, применительна только к honeyd<=1.0), так как основанна на несоответствия реализации TCP/IP стека honeyd RFC. В более новых версиях эту “багу” уже пофиксили. Подробнее об этом можно почитать в вышеназванных источниках.

[Продолжаем разговор]

Надеюсь, до сих пор я ничего нового вам не рассказал, но, далее речь пойдет об достаточно простом в использовании и распространенных малварь-ханейпоте для *nix-систем, о котором во всемирной паутине информации маловато (про honeyd писать, конечно, не буду - тема избитая – сразу же бежим на www.securitylab.ru), расскажу лучше о пакете nepenthes с примером его настройки и установки для моей любимой системы Gentoo Linux. Кстати, интересующимся советую посетить сайт http://www.mwcollect.org/ - это что-то вроде проекта коллекции сетевой заразы, собранной не без помощи nepenthes и ее старшего брата HoneyBow Sensor. HoneyBow - это ханейпот высокого уровня имитации (или взаимодействия, если переводить дословно), в отличие от nepenthes. О HoneyBow, возможно, я расскажу когда-нибудь позже где-нибудь еще, так как рамки статьи не позволяют рассмотреть мне все системы одновременно. Что же, продолжим…


[Червь или бот? Проблемы их обнаружения.]


Для начала стоит отметить несколько важных фактов. Как червь, так и бот ведут себя, на первый взгляд, абсолютно одинаково: чаще всего целями атаки заразы являются машины под управлением Windows, поиск целей производится путем сканирования различных дипазонов сетей на предмет машин, использующих уязвимые сервисы и приложения. Конкретно уязвимый сервис или приложение обнаруживается по закрепленному за ним порту, после чего происходит попытка инфицирования. Главное различие между ботом и червем - то, что бот имеет некоторый центральный канал управления, который посылает команды на инфицированный компьютер – чаще всего для этого используется IRC- или HTTP-протокол. Деценрализованные ботнет сети (точнее боты, управляемые децентрализованно) или с нетрадиционными методами управления (ICQ, Jabber) обычно являются только концептами, ввиду того, что malware-разработчикам очень часто не хватает желания или умения создавать что-то новое – здесь лень не является двигателем прогресса. Однако, подробнее об нестандартных методах управления ботнетом можно почитать на сайте Hell Knights Crew в разделе Articles и Research Blog. Ну да что-то я отвлекся… Исходя из того, что бот действует только по приказу, вести себя он может очень даже тихо в течение достаточно длительного периода, и тогда он будет незаметен ни в системе, ни по загрузке канала, ни по сигналам IDS, обнаруживающей сканирование портов в подсети. В общем случае команда может выглядеть как на листинге 1.


Листинг 1

#(3 - 1239214) [2007-01-07 03:39:49.297] [snort]
BLEEDING-EDGE IRC Trojan Reporting (Scan)
IPv4: yyy.yyy.112.37 -> zzz.zzz.31.37
hlen=5 TOS=0 dlen=168 ID=18140 flags=0 offset=0 TTL=128 chksum=56571
TCP: port=3023 -> dport: 8000 flags=***AP*** seq=1493328911
ack=511871482 off=5 res=0 win=64331 urp=0 chksum=51364


Payload: length = 128

000 : 50 52 49 56 4D 53 47 20 23 61 73 74 72 6F 20 3A PRIVMSG #astro :
010 : 5B 53 43 41 4E 5D 3A 20 52 61 6E 64 6F 6D 20 50 [SCAN]: Random P
020 : 6F 72 74 20 53 63 61 6E 20 73 74 61 72 74 65 64 ort Scan started
030 : 20 6F 6E 20 yy yy yy 2E yy yy yy 2E 78 2E 78 3A on yyy.yyy.x.x:
040 : 34 34 35 20 77 69 74 68 20 61 20 64 65 6C 61 79 445 with a delay
050 : 20 6F 66 20 35 20 73 65 63 6F 6E 64 73 20 66 6F of 5 seconds fo
060 : 72 20 30 20 6D 69 6E 75 74 65 73 20 75 73 69 6E r 0 minutes usin
070 : 67 20 32 30 30 20 74 68 72 65 61 64 73 2E 0D 0A g 200 threads...



Хотя, в другом случае бот может получить команду на поиск уязвимых web-приложений (например, Mambo) и скриптов, например, через всеми любимый Google (ну или тот же Yahoo). И тогда IDS будет молчать как рыба:


"PRIVMSG #ch :[GOOGLE] Trying to exploit http://www.example.com/index.php"


Подводя промежуточные итоги: остается только один отправной пункт, на котором мы еще можем что-то успеть сделать, пока не стало поздно – отловить образец заразы во время факта заражения и принять меры, пока сетевая нечисть не начала действовать (например, на нервы), и пока гигабайты трафика не польются наружу в поисках новых юнитов для ботнета, в виде DDoS на какой-нибудь несчастный Интернет-ресурс или тьмы нескончаемых предложений что-нибудь купить для увеличения своего пениса, выучить английский, уклониться от налогов и спать спокойно... Уж тогда-то совсем будет поздно, а твой любимый snort только и будет верещать, как резанный поросенок. Страшно? - Мне тоже. Тогда читай дальше…
__________________
..когда же кто-нибудь выпустит MD5(Unix) брутер на GPU.... жду....
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отлов редиректа Satell PHP, PERL, MySQL, JavaScript 2 11.02.2007 12:58
Задачка для админов. Две сетевых и два провайдера. Егорыч+++ *nix 6 12.12.2006 17:03
Via выпустила материнскую плату для сетевых устройств Exile1985 Мировые новости 0 15.08.2006 12:08
Развитию сетевых услуг в Рунете мешает торможение законодательства dinar_007 Мировые новости 0 17.01.2006 10:29



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ