VirusHunter предупреждает всех пользователей ПК о массовом распространении деструктивного червя Win32.Email-Worm.Wukill.A (aka Win32.Wukill) через вложения в почтовых посланиях, а также через съемные носители информации...


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

VBS - Visual Basic Script. Язык программирования, используемый в Windows-системах. На данном языке пишутся системные скрипт-приложения, а также вспомогательные подпрограммы для Интернет-сайтов.

VB - Visual Basic. Язык программирования, используемый в Windows-системах. На данном языке пишутся многие системные и пользовательские приложения (программы).

Апплет - дополнительная скрипт-программа, использующая т.н. "активные системные сценарии". Обычно написана на VBS или JS (Java Script). Такие программы используются для спец. вставок при оформлении Интернет-страниц (например, движущиеся картинки, страничка со звуковым оформлением и т.п.).

Проводник - так далее по тексту я буду называть Проводник "Explorer" Windows, который используется большинством пользователей для работы с файлами и папками.

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

СНИ - так далее по тексту я буду сокращенно называть "съемные носители информации".

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

%user% - каталог текущего пользователя в ОС Windows 2K/XP.


1. Источники попадания червя Win32.Email-Worm.Wukill.A в компьютер.

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


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

Программа червя написана на языке Microsoft VB версии 6.0 и откомпилирована в формат PE EXE-приложения (Windows-программы). Файл имеет оригинальный размер 49152 байта (никакими утилитами криптования или компрессии код не обработан), однако в некоторых случаях может иметь больший размер (см. п.6 данного описания).
Для работоспособности червя в ОС Windows должна быть установлена техническая библиотека msvbvm60.dll. Этот компонент необходим для работы любых специализированных и пользовательских программ, написанных на Microsoft VB 6-й версии. В Windows 9X/ME он отсутствует (про Windows 2K точно не скажу), но может быть позаимствован, например, из Windows XP (там он точно есть) и записан для 9X/ME в системный подкаталог %windir%\SYSTEM.
Если червь при запуске не находит этот компонент, то на экран выдается стандартное системное сообщение об ошибке запуска программы и заражения системы не происходит:


При запуске вредоносного вложения из почтового послания (название файла всегда одно и то же - MShelp.exe) червь выдает на экран следующее ложное сообщение о "повреждении файла", чтобы сбить пользователя столку:


Затем червь копирует себя в системный каталог под следующими названиями:

%windir%\Mstray.exe
%windir%\MShelp.exe

Сразу следует отметить, что значок-иконка у всех файлов-копий червя при просмотре через Проводник или файловый редактор-менеджер Total Commander косит под значок-иконку, характерный для папок. Вот, например, как будет выглядеть в списке файлов Mstray.exe:


Также червь считывает имя текущего диска, откуда его файл-вложение был запущен (обычно системный диск), после чего пытается скопировать себя на диск или СНИ, имя которого в списке носителей предшествует данному, т.е., например, при запуске с диска C: таковым будет диск А:, а при запуске с диска D: - диск C: и т.п. Если выбранный червем диск или СНИ доступен для записи, то червь также запишет в его корень свою копию MShelp.exe.
Файл Mstray.exe является рабочим файлом червя и при последующих запусках системы будет автоматически получать управление. Для этого в системном реестре создается следующий ключ со значением под названием "RavTimeXP":

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
"RavTimeXP"="%windir%\\Mstray.exe"


Также червь изменяет следующие значения в нижеприведенном ключе реестра:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"Hidden"=dword:00000000
"HideFileExt"=dword:00000001


В принципе, величины данных значений во всех Windows-системах "по умолчанию" являются базовыми. Однако червь изменяет их, т.к. опытные пользователи обычно заменяют в настройках системы величину значения "Hidden" с "0" на "1", чтобы при работе с Проводником были доступны файлы и папки, которым присвоены атрибуты "системный" и/или "скрытый" ("system" и "hidden" соответственно). Что же касается установки червем вышеуказанной стандартной величины значения "HideFileExt" (т.е. "1"), то это ему необходимо для сокрытия расширения "EXE" у файла Mstray.exe и пр. своих копий, чтобы при работе с Проводником такие файлы выглядели как реальные папки (см. картинку выше).
Кроме того, червь заменяет новой величиной и принятое "по умолчанию" следующее значение нижеприведенного ключа реестра:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\CabinetState\]
"FullPath"=dword:00000001


Данное изменение червь производит для возможности осуществления специальной процедуры, связанной с созданием своих копий в открываемых пользователем каталогах (см. п.3 данного описания).
При запуске на чистой машине файла червя под названием winfile.exe непосредственно с СНИ или жесткого диска процедура инсталляции в систему и изменения соответствующих ключей реестра практически полностью идентичны вышеописанным вещам. Отличия заключаются лишь в следующем: при запуске червь не выдает на экран никаких сообщений (поскольку название файла отлично от MShelp.exe), а также не создает никаких файлов кроме как рабочей копии Mstray.exe.
После всех вышеописанных действий червь завершает свою работу и до следующего перезапуска системы остается неактивным.


3. Размножение через носители информации. Деструктивные действия.

При первом перезапуске системы файл червя Mstray.exe запускается на выполнение и остается резидентно в памяти Windows вплоть до завершения ее работы. Рабочее окно вируса не видно пользователю, т.к. располагается за пределами нижней области экрана.
Получив управление, червь сканирует диски A:, а также C:, D: и E: (как внутренние, так и сетевые, если зараженная машина соединена с др. компьютерами локальной сетью и их соответствующие диски открыты для записи) и создает в их корнях следующие файлы:

 - desktop.ini размером 72 байта;
 - comment.htt размером 697 байт.

И тем, и др. файлам червь присваивает кроме прочих атрибуты "скрытый" и "системный", в результате чего файлы не видны пользователю при работе с Проводником.
При обращении через Проводник к любому диску червь записывает в его корень свою копию под названием winfile.exe, а также создает и 2 вышеуказанных файла. При этом система автоматически считывает из файла desktop.ini команду выполнения VBS-подпрограммы из файла comment.htt. Данная подпрограмма является Applet'ом, который обрабатывается специальным разделом реестра - {F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}. Выполняемая в ней процедура позволяет червю копировать себя в любую папку, в которую войдет пользователь при помощи Проводника. Данная процедура выглядит следующим образом: при открытии пользователем какой-либо папки червь копирует в нее файл winfile.exe под именем этой папки. Примеры:

Program Files\Program Files.exe
Мои документы\Мои документы.exe
и т.п.

Чтобы пользователь Проводника ничего не заметил, червь присваивает создаваемому файлу атрибут "скрытый".
Если в папке, в которую вошел пользователь, имеется оригинальный EXE-файл с именем, идентичным ее (папки) имени, то червь "кидает жребий":

 - не создает своей копии в этой папке;

 - создает свою копию с именем папки, предварительно изменив какой-нибудь один символ в имени одноименного оригинального EXE-файла, например: Winamp.exe -> Wizamp.exe;

 - создает свою копию с именем данной папки, перезаписывая при этом соответствующий оригинальный EXE-файл своей копией со всеми вытекающими отсюда негативными последствиями.

Если пользователь использует для работы с папками и файлами такие редакторы-менеджеры, как, например, Total Commander и Far Manager, то вышеописанная процедура копирования червя не работает. Вообще же следует отметить, что довольно сходный алгоритм заражения каталогов (но только без осуществления деструктивных действий) использовался в скрипт-вирусе VBS.Folder, aka VBS.Redlof.a.

Под Windows 2K/XP червь также может случайным образом создавать копии своих файлов desktop.ini, comment.htt и winfile.exe в нижеприведенном каталоге под следующими названиями:

Documents and Settings\%user%\%%%desktop.ini
Documents and Settings\%user%\%%%comment.htt
Documents and Settings\%user%\%%%WINFILE.EXE

, где %%% - случайная комбинация трех символов, позаимствованная от начала имени произвольно выбранной папки или файла на одном из дисков инфицированного компьютера. Примеры:

Documents and Settings\%user%\Типdesktop.ini
Documents and Settings\%user%\Типcomment.htt
Documents and Settings\%user%\ТипWINFILE.EXE

Documents and Settings\%user%\Zntdesktop.ini
Documents and Settings\%user%\Zntcomment.htt
Documents and Settings\%user%\ZntWINFILE.EXE

В памяти машины может присутствовать только одна активная копия червя.


4. Дополнительные маскировочные приемы.

Для того, чтобы спрятать свой активный файл от глаз пользователя и (возможно) антивирусных сканеров, червь использует уникальный метод маскировки, который не встречался мне до этого момента ни в одной др. вредоносной программе: он отслеживает обращения любых Windows-приложений к своему файлу Mstray.exe и, более того - его просмотр через файловые редакторы-менеджеры в списке пр. файлов. При попытке переместить, удалить или просто просмотреть активный файл червя, Win32.Email-Worm.Wukill.A копирует этот файл в др. место и под др. именем, правит значение "RavTimeXP" своего стартового ключа с учетом нового местоположения и имени файла, после чего переводит на него (новый файл) управление. При этом выгружает из системной памяти свой старый процесс и стирает с диска старый файл.
В качестве нового местоположения своего активного файла червь выбирает случайным образом один из следующих системных подкаталогов:

%windir%\system\%name%.exe
%windir%\web\%name%.exe
%windir%\fonts\%name%.exe
%windir%\temp\%name%.exe
%windir%\help\%name%.exe

В качестве нового имени "%name%" активного файла червь может использовать произвольную комбинацию заглавных лат. букв в количестве от одной до пяти. Примеры таких названий:

HFFC.exe
SQQNO.exe
E.exe
KI.exe
QOO.exe
DBBXY.exe
ZX.exe
RPPM.exe
T.exe
VVT.exe
и т.д.

Если, например, новое название файла червя VVT.exe и он оказался помещенным в подкаталог /FONTS, то значение "RavTimeXP" своего стартового ключа червь соответственно выправит на следующее:

"RavTimeXP"="%windir%\\Fonts\\VTT.exe"

Иногда червь может ошибиться, выбрав подкаталог и новое имя активного файла аналогичными старым. Тогда вирус просто дописывает к имени нового файла дополнительный символ "1" - например, VTT.exe -> VTT1.exe, после чего производит вышеописанный процесс, забывая при этом удалить старый файл.
Червь не способен отслеживать обращения к своему активному файлу, производимые при помощи таких файловых редакторов-менеджеров как, например, Volkov или Norton Commander, программные файлы которых выполнены в формате DOS и не используют при создании своего рабочего окна Windows-оболочку.
Под Windows 9X/ME червь скрывает свой процесс от некоторых системных вызовов, в результате чего не фигурирует ни в одном из листингов активных процессов, запущенных под Windows.


5. Хранение временных и технических данных.

Чтобы не загружать системную память лишними малоиспользуемыми данными, червь хранит существенную часть своего кода не в оперативке, а прямо на жестком диске, в виде временного TMP-файла. Также вирус создает специальные временные подкаталоги, в которых располагает дополнительные временные файлы. Все эти объекты создаются червем либо в каталоге временных файлов системы (Windows 9X/ME), либо в каталоге временных файлов текущего пользователя (Windows 2K/XP):

для Windows 9X/ME:

%windir%\TEMP\FTMP00%%.%61\%name%.EXE.txt
%windir%\TEMP\~df%%%%.tmp

Тут "%%" - произвольная комбинация двух символов (цифр и/или заглавных лат. букв), "%" - произвольная заглавная лат. буква, "%name%" - имя текущего активного файла червя, "%%%%" - произвольная комбинация из четырех символов (цифр и/или лат. букв). Например:

%windir%\TEMP\FTMP00A5.D61\MSTRAY.EXE.txt
%windir%\TEMP\~df8ea9.tmp

для Windows 2K/2K Server/XP:

Documents and Settings\%user%\Local Settings\Temp\~df%%%%.tmp

Под любой из ОС Windows червь постоянно обращается к файлу ~df%%%%.tmp. При этом в Windows 9X/ME видимый размер данного файла 1536 байт (скрывается червем), но в реальности он составляет 11776 байт; под Windows 2K/XP размер файла реальный и составляет 16384 байта.


6. Размножение через E-mail.

Червь может рассылать копии своего файла через электронную почту в виде писем с вложением. При этом рассылка может быть осуществлена только в том случае, если в качестве почтового клиента на зараженной машине установлена программа MS Outlook (просьба не путать с MS Outlook Express). Для того, чтобы определить наличие на машине пользователя данной программы, червь ищет в ключах реестра характерный только для нее фрагмент записи - Outlook.Application.
После запуска почтовой программы червь создает свою копию в системном каталоге под следующим названием:

%windir%\MShelp.exe

При проверке пользователем своей почты червь сканирует адресную книгу MS Outlook, извлекает из нее весь список эл. контактов и рассылает по нему свои письма. Для этого он генерирует "на лету" собственное послание, используя компоненты MS Outlook - специальный программный пакет Microsoft "MAPI".
Письма червя имеют следующие характерные особенности:

Поле "От": либо оригинальный адрес пользователя зараженной машины, либо оригинальный адрес того, на чье письмо "отвечает" червь.

Поле "Кому":
имя: MS-DOS.[символьный мусор]
адрес получателя: оригинальный адрес того, кому червь "пишет" письмо

Тема письма: [символьный мусор]MS-DOS.[символьный мусор]

Текст письма: отсутствует

Вложение: файл MShelp.exe (копия червя)

Следует отметить, что размер приложенного файла может превышать оригинальный (49152 байта). Это обусловлено тем, что при прикреплении своей копии к посланиям червь может случайным образом удлинять последнюю секцию файла-вложения, записывая в нее небольшой фрагмент какого-либо имеющегося на зараженной машине EXE-файла, выбираемого случайным образом на произвольном диске.
На каждый адрес червь отправляет свое письмо по отдельности. Поэтому при плохой связи и/или наличии большого количества прибывающих писем может ввести в полный ступор процесс принятия/отправки почты.
После отсылки своих посланий червь удаляет "болванку" письма. Кроме того, в коде вируса не было обнаружено каких-либо признаков того, что он хранит список адресов, на которые уже произвел рассылку - скорее всего, на один и тот же адрес червь может отсылать себя неограниченное количество раз (если, конечно, с этого адреса вновь будут прибывать письма, на которые вирус попытается "ответить").
Червь не использует в своих письмах каких-либо уязвимостей или уловок для возможности автоматического запуска из тела послания.


7. Прочее.

Если в ходе работы червя произошли какие-то внутренние ошибки, то он может выводить на экран следующий текст:

Hello!

В теле червя содержится информационная секция, в которой записаны следующие данные:

CompanyName  gy
ProductName  Xgtray
FileVersion  1.00
ProductVersion  1.00
InternalName  wukill
OriginalFilename  wukill.exe


Компиляция исходника программы червя производилась автором в следующем каталоге (данная строка присутствует в коде вируса):

D:\Program Files\Microsoft Visual Studio\VB98\lhw\XDD\XDD\Xgtray.vbp


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

На момент создания данного описания Win32.Email-Worm.Wukill.A и создаваемые им вспомогательные компоненты антивирусы детектируют так:

Антивирус Kaspersky AntiVirus:
файл winfile.exe (он же MShelp.exe, Mstray.exe и т.д.): Exploit.HTML.Agent.am (ранее детектировался как Email-Worm.Win32.Rays)
файл comment.htt: Trojan.VBS.Starter.a

Антивирус DrWeb:
файл winfile.exe (он же MShelp.exe, Mstray.exe и т.д.): Win32.HLLM.Wukill
файл comment.htt: Trojan.AppActXComp

Антивирус BitDefender Professional:
файл winfile.exe (он же MShelp.exe, Mstray.exe и т.д.): Win32.Wukill.E@mm
файл comment.htt: Trojan.VBS.Starter.G

Также в июне 2008 года была обнаружена еще 1 вариация этого же самого варианта червя, которая отличается лишь размером (53248 байт - оригинальный, но в большинстве случаев иметь 53765 байт) и незначительными отличиями программного кода (модифицирована иконка анимации значка файла). При этом его функционал и код создаваемых компонентов в точности совпадают с вышеописанным вариантом. Антивирусы детектируют данный файл под теми же идентификационными названиями, что и вышеописанный вариант.

Для удаления червя из машины рядовому пользователю рекомендуется проделать следующее:

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

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

Для обнаружения в будущем как известных, так и еще неизвестных вариантов скрипт-троянцев, позволяющих автоматически запускать вредоносный код при обращении Проводника к основному разделу жесткого диска компьютера, Вы можете воспользоваться утилитой №9 из набора VirusHunter'а - STSS (Stealth Trojan Script Searcher).

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

Win32.Email-Worm.Wukill.B
Win32.Email-Worm.Wukill.C
Win32.Email-Worm.Wukill.D (описание не разрабатывалось)
Win32.Email-Worm.Wukill.E (описание не разрабатывалось)


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


Rambler's Top100

0.00586700439453