VirusHunter предупреждает всех пользователей ПК о распространении сразу нескольких вариаций очень опасной троянской программы Backdoor.HideLogon.C (aka Trojan.Spambot), позволяющей скрытно управлять ресурсами пораженных ею компьютеров под управлением ОС Windows, а также использовать компьютеры-жертвы для рассылки спама и вредоносных программ. Кроме того, троянец использует ряд сложных приемов для сокрытия своего присутствия в зараженной системе...


Некоторые определения, встречающиеся в описании.

Корень диска - все файлы в основании диска, исключая все находящиеся на нем папки со всем их содержимым;

%currentpath% - текущий путь;

%windir% - каталог, в который установлена ОС Windows.


1. Источники попадания троянца Backdoor.HideLogon.C в компьютер.

В зависимости от вариации троянца, вредоносный файл может попадать в компьютер одним из следующих способов: через сеть Интернет (загружается в машину др. вредоносными программами или при помощи специальных вредоносных скриптов, встроенных в код Интернет-страниц); через файло-обменные сети под видом "полезного" файла; в виде вложения в спам-письмах.


2. Инсталляция в систему.

Работоспособность троянца изучалась только на машинах под управлением ОС Windows 2K/XP; под более ранними версиями - Windows 9X/ME - тестовые запуски не проводились.
Процедура инсталляции троянца может происходить немного по-разному, в зависимости от способа попадания в компьютер. Если зловред был занесен через сеть Интернет или установлен др. вредоносной программой (одна из таковых была выявлена - см. р-л 5 данного описания), то его файл записывается в подкаталог временных файлов текущего пользователя как

\Documents and Settings\%CurrentUser%\Local Settings\Temp\winlogon.exe

Название файла соответствует одному из основных компонентов ОС Windows 2K/XP - приложению %windir%\System32\winlogon.exe. В результате такой маскировки даже опытный пользователь, у которого установлена защитная FireWall-программа, будет ошибочно полагать, что в Интернет "рвется" системный компонент \System32\winlogon.exe, а не вредоносная программа winlogon.exe, и, очевидно, не разрешит фаерволлу блокировать работу данного файла со всеми вытекающими отсюда негативными последствиями.
Троянец представляет собой Windows-приложение, написанное на Borland Delphi и обработанное несколькими различными утилитами компрессии (сжатия) и криптования (шифрования) программных файлов.
Вредоносный файл winlogon.exe, в зависимости от вариации данной модификации троянца, может иметь различные размеры, несмотря на абсолютно идентичный функционал. Это обусловлено использованием его автором немного отличных способов сжатия и шифрования вредоносного файла каждой из вариаций, очевидно с целью усложнения сигнатурного детектирования последнего антивирусными программами. На данный момент мне известно 3 вариации данной модификации, которые имеют следующие размеры: первая - размер 32768 байт (была выявлена в конце ноября 2007 года); вторая - размер 44544 байта (была выявлена в начале мая 2008 года); третья - размер 57712 байт (была получена как "чистый" дамп второй вариации, что свидетельствует о возможности ее реального существования в таком виде и в компьютерной природе). Файл носит атрибут "архивный" (archive), а дата и время его модификации соответствуют реальному моменту времени, когда последний попал в компьютер и был записан на диск.
Первое, что делает троянец, получив управление - это проверяет версию ОС Windows, а затем и название своего файла: если оно соответствует winlogon.exe, то в ключах автозапуска системного реестра создается следующее значение:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"Firewall auto setup"="%currentpath%\\winlogon.exe"


Если же файл был занесен в машину под названием, отличным от winlogon.exe, то процедура инсталляции немного изменяется: при запуске файла %name%.exe из его тела в текущий каталог извлекается файл sys.bat размером 50 байт, представляющий собой короткий командный файл на языке Batch-скрипт для Windows. Троянец запускает этот файл на выполнение - скрипт должен удалить исходный файл %name%.exe сразу же после того, как последний создаст свою копию под названием winlogon.exe в подкаталоге временных файлов текущего пользователя:

[диск]:\Documents and Settings\%CurrentUser%\Local Settings\Temp\winlogon.exe

