Эксперты из нескольких антивирусных компаний предупредили о возросшей опасности, связанной с новой разновидностью вируса TDL4. Как считают специалисты, в том числе из компании ESET, создатели вируса с нуля переписали такие ключевые его компоненты, как драйвер ядра и модуль, исполняемый от имени пользователя. Столь значимые изменения в коде, как считают антивирусные компании, могут означать, что создатели вируса начали оказывать услуги сторонним кибер-мошенникам по загрузке перехватчиков клавиатуры, рекламных программ и других вредоносных компонентов на машины, зараженные своим «руткитом». | |
Вирус TDL4, известный также под названиями TDSS и Alureon, с момента своего появления стал серьезной головной болью для производителей антивирусов. По современной классификации он относится к классу «руткитов» - захватывает полный контроль над компьютером, открывая дорогу для других видов вредоносного ПО. Последние разновидности этого вируса стали еще более трудной мишенью для антивирусов: так, теперь TDL4 создает скрытый раздел в конце жесткого диска на зараженной машине и делает этот раздел активным. Таким образом, помещенный туда код будет исполнен еще до запуска основной операционной системы Windows и не будет обнаружен стандартным антивирусом. Еще один интересный алгоритм защищает вирус TDL4 от удаления. Скрытый активный раздел имеет особую файловую систему, которая непрерывно проверяет целостность компонентов вируса. Если какие-то файлы будут повреждены, автоматически выполняется их удаление. Кроме того, как и в прежних версиях, сохранено шифрование всех данных, которыми вирус обменивается с серверами управления. Стоит заметить, что TDL4 в свое время стал первым «руткитом», который смог заражать 64-битные версии Windows, обходя новейший механизм, который блокировал исполнение любого кода на уровне ядра, если этот код не имел подписи. Такая защита впервые появилась в 64-битных версиях Windows, чтобы разрешать работу только для драйверов с подписью, но вирус TDL4 успешно обошел эту защиту. Несмотря на активную работу антивирусных компаний, только за весну 2011 года зафиксировано более 4,5 новых заражений на компьютерах конечных пользователей. Кроме передовых алгоритмов самоконтроля, ухода от слежки и шифрования сообщений, вирус TDL4 обладает способностью налаживать связь через одноуровневую сеть Kad, подобную децентрализованным файлообменным сетям, а также умеет заражать эталонную загрузочную запись (MBR-сектор) на жестких дисках зараженных машин. Можно лишь констатировать, что авторы одного из самых сложных и изощренных вирусов последних лет ничуть не снижают темпы «инноваций». Итак, теперь заражение осуществляется следующим образом: — Открывается описатель физического устройства (в нашем случае это \\??\PhysicalDrive0), на котором располагается раздел с именем C: — Подготавливается и записывается образ своей файловой системы в конец жесткого диска — Перезаписывается MBR — кодом, который осуществляет загрузку модулей в ранее подготовленной файловой системе — После успешного заражения на x64 системах происходит перезагрузка, при помощи вызова функции ExitWindowsEx(). Вот так выглядит расшифрованный код MBR, и мы видим имя вредоносного модуля, который должен будет выполниться для дальнейшего запуска руткита: Алгоритм шифрования достаточно прост и сводится к вызову в цикле процессорной команды ROR: Процедура запуска TDL4 с учетом обхода механизма проверки цифровой подписи: — Bios считывает первый сектор загрузочного диска и передает управление на код главной загрузочной записи MBR и таким образом начинается выполнение кода TDL4 — Далее происходит расшифрование кода для дальнейшего выполнения, который предназначен для загрузки модуля с именем ldr16 из файловой системы руткита — Загруженный модуль ldr16 осуществляет перехват прерывания 13h, которое отвечает за работу с жестким диском. Основная задача данного модуля определить разрядность операционной системы (x32 или x64), и в зависимости от нее осуществляется загрузка ldr32 или ldr64. — Оба модуля ldr32 и ldr64 предназначены для загрузки основного драйвера TDL4, которая осуществляется без использования стандартного API, чтобы обойти механизм проверки цифровой подписи. — Сначала происходит размещение кода драйвера в памяти по адресам придлежащим ядру ОС. Далее проводится его регистрация, как драйвера ОС, при помощи вызова недокументированной функции IoCreateDriver(). После этого драйвер можно считать загруженным. Затем продолжается загрузка операционной системы с драйвером TDL4 на борту, после старта происходит внедрение вредоносного кода в некоторые процессы, и в дальнейшем его поведение очень похоже на предыдущую версию TDL3. Вот так выглядит конфигурационный файл бота: TDL4, как и его предыдущие собратья, попал в семейство вредоносных программ Win32/Olmarik и обнаруживается нами, как руткит Win32/Olmarik.ADA.
По материалам сайтов The Register и habrahabr.ru
|