Maximize
Bookmark

VX Heaven

Library Collection Sources Engines Constructors Simulators Utilities Links Forum

Борьба с антивирусами - новый этап. Отладка в вирусах.

whale
2003

1
[Вернуться к списку] [Комментарии]

Здрасьте!

Пару лет назад Зомби писал про отладку в вирусах. Я спрашивал у народа в сети, сделано ли это под виндами и всюду получал отрицательный ответ. Тем не менее, идея козырная - искать unknown entry point, отлаживая файл-жертву и неясно, почему ее еще не реализовали.

Представляю на ваш суд вирус-отладчик Nastena Perelett. (Название - по имени персонажа книги Баяна Ширянова "Срединный пилотаж" - кто не читал тот лох).

Парадигма вируса следующая - запускать заражаемое приложение на отладку. При отладке заполняется таблица - карта исполнения. Это массив, имеющий размер, равный размеру секции кода жертвы. В нее заносятся признаки меток (старший бит) и число выполнений (от 0 до 127, если больше - то 127). Метки определяются по предсказаниям, которые выставляются по адресу следующей по расположению команды или по адресу возврата в случае отладки команды ret. Если адрес следующей выполненной команды не совпал с предсказанным, признак метки записывается в таблицу.

После 4096 шагов отладки таблица анализируется, подыскивается подходящее место для загрузчика и производится заражение. Загрузчик пишется в секцию кода - либо в выполнявшийся участок без меток, либо в не выполнявшийся участок.

Во избежание появления окошек, консолей и прочей хуеты приняты следующие меры. В начале отладки внедряем хук в отлаживаемую прогу. Если отлаживаемый процесс создает окна, управление попадает на него и отладка завершается. При отладке производится проверка на нахождение в пределах секции code. При выходе за ее пределы проверяется, не попали ли мы на нежелательную функцию, если да, отладка завершается.

Отладка кода внутри DLL пропускается. DLL сами по себе могут создавать окна и консоли (например, в MFC-приложениях), однако в этих случаях выручает хук.

Вирус запускается резидентно в эксплорере или в первом попавшемся процессе при отсутствии эксплорера. Если же не удалось запустить себя в другом процессе, вирус работает в текущем (это позволяет работать из-под обычного пользователя в сеансе админа).

Вирус сам себя детектирует при отладке по косвенным признакам. Аверы могут не радоваться: для этого программу надо отлаживать.

Неустраненные недостатки пока что следующие:

В вирусе использованы: функция efork от некоего microb'a, z0mbie'вские RPME (слегка переделанная) и LDE. Ну и сам отладчик сделан на основе его TRACER32.

На заражение файла уходит 1-5 сек (на моем Athlon 700). Постоянных участков кода и явных ссылок на тело нет. Эмуляцией процессора этот вирус обнаружить не удастся.

Вирус проверяет локаль (телефонный код страны) на компе. Если она равна единице (США), раз в неделю производится генеральная чистка содержимого файлов на дисках. Американцы, нечего сидеть за компами, марш строевым шагом на войну или на добычу цинка - это теперь для вас стратегическое сырье Ж;) Следующими после Ирака будем мы. Мы знаем об этом и мы готовы к этому. Может быть, вы и сможете победить Ирак, но никогда вы не победите нас, никто Россию еще не смог победить!

М И Р У М И Р !

Х У Й В О Й Н Е !

П И З Д Е Ц А М Е Р И К Е !

Cкачать пример к статье (64K)

By accessing, viewing, downloading or otherwise using this content you agree to be bound by the Terms of Use! vxheaven.org aka vx.netlux.org
deenesitfrplruua