Как только троянец создал данную копию, управление передается ей, а исходный файл %name%.exe завершает свою работу и удаляется при помощи sys.bat, после чего последний удаляет и себя. С учетом нового местоположения файла winlogon.exe вирусная запись в вышеуказанном ключе реестра будет иметь следующий вид:

"Firewall auto setup"="[диск]:\\Documents and Settings\\%CurrentUser%\\Local Settings\\Temp\\winlogon.exe"

Иногда зловред ошибается: переносит свой файл в каталог "Temp" даже в том случае, если исходный запущенный файл назывался winlogon.exe, или же, наоборот "забывает" перенести себя в каталог "Temp" под названием winlogon.exe в том случае, когда название исходного файла не соответствует winlogon.exe (в этом случае в автозагрузочной записи указывается название текущей копии троянца - %name%.exe).
В памяти может присутствовать только 1 копия троянца (та, которая загрузилась первой), активность которой сохраняется вплоть до завершения работы системы.
Далее троянец расшифровывает и загружает в свое адресное пространство "в чистом" виде специальный компонент, представляющий собой динамическую библиотеку Windows. При этом имидж содержимого данной библиотеки полностью загружается в память компьютера без необходимости копирования ее файла на диск. Имя данного загружаемого модуля - Rootkit.dll. Написан на языке C++; в "чистом" виде (некомпрессированном и незашифрованном) файл имеет размер 32768 байт. Он является специальным системным драйвером, который скрывает от системных вызовов вредоносный процесс winlogon.exe (а также все файлы с данным названием на всех дисках компьютера), троянский файл на диске, а также созданное им значение с ссылкой на свой файл в автозагрузочном разделе реестра (т.е. "Firewall auto setup"). Как результат, действия троянца становятся невидимы не только для системы, но и для многих антивирусных программ.
Кроме того, троянец создает в нижеприведенных ветках реестра подраздел "SysLibrary", содержащий следующие подразделы и служебные записи:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SysLibrary]
"ImagePath"="\\??\\C:\\WINDOWS\\system32\\DefLib.sys"
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\SysLibrary]
"ImagePath"="\\??\\C:\\WINDOWS\\system32\\DefLib.sys"
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services\SysLibrary]
"ImagePath"="\\??\\C:\\WINDOWS\\system32\\DefLib.sys"
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SysLibrary\Enum]
"0"="Root\\LEGACY_SYSLIBRARY\\0000"
"Count"=dword:00000001
"NextInstance"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\SysLibrary\Enum]
"0"="Root\\LEGACY_SYSLIBRARY\\0000"
"Count"=dword:00000001
"NextInstance"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services\SysLibrary\Enum]
"0"="Root\\LEGACY_SYSLIBRARY\\0000"
"Count"=dword:00000001
"NextInstance"=dword:00000001


Данные записи предназначены для регистрации и использования в системе еще одного компонента, который в дальнейшем будет записан на диск во время работы в сети Интернет в системный подкаталог:

%windir%\System32\DefLib.sys

Данный файл также является руткитом (системным драйвером), предназначенным для сокрытия Интернет-траффика, эксплуатируемого троянцем в ходе своей сетевой активности. DefLib.sys написан на языке C++, размер его файла составляет примерно 8-9 кб (файл был извлечен вручную из кода троянца, поэтому точный его размер мне неизвестен). Находится в теле компонента Rootkit.dll, который и извлекает его по команде основной троянской программы.
Довольно часто троянец допускает серьезную ошибку: при старте системы он "забывает" загрузить на выполнение руткит Rootkit.dll, в результате чего вредоносный файл winlogon.exe, его активный процесс и автозагрузочная запись перестают быть невидимыми для системных запросов. Тогда из "супер-стэлс-вируса" троянец превращается в обычную вредоносную программу.


3. Вредоносные действия во время работы в сети Интернет.

Спустя некоторое время с момента установки в систему (или, соответственно, с момента старта системы после ее перезапуска), троянец пытается подключиться к сети Интернет. Изначально попытка подключения производится на порту "по умолчанию", т.е. на 53-м. Если порт неактивен, заблокирован или занят др. программой, то троянец выдерживает паузу примерно от 8 до 20 минут, что зависит от его внутренних счетчиков, и повторяет попытку подключения.
Также троянец создает дополнительные параметры в нижеприведенных ключах реестра со следующими значениями:

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Desktop]
"host"="66.96.248.197"
"id"="[уникальный ID-номер зараженного компьютера]"

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Security]
"host"="66.96.248.197"


В качестве значения параметра "host" в обоих ключах записан домен сервера злоумышленников, который получает права скрытного доступа к Рабочему столу зараженного компьютера, а также возможность скрытной передачи данных с компьютера/на компьютер в случае работы пользователя в сети посредством веб-браузера Internet Explorer. Что же касается значения параметра "id", которое генерируется системой в зависимости от ряда условий (например, тактовой частоты процессора и т.д.), то оно используется троянцем при генерации фиктивного эл. адреса отправителя при проведении массовых спам-рассылок.
В случае удачной установки соединения с вышеуказанным сервером злоумышленников (передача/принятие данных производится по http-протоколу), бэкдор извлекает на диск компонент DefLib.sys, посредством которого пытается скрыть свой траффик от сетевой защиты, установленной в зараженном компьютере (FireWall'а). Затем на сервер передается следующая информация о зараженном компьютере:

 - версия установленной ОС Windows и имя системного каталога;

 - марка и производитель жесткого диска, какое на нем количество логических разделов, тип файловой системы (FAT32 или NTFS), размер общей емкости винчестера и количество свободного места;

 - марка и производитель сетевой карты, тип подключения к сети Интернет.

Основной функционал бэкдора предусматривает использование инфицированной машины в роли прокси-сервера с целью проведения массовых спам-рассылок рекламного и/или вредоносного характера (например, с целью заманить пользователя на сайт с вредоносной программой или аферным путем выманить у него конфиденциальные данные для получения доступа к виртуальному денежному счету последнего). Для этого бэкдору передаются пакеты данных, содержащие списки потенциальных получателей спам-писем, тем и текста несанкционированных посланий. В качестве SMTP-движка (сервера отправки почтовых посланий) используется подключение к серверу с адресом 209.20.130.33 (центральному серверу почтового провайдера nwlink.com). Используя ID-значение инфицированного компьютера, хранящееся в созданном им ключе реестра, бэкдор авторизирует свое обращение к почтовому серверу nwlink.com и приступает к массовой рассылке спама, видимым источником которой является не сервер злоумышленников, а инфицированный компьютер. Также, естественно, что счета за трафик, потребляемый такими рассылками, придется оплачивать пользователю зараженной машины. Частота спам-рассылок контролируется злоумышленниками.
Также бэкдор может скачивать из сети обновленные версии руткит-компонента DefLib.sys. Для инициализации версии уже установленного файла он считывает из него строку-идентификатор, содержащую текст "ROOTKIT", после которого указан номер версии файла. Если в сети обнаружена более свежая версия файла, то руткит временно выгружается троянцем из памяти, файл перезаписывается более свежей версией, которая загружается на выполнение.


4. Деструктивные процедуры.

Троянец обнуляет (удаляет все содержимое) системного файла

%windir%\System32\drivers\etc\hosts

, который используется при сетевых подключениях для создания логической таблицы соответствий между именами компьютеров и их сетевыми адресами. Очистка данного файла, в принципе, ничего криминального не несет, но в случае массивной офисной сети может привести к нарушению локальных соединений между компьютерами в тех случаях, когда администратор задействовал файл hosts и прописал в нем соответствия имен всех офисных компьютеров присвоенным им IP-адресам.

Помимо сокрытия на диске всех файлов с названиями winlogon.exe, бэкдор скрывает и содержимое всех каталогов, расположенных на уровень выше, чем папка с его копией. Например, если на диске есть каталог 1 с вложенными в него папками \2\3\4\ и при этом в папке 3 расположен вредоносный winlogon.exe, то пользователь сможет видеть лишь файлы, расположенные в папке 1, а все вложенные в нее папки как бы исчезнут с диска. При этом исключением из этого правила являются только системный каталог с находящимися в нем папками (т.е. %windir% или %systemroot% - WINDOWS, WINNT), а также служебные каталоги (Program Files, Recycled, System Volume Information и т.п.). Поэтому в том случае, если запуск копии бэкдора с названием winlogon.exe был произведен из корня какого-либо логического диска компьютера, то все папки этого диска со всем их содержимым окажутся недоступными пользователю до тех пор, пока машина не будет избавлена от троянца.


5. Прочее.

В ходе своих действий в сети Интернет троянец может использовать не только 53-й порт, но и др. доступные для передачи/приема данных порты, выбираемые случайным образом.
В коде компонента Rootkit.dll присутствует строка, оставшаяся после его компиляции на машине злоумышленника:

t:\Projects\c++\bot\release\Rootkit.pdb

В коде руткит-компонента DefLib.sys также имеют место 2 строки - строка, оставшаяся после компиляции программы, и строка идентификации:

T:\Projects\driver\Rootkit2\Rootkit.pdb
и
ROOTKIT       V 1.0.17

Вне зависимости от способа попадания в машину, троянец перепроверяет наличие всех созданных им значений параметров в ключах реестра с промежутками в 1-2 секунды.
Как уже упоминалось выше, была обнаружена вредоносная программа, устанавливающая в компьютер 2-ю из вышеперечисленных вариаций бэкдора HideLogon. Вредоносный файл попадает в компьютер из сети Интернет и записывает какой-то др. вредоносной программой в корень диска C: под следующим названием:

C:\winCWMA3J.exe

Данный зловред представляет собой троянскую программу класса "троян-дроппер", извлекающую из своего тела и устанавливающую в систему несколько др. вредоносных программ, в том числе - вредоносный winlogon.exe. Размер файла winCWMA3J.exe составляет 97280 байт, его код зашифрован несложным крипт-алгоритмом.
После установки и запуска извлеченных вредоносных программ winCWMA3J.exe завершает свою работу и более никак не используется.


6. Детектирование и удаление троянца из машины.

На момент разработки данного описания вариации Backdoor.HideLogon.C и их компоненты (абсолютно идентичны) уже детектировались антивирусами под следующими идентификационными названиями (одна из вариаций - третья, размером 57712 байт, была неизвестна антивирусу Касперского и отсылалась в Лабораторию Касперского):

Антивирус Kaspersky AntiVirus:
1-й тип вредоносного winlogon.exe (размер 32768 байт):
Trojan-Dropper.Win32.Daemonize.c (на диске), Trojan-Dropper.Win32.Agent.clv (в памяти)
2-й тип вредоносного winlogon.exe (размер 44544 байта):
Trojan.Win32.Buzus.eph (на диске), Trojan-Dropper.Win32.Agent.clv (в памяти)
3-й тип вредоносного winlogon.exe (размер 57712 байт):
Trojan.Win32.Pakes.cwy (на диске), Trojan-Dropper.Win32.Agent.clv (в памяти) (включен в антивирусную базу 19.05.2008)
руткит Rootkit.dll: Trojan-Proxy.Win32.Agent.qe
руткит DefLib.sys: Trojan-Proxy.Win32.Agent.pm
троянский файл winCWMA3J.exe: Trojan-Dropper.Win32.Agent.qvp

Антивирус DrWeb:
1-й тип вредоносного winlogon.exe (размер 32768 байт):
Trojan.Spambot.2496
2-й тип вредоносного winlogon.exe (размер 44544 байта):
Trojan.Packed.147
3-й тип вредоносного winlogon.exe (размер 57712 байт):
Trojan.Packed.147
руткит Rootkit.dll: Trojan.Spambot.2486
руткит DefLib.sys: Trojan.Spambot.2486
троянский файл winCWMA3J.exe: Trojan.PWS.LDPinch.1941

Антивирус BitDefender Professional:
1-й тип вредоносного winlogon.exe (размер 32768 байт):
Trojan.Spambot.BZF
2-й тип вредоносного winlogon.exe (размер 44544 байта):
Trojan.Dropper.LDPinch.V
3-й тип вредоносного winlogon.exe (размер 57712 байт):
Trojan.Spambot.BZF
руткит Rootkit.dll: Trojan.Rootkit.Spambot.A
руткит DefLib.sys: Win32.Spambot.B
троянский файл winCWMA3J.exe: Trojan.PWS.LdPinch.TNV

Проведенные тесты на моем компьютере показали, что с вероятностью минимум в 50% антивирусные сканеры неспособны обнаружить присутствие Backdoor.HideLogon.C в памяти и даже просто на диске, когда он запущен на выполнение и маскируется при помощи функционала используемых им руткит-компонентов. Например, сканер Kaspersky AntiVirus 5.0.676 Personal (правда эта версия с устаревшими возможностями) обнаружил активный вирус на диске и в памяти только 2 раза при 5-ти тестах, а сканер DrWeb 4.44.5 для Windows (а это, кстати, один из последних антивирусных продуктов компании) ни разу не обнаружил наличие активной копии троянца в памяти, а лишь соответствующий файл на диске. Также сразу хочу отметить, что уровень эвристического анализа в обоих антивирусах был предварительно выставлен на максимальный уровень. Так что становится очевидным тот факт, что многие др. антивирусные сканеры от прочих производителей, не содержащие столь продвинутых "движков" анализа оперативной памяти и сигнатурной структуры программного кода, как вышеуказанные антивирусы, не смогут выявить наличие троянской программы вообще.

Учитывая сложность обнаружения данного троянца и его удаления из системы, для пользователей Windows XP была разработана обновленная версия специальной утилиты для обнаружения и выгрузки бэкдора из памяти компьютера, а также удаления всех созданных им записей в системном реестре.
Итак, пользователи Windows XP могут пролечить свои компьютеры следующим образом:

1. Скачать с нашего сайта архив с утилитами от VirusHunter'а, который находится здесь;

2. Отключить компьютер от локальной сети и Интернета;

3. Отключить (только временно) в установленной у Вас на компьютере антивирусной программе проактивную защиту (обязательно! - иначе утилита не сможет корректно выгрузить бэкдор и удалить созданные им записи) и файловый монитор (очень рекомендую);

4. Распаковать содержимое архива и запустить утилиту №5, предварительно сохранив все поточные результаты своей работы (открытые документы, базы данных и т.п.), а также закрыв все запущенные программы (например, MS Word, муз. и видео плэйеры, бухгалтерские программы и т.д.) - это необходимо проделать, поскольку по окончании лечения утилита перезагрузит компьютер.
В ходе процедуры поиска и удаления бэкдора из памяти утилита осуществит следующие действия:

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

Важно! Если инфицированная машина при текущей работе с ОС Windows вводилась в Ждущий или Спящий режим, то перед процедурой лечения компьютер необходимо перезагрузить, т.к. иначе процедура удаления троянца из памяти может не иметь положительного результата.
Если все проделать правильно, то Вам лишь останется удалить вредоносный файл %name%.exe (winlogon.exe) и его компонент %windir%\System32\DefLib.sys, которые к тому времени будут являть собой просто файловый мусор (если, конечно, Вы случайно собственноручно снова не запустите бэкдор). Для этого рекомендую воспользоваться установленной в Вашем компьютере антивирусной программой. Для страховки можете перепроверить компьютер моей утилитой, дабы убедиться, что троянца в памяти машины больше нет.
Отдельно хотелось бы обратить Ваше внимание на следующую немаловажную вещь: не увлекайтесь чрезмерно борьбой с файлами под названием winlogon.exe, которые являются невредоносными, а именно:

%windir%\System32\winlogon.exe
%windir%\System32\dllcache\winlogon.exe
%windir%\ServicePackFiles\i386\winlogon.exe
%windir%\$NtServicePackUninstall$\winlogon.exe

Все эти объекты являются резервными или более ранними копиями основного компонента ядра ОС Windows 2K/XP/2K3. Удачная попытка завалить данный системный процесс в памяти компьютера и удалить указанные файлы несомненно приведет к полному краху и дальнейшей неработоспособности ОС Windows - с такими плачевными ситуациями, учиненными пользователями, я уже сталкивался несколько раз. Кроме того, в случае сокрытия троянцем данных файлов на дисках компьютера, все сокрытые файлы, даже невредоносные, будут инициализироваться некоторыми антивирусами как новая угроза Hidden.Object (неизвестная модификация). Так что учтите этот факт при лечении.

На данный момент разработаны и выложены на нашем сайте описания следующих вариантов данного вируса:

Backdoor.HideLogon.A
Backdoor.HideLogon.B


Исследование вредоносного кода и разработка описания: Бройде Герман (aka VirusHunter)
Дата создания: 20.05.2008
Дата внесения последних изменений: 20.05.2008
Автор описания: Бройде Герман (aka VirusHunter)


Rambler's Top100

0.00431299209595