Захват чужих ботнетов


Как побороть червя - часть 2


Как узнать какие команды поддерживает червь? Полный ответ дает только дизассемблирование, однако, на первых порах можно ограничиться просмотром HEX-дампа. Команды управления представляют собой обычные ASIIZ-строки, записанные прямым текстом, но увидеть их не так-то легко! Большинство червей упакованы хитроумными полиморфными генераторами, автоматических распаковщиков для которых не существует. Ну не существует и не надо! Берем любой дампер (ProcDump, Lord PE) и дампим червя в живую. Конечно, полученный PE-файл с вероятностью близкой к единице окажется неработоспособен (как минимум необходимо восстановить таблицу импорта и сделать кучу других мелких дел). Фактически это труп червя, но, для наших целей он вполне подойдет.

Набор команд разнится от червя к червю, в частности, Agobot может: сменить свой ник; сообщить конфигурацию системы; сделать себе харакири; запустить любой исполняемый файл; определить IP-адрес и доменное имя заданного узла; подключиться/отключится от IRC-сервера; зайти на канал и т. д.

Почти все черви используют слегка модифицированный протокол IRC и потому обычные IRC-клиенты для управления ботнетом непригодны, но ведь не писать же своего собственного, верно? Возьмем готового клиента, распространяемого в исходных текстах, например IRSSI, и слегка доработаем его "напильником". Как минимум необходимо вырезать текстовую строку "irssi 0.89 running on openbsd i368" и вырубить все команды автоматичесокго ответа (auto response triggering commands), иначе Мастер легко обнаружит наше присутствие на канале и либо поставит бан, либо армия дронов запигует наш узел до смерти.

Захват чужих ботнетов — это действительно рискованно и очень опасно, поэтому, без предварительной подготовки в этот дремучий лес лучше не ходить.

 

Рисунок 4 просмотр логов брандмауэра на предмет поиска червя




- Начало -  - Назад -  - Вперед -



Книжный магазин