Pro Вирусы - Валентин Холмогоров
Шрифт:
Интервал:
Закладка:
директивы, общие для всего ботнета;
команды, отдаваемые отдельным подсетям или ботам.
В частности, практически все ботнеты поддерживают команду на загрузку с удаленного сервера и установку обновлений ботов, получение конфигурационных данных: спам-боты загружают в качестве таковых текст рассылаемых сообщений и адреса почтовых серверов для отсылки писем, предназначенные для выполнения веб-инжектов троянцы — встраиваемый в веб-страницы код и список узлов, при установке соединения с которыми осуществляется веб-инжект. Ботнеты, предназначенные для проведения массированных атак на отказ в обслуживании (DDoS-атак) могут получать команду на начало или окончание атаки определенного типа с использованием поддерживаемых вредоносной программой протоколов. Большинство современных DDoS-бот-сетей обладают возможностью осуществлять следующие виды атак.
SYN Flood — отсылка определенным образом сформированных пакетов на атакуемый узел до тех пор, пока тот не перестанет отвечать на запросы.
UDP Flood — бот устанавливает соединение с атакуемым сервером по протоколу UDP, после чего отправляет ему большое количество «мусорных» дейтограмм.
Ping Flood — троянец формирует эхо-запрос с использованием протокола ICMP, который направляется с определенным временным интервалом на атакуемый узел.
DNS Amplification — троянцы отсылают массированные запросы на указанные злоумышленниками серверы DNS с целью вызвать их отказ.
NTP Amplification — отправка массированных запросов на серверы NTP с целью вызвать их отказ.
Большинство банковских троянцев может выполнять команду на полное уничтожение операционной системы на инфицированном компьютере: в результате после успешного хищения средств с банковского счета компьютер жертвы перестает загружаться. Это дает злоумышленникам временную фору до того момента, пока пострадавший от действия вредоносной программы пользователь не начнет бить тревогу и обратится в банк с требованием заморозить несанкционированную транзакцию.
Существуют и оригинальные виды команд, которые могут выполнять некоторые вредоносные программы. Например, предназначенный для рассылки спама и организации DDoS-атак многокомпонентный троянец Trojan.Tofsee обладает некоторыми функциями антивируса: он умеет искать на диске зараженного компьютера файлы по полученному с управляющего сервера списку, отслеживать запущенные в Windows процессы и проверять содержимое системного реестра с одной любопытной целью: отыскания и уничтожения конкурирующих угроз. Таким образом, создатели троянца реализуют своего рода естественный отбор в экосистеме инфицированной машины — устраняя «чужие» вредоносные программы, так или иначе проявляющие активность, Trojan.Tofsee борется за собственную «выживаемость». Следует отметить, что это далеко не единственный подобный случай: специалистам антивирусных компаний известно множество вирусов и троянцев, способных устранять на зараженном ПК другие работающие вредоносные программы в целях конкурентной борьбы за аппаратные ресурсы машины, а также в попытках скрыть от пользователя сам факт заражения.
Методика перехвата управления ботнетами (sinkhole)
Как уже упоминалось ранее, технология DGS обладает рядом архитектурных особенностей, позволяющих специалистам по информационной безопасности успешно перехватывать управление ботнетами. При этом под «перехватом» понимается получение полного управления и контроля над бот-сетью с возможностью не только осуществлять мониторинг и отслеживать состояние сети, но и отдавать команды ботам. Один из наиболее распространенных методов носит наименование sinkhole (англ., «выгребная яма»).
Суть метода кроется в самой реализации механизма DGS. Исследовав образец вредоносной программы методом реверс-инжиниринга, то есть дизассемблировав ее и изучив исходный код, аналитики получают в свое распоряжение алгоритм, с использованием которого бот генерирует адреса управляющих серверов. Зарегистрировав несколько таких адресов, специалисты создают с их помощью собственные управляющие серверы ботнета, способные в ответ на запрос вредоносной программы отправить ей корректный отклик и успешно пройти проверку на подлинность (всю необходимую информацию, как правило, можно почерпнуть из декомпилированного и расшифрованного кода самой вредоносной программы). После этого достаточно лишь тем или иным способом ликвидировать действующие управляющие центры бот-сети. Утратив связь с командным сервером, боты начинают генерировать адреса альтернативных управляющих серверов с использованием уже известного специалистам по информационной безопасности алгоритма DGS, устанавливают связь с принадлежащим им «поддельным» управляющим центром и после успеха этой операции прекращают поиски альтернативных командных узлов. Управление ботнетом захвачено.
В частности, с использованием этого метода сотрудникам российской антивирусной компании «Доктор Веб» удалось перехватить управление несколькими подсетями ботнета Rmnet, бот-сетью Linux.Sshdkit, а также угрожавшим пользователям компьютеров Apple обширным ботнетом BackDoor.Flashback.39.
Почему специалисты по информационной безопасности в некоторых случаях предпочитают перехватить у злоумышленников управление бот-сетью, вместо того чтобы просто уничтожить ее управляющие центры? Потому что в большинстве случаев это не принесет никакого результата: злоумышленники оперативно запустят новые командные серверы, а сами зараженные компьютеры можно избавить от угрозы только в том случае, если их владельцы осознают необходимость установки и своевременного обновления антивирусных программ — убедить в целесообразности этого шага несколько миллионов пользователей инфицированных машин, очевидно, невозможно. В то же самое время перехват управления ботнетом позволяет «заморозить» его, предотвратив дальнейшую вредоносную деятельность сети: злоумышленники больше не могут отдавать команды ботам, и, следовательно, использовать бот-сеть в своих противоправных целях.
В случае с бот-сетями, использующими пиринговые технологии, использование описанного здесь метода, безусловно, невозможно. Вместе с тем, у специалистов по информационной безопасности остается возможность отправлять таким ботам различные команды, например, запрос, в ответ на который вредоносная программа вернет список IP-адресов других зараженных машин, что позволяет оценить размеры ботнета и его географию. Также можно передать ботам список IP-адресов, принадлежащих вирусным аналитикам компьютеров, выполняющих в такой бот-сети функцию маршрутизаторов (узлов Node) с тем, чтобы к ним обращались инфицированные машины, не имеющие выделенного IP-адреса или расположенные в сети, использующей NAT. Это нельзя назвать «перехватом управления» бот-сетью, однако подобный метод позволяет получить достоверное представление о масштабах распространения угрозы.
Глава 5. Технологии проникновения
Существует несколько возможных путей распространения вредоносных программ, причем все они известны довольно давно и хорошо изучены, однако это ничуть не уменьшает масштабов вирусных эпидемий и числа заражений пользовательских устройств троянцами и вирусами. В целом можно сказать, что самая распространенная и основная причина вирусных заражений — это неграмотность самих пользователей, которые не только не желают соблюдать очевидные меры безопасности, но даже не подозревают о том, в каких ситуациях их устройство может быть инфицировано. Давайте кратко рассмотрим основные пути распространения вредоносных программ и дадим им соответствующую характеристику.
Сменные носители информации
Файловые вирусы и черви умеют распространяться самостоятельно, заражая переносные накопители информации — флэшки, sd-карты, даже мобильные телефоны и планшеты, подключаемые к зараженному компьютеру для обмена файлами, например, чтобы скачать на ПК фотографии, или, наоборот, закачать на переносное устройство музыку. Впоследствии достаточно подключить такое инфицированное устройство к компьютеру, и его заражение с большой долей вероятности произойдет автоматически. Выбор устройства для заражения троянец обычно осуществляет путем перечисления имен дисков, содержащих значение «USB», а также смонтированных в системе разделов и логических дисков в поисках съемных накопителей.
Некоторые вредоносные программы просто копируют себя на съемный носитель, а затем создают в его корневой папке файл autorun.inf, автоматически запускающий троянца или червя при обращении к такому накопителю. В некоторых версиях Windows (например, ранних версиях Windows XP) запуск мог осуществиться и вовсе в момент подключения такого устройства к компьютеру.