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


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

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

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

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


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

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


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

На машинах под управлением Windows 9X/ME троянец не работает в результате несовместимости некоторых его функций с ядром данных ОС: при попытке запуска вредоносного файла на экран будет выдано системное сообщение об ошибке следующего вида:


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

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

Название файла соответствует одному из основных компонентов ОС Windows 2K/XP - приложению %windir%\System32\winlogon.exe. В результате такой маскировки даже опытный пользователь, у которого установлена защитная FireWall-программа, будет ошибочно полагать, что в Интернет "рвется" системный компонент \System32\winlogon.exe, а не вредоносная программа winlogon.exe, и, очевидно, не разрешит фаерволлу блокировать работу данного файла со всеми вытекающими отсюда негативными последствиями.
Троянец представляет собой Windows-приложение, написанное на языке Ассемблер для Windows. Вредоносный winlogon.exe имеет размер 31232 байта, его код зашифрован при помощи утилиты "EXECryptor", а поверх зашифрованной структуры сжат какой-то утилитой компрессии программных файлов. Размер кода декомпрессированного и расшифрованного файла, полученный в приближении к оригиналу посредством программного дампа, составил 42458 байт. Файл носит атрибут "архивный" (archive), а дата и время его модификации соответствуют реальному моменту времени, когда последний был скачан из сети Интернет и записан на диск.
Первое, что делает троянец, получив управление - это проверяет версию ОС Windows, а затем и название своего файла: если оно соответствует winlogon.exe, то в ключах автозапуска системного реестра создается следующее значение:

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


Если же файл был занесен в машину под названием, отличным от winlogon.exe, то процедура инсталляции немного изменяется: при запуске файла %name%.exe из его тела в текущий каталог извлекается файл sys.bat размером 44 байта, представляющий собой короткий командный файл на языке 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"

В памяти может присутствовать только 1 копия троянца (та, которая загрузилась первой), активность которой сохраняется вплоть до завершения работы системы.
Следующим действием троянца является процедура установки в систему специальной программы - т.н. "руткита" (rootkit), при помощи которой вредоносный процесс скрывается от системных вызовов и, как следствие, не фигурирует ни в одном из списков активных процессов системы, а файл троянца не будет просматриваться на диске, как если бы его вообще не было. Кроме того, на диске будут сокрыты все файлы, названия которых соответствуют winlogon.exe, включая и системный компонент %windir%\System32\winlogon.exe.
Но вернемся к руткиту. Троянец извлекает из своего тела SYS-файл (специальный системный Windows-драйвер, написанный на C++) размером 7923 байта, который устанавливает в систему как

%windir%\System32\DefLib.sys

Данный файл имеет атрибут "архивный" (archive), а также дату и время его модификации, соответствующие реальному моменту времени, когда троянец записал его в систему.
Получив управление, DefLib.sys при помощи сложных программных приемов скрывает от системных вызовов все файлы с названиями winlogon.exe. Для регистрации руткита, как системного сервиса, троянец создает в нижеприведенных ветках реестра подраздел "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


Кроме того, он также скрывает руткит от системных вызовов. В результате этого бэкдор и установленный им руткит скрывают друг друга на диске и в памяти от определенных системных вызовов, в результате чего их присутствие в компьютере не может быть обнаружено ни средствами Windows, ни даже специализированными утилитами.
Если при наличии в памяти компьютера одной копии троянца была произведена попытка его повторного запуска (например, пользователь несколько раз пытался открыть "полезный" файл из разных мест), то управление получает последняя из запущенных копий троянца, а путь к этой копии и ее название записываются в качестве нового значения параметра "Firewall auto setup".


3. Удаленное администрирование зараженного компьютера.

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

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

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


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

http://%s/%s/s_report.php?task=%u&id=%s

На этой же странице бэкдор оставляет и отчеты об ошибках, возникающих по ходу его работы.
Троянец пытается установить соединение с машиной, IP-адрес которого 209.20.130.33 - это главный сервер почтового провайдера nwlink.com. Через него троянец отсылает какие-то данные в Интернет (своим авторам - ?) в виде http-запросов. Кроме того, он связывается со страницей

http://%s/%s/s_alive.php?id=%s&tick=%u&ver=%s&smtp=%s&task=%u

, с которой получает значение переменной spm_net. Это значение бэкдор использует в качестве числа попыток подключения за промежуток времени, равный 1 минуте, к какому-то серверу, имеющему следующий IP-адрес:

123.456.789.012

Также троянец пытается установить устойчивое соединение с ресурсом

www.midlenet.org

, на который сообщает IP-адрес управляемого зараженным компьютером сервера (значение параметра "host"), а также какие-то данные по др. соединениям с зараженным компьютером.


4. Загрузка вредоносных программ из сети Интернет.

Троянец скачивает в зараженный компьютер и запускает на выполнение вредоносную программу (не была обнаружена пользователем зараженного компьютера), которую записывает как

%windir%\maptun.dll

Данный файл скачивается по неявной ссылке

http://%s/%s/slon.php

Также троянец загружает с какого-то ресурса (из кода бэкдора непонятно откуда именно) вредоносную программу (не была обнаружена пользователем зараженного компьютера), которую записывает как

%windir%\System32\mpcsvc.exe

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

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"SiS Mpc Service"="%windir%\\System32\\mpcsvc.exe"



5. Рассылка спам-писем.

Троянец может производить массовые рассылки спам-писем, получая соответствующие команды от злоумышленников. Параметры писем передаются троянцу в виде HTML-документа, который сохраняется в подкаталоге временных файлов текущего пользователя как файл с расширением "TMP" и каким-то фиксированным именем:

\Documents and Settings\%CurrentUser%\Local Settings\Temp\%name%.tmp

В документе содержатся секции, содержащие тему спам-писем, список адресов, на которые будет производиться рассылка, а также текст сообщения. Для того, чтобы троянец мог "разобраться" где какая секция, начало и конец каждого раздела в документе содержат теги, содержащие, соответственно, слова info, emails и text.
При создании заготовки спам-письма троянец генерирует фиктивный адрес отправителя, который имеет следующий вид:

[какой-то набор букв и цифр].%u.qmail@%s

, где "%u" - значение параметра "id", записанного вирусом в вышеупомянутом ключе реестра, а "%s" - один из нижеприведенных почтовых доменов, который выбирается случайным образом и используется троянцем для отправки сгенерированного спам-письма посредством http-протокола:

hotmail.com
yahoo.com
aol.com
google.com
mail.com


Частота спам-рассылок контролируется злоумышленниками.


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

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

%windir%\System32\drivers\etc\hosts

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

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


7. Прочее.

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

ЎЎ№|_>Єч_ __|_'?т№ш<к

, а также второй, на англ. языке и адресованный, очевидно, тому, кто будет изучать тело вируса:

I dont need your interest in.

Также в коде троянца присутствует строка, оставшаяся после компиляции программы на машине ее автора:

d:\projects\C++\bot\release\bot.pdb

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

objfre\i386\Rootkit.sys
и
D:\Kernel\Projects\Rootkit\objfre\i386\Rootkit.pdb

Вне зависимости от способа попадания в машину, троянец перепроверяет наличие всех созданных им значений параметров в ключах реестра с промежутками в 2,5 секунды.
В случае совпадения каких-то неустановленных условий руткит может вызвать глобальный сбой в ядре ОС Windows (одна из наиболее вероятных ситуаций - загрузка зараженного компьютера в Безопасном режиме), что приводит к появлению "синего экрана смерти" и мгновенной перезагрузке компьютера. После такого сбоя работа вируса становится нестабильной, что может повлечь повторения аварийного завершения работы системы. При этом файлы-компоненты вируса и спрятанные им объекты (файлы и папки, которые "пропали" после первого запуска winlogon.exe из корня диска) становятся видимы на диске, а вредоносный процесс более не скрыт в системной памяти.


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

На момент разработки данного описания компоненты Backdoor.HideLogon.B уже детектировались антивирусами под следующими идентификационными названиями:

Антивирус Kaspersky AntiVirus:
файл %name%.exe (вредоносный winlogon.exe): Trojan.Win32.Agent.asu (на диске), Trojan-Proxy.Win32.Small.jp (в памяти)
файл DefLib.sys (руткит): Trojan.Win32.Agent.asu

Антивирус DrWeb:
файл %name%.exe (вредоносный winlogon.exe): Trojan.Packed.147
файл DefLib.sys (руткит): Trojan.NtRootKit.312

Антивирус BitDefender Professional:
файл %name%.exe (вредоносный winlogon.exe): Trojan.Agent.ASU
файл DefLib.sys (руткит): Trojan.Agent.ABGK

При лечении компьютера ни один из антивирусов не может сразу выгрузить из памяти и удалить с диска основной компонент троянца (т.е. вредоносный winlogon.exe или %name%.exe) - только в ходе первой перезагрузки компьютера. Поэтому можно удалить вирус вручную, перезагрузив компьютер в Безопасный режим (это обусловлено еще и тем, что в некоторых случаях антивирусные мониторы и сканеры просто-напросто "не видят" ни вредоносный процесс, ни файл зловреда).
После удаления бэкдора и перезагрузки компьютера все объекты, которые были скрыты, снова становятся доступными для просмотра и работы с ними.

%windir%\maptun.dll
%windir%\System32\mpcsvc.exe

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

Учитывая сложность обнаружения данного троянца и его удаления из системы, для пользователей 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.C


Исследование вредоносного кода и разработка описания: Бройде Герман (aka VirusHunter)
Дата создания: 24.09.2007
Дата внесения последних изменений: 20.05.2008
Благодарности: пользователю Царькову Александру за пересылку вирусного образца для возможности его изучения и детектирования
Автор описания: Бройде Герман (aka VirusHunter)


Rambler's Top100

0.00133204460144