VirusHunter предупреждает всех пользователей ПК о массовом распространении вируса Win32.ChinaWorm (aka Win32.Perlovga.A, Perlovga.B), копирующего себя на съемные и стационарные носители информации, создавая помехи в работе с зараженными устройствами...


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

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

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

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

%drivename% - условное обозначение имени диска в тех случаях, когда конкретизация его имени не имеет существенного значения;

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


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

Источником распространения вируса Win32.ChinaWorm могут являться любые СНИ: флоппи-диски, USB Flash-диски, Card Memory - съемная память, используемая в цифровых фотоаппаратах и видеокамерах, и т.п.


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

Вирус является многокомпонентной вредоносной программой, разработанной в Китае под ОС Windows. Размер каждого из вредоносных компонентов разнообразен и колеблется в пределах от 1 до 70 кб. Часть из них написана на языке Microsoft Visual C++, а часть - на Ассемблере. Все компоненты являются PE EXE-файлами (Windows-приложениями), некоторые из которых сжаты утилитой компрессии "MEW".
В корне зараженного СНИ присутствуют следующие 3 файла:

%drivename%\host.exe - файл, содержащий в себе копию вируса и троянскую программу (размер 70207 байт);
%drivename%\copy.exe - вспомогательный файл, используемый для "правильной" инсталляции вируса в систему;
%drivename%\autorun.inf - вредоносный файл-дроппер (размер 34 байта), используемый для автозапуска компонента copy.exe при обращении к инфицированному СНИ, а впоследствии - к логическим и сетевым дискам зараженного компьютера через Проводник.

Всем этим файлам присвоены для маскировки атрибуты "скрытый" и "системный", а также "только для чтения" и "архивный" ("hidden", "system", "read only" и "archive" соответственно). Первые 2 из перечисленных атрибутов делают компоненты вируса невидимыми для визуального просмотра в том случае, если юзер использует для работы с файлами и папками Проводник или программу-менеджер папок и файлов Total Commnader, у которых в настройках "по умолчанию" отключен показ объектов с данными атрибутами.
Принцип неконтролируемого запуска вируса при обращении к файлу autorun.inf через Проводник основан на свойстве Windows автоматически считывать и выполнять инструкции из файлов определенного формата и с определенными именами при чтении данных с СНИ, представляющих собой автозагрузочные диски для работы под оболочкой Windows. Детально о назначении autorun.inf и неконтролируемом запуске вредоносного кода посредством данного файла я писал в статье о троянской программе Trojan.LittleWorm (aka Win32.Worm.Small).
При подключении СНИ к компьютеру под управлением ОС Windows XP или выше, система обычно автоматически открывает содержимое носителя в окне Проводника. В случае с зараженным носителем Windows выдает на экран следующее меню:


Также в меню выбора способа открытия содержимого носителя добавляется дополнительный пункт - второй "Автозапуск".
Все это происходит потому, что система воспринимает носитель, содержащий в своем корне файл autorun.inf, как загрузочный, и запрашивает действие пользователя по обработке такого СНИ.
Если даже пользователь выберет вариант открытия содержимого диска через Проводник, запуска вируса и заражения системы не произойдет: активизация файла copy.exe возможна только в том случае, если пользователь откроет содержимое носителя через меню "Мой компьютер" (т.е. при двойном щелчке на иконке СНИ в общем списке всех подключенных дисков машины). В этом случае система считывает и выполняет инструкцию из autorun.inf, в результате чего автоматически запускает на выполнение copy.exe.
Если же пользователь работает с носителем не через Проводник, а через какой-либо др. менеджер файлов и папок (например, Far Manager или Total Commander), то запуск copy.exe возможен только в том случае, если пользователь собственноручно запустит данный файл. В этом случае вредоносная программа загрузится на выполнение, а на экране появится окно Проводника с содержимым СНИ.
Работоспособность вируса под Windows 9X/ME также возможна, но, во-первых, данные версии ОС никогда не выполняют инструкции из файлов autorun.inf, кроме, как с загрузочных CD/DVD-дисков, так что автоматический запуск файла copy.exe при открытии содержимого СНИ никогда не происходит. Во-вторых, даже при запуске вручную файла copy.exe или host.exe они корректно загружаются на выполнение, что называется, через раз: с большой вероятностью при попытке запуска данных файлов система выдаст на экран стандартное сообщение об ошибке и вирусная программа будет аварийно закрыта без заражения системы. Это объясняется тем, что архитектура обработки программных данных в памяти под ОС Windows 9X/ME производится отлично от более поздних версий данной системы, что и является потенциальной причиной сбоя при неточном выполнении тех или иных процедур из вирусной программы. Но, тем не менее, проведенные эксперименты на тест-машине показали, что примерно с вероятностью 1/5 корректное заражение ОС Windows 9X/ME все же может иметь место, что нельзя не принять во внимание.
Итак, при получении управления copy.exe (написан на Ассемблере и сжат утилитой "MEW") копирует все 3 вредоносные файла в корневой каталог системы под следующими названиями:

autorun.inf -> %windir%\autorun.inf
copy.exe -> %windir%\xcopy.exe
host.exe -> %windir%\svchost.exe

Последние 2 имени умышленно выбраны идентичными оригинальным системным компонентам ОС Windows 2K/XP, расположенным, соответственно, как %windir%\System32\xcopy.exe и %windir%\System32\svchost.exe.
Далее copy.exe запускает на выполнение основной компонент вируса - %windir%\svchost.exe, а сам завершает свою работу.
Компонент svchost.exe (написан на MS Visual C++, не компрессирован) представляет собой "матрешку", содержащую в себе 2 вирусных компонента, которые извлекаются и инсталлируются в систему под нижеприведенными названиями в следующие подкаталоги ОС:

для Windows 9X/ME:

%windir%\SYSTEM\temp1.exe
%windir%\SYSTEM\temp2.exe

для Windows 2K/XP:

%windir%\System32\temp1.exe
%windir%\System32\temp2.exe

После этого данные файлы запускаются на выполнение, а компонент вируса svchost.exe завершает свою работу.


3. Размножение вируса (компонент temp1.exe).

Компонент temp1.exe написан на языке MS Visual C++, имеет размер 35346 байт, сжат утилитой "MEW". Файл носит только атрибут "архивный" (archive), а его дата и время модификации соответствуют реальным значениям данных величин на момент инсталляции в систему. Представляет собой резидентную программу, которая на протяжении всей работы системы с небольшими периодами ищет и заражает как СНИ, подключенные к компьютеру, так и разделы его жесткого диска, а также сетевые диски. Принцип заражения заключается в следующем: вирус, с периодичностью в 12 секунд, "пробегает" по всем активным дискам компьютера с A: по Z: (исключением являются только CD- и DVD-диски) и создает в их корнях файлы autorun.inf, copy.exe и host.exe, которые берет, соответсвенно, как копии вирусных файлов %windir%\autorun.inf, %windir%\xcopy.exe и %windir%\svchost.exe.
Если носитель уже заражен, то вирус удаляет с него свои компоненты и записывает их заново.
Процедура заражения содержит несколько некорректностей:

 - иногда вирус "забывает" заражать какой-нибудь логический диск компьютера и тот длительное время может оставаться чистым;

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


При этом вирус приступает к заражению следующего по списку диска, но при этом запоминает имя устройства, на которое запись не удалась, и возобновляет попытку через 2 секунды; в случае повторной неудачи очередная попытка будет осуществлена через оставшиеся 10 секунд цикла;

 - если по какой-либо причине компоненты вируса, которые должны быть скопированы на заражаемый диск, отсутствуют (например, были удалены антивирусом), то вирус все равно создаст в корне заражаемого диска компонент autorun.inf;

 - при попытке заражения дисков A: и B: (флоппи), даже в случае отсутствия в них дискеты, вирус "передергивает" данные дисководы, чем и выдает свое присутствие.

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

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]
"load"="%windir%\\svchost.exe"


Таким образом, при каждом последующем старте Windows 2K/XP будет получать управление вирусный компонент %windir%\svchost.exe, который, в свою очередь, будет перезаписывать и запускать на выполнение компоненты temp1.exe и temp2.exe.
Вышеуказанное значение пишется в ключ только один раз - при запуске temp1.exe, и более его (значения) наличие не проверяется.
Под Windows 9X/ME данная запись не создается вообще, поскольку такого раздела в ключах реестра там нет. Таким образом, вирус сможет снова получить управление при перезапуске системы только в том случае, если пользователь собственноручно запустит с зараженного диска вредоносный компонент copy.exe.
Если пользователь пытается отключить СНИ в тот момент, когда зловред осуществляет заражение последнего, то система выдает на экран следующее сообщение:



4. Удаленное администрирование зараженного компьютера
(компонент temp2.exe).

Компонент temp2.exe написан на языке Ассемблер, имеет размер 2085 байт (не компрессирован). Файл носит только атрибут "архивный" (archive), а его дата и время модификации соответствуют реальным значениям данных величин на момент инсталляции в систему. Представляет собой троянскую программу типа "бэкдор", которая должна была бы на протяжении всей работы Виндовс оставаться в памяти компьютера и отслеживать активное Интернет-соединение для последующей скрытной связи с сервером злоумышленников и приема удаленных команд управления зараженным компьютером. Однако, по причине какой-то внутренней ошибки при попытке установить соединение происходит аварийное закрытие программы. Предположительно сбой происходит из-за несоответствия некоторых специфических сетевых функций, используемых в бэкдор-программе, с возможностями некитайской ОС Windows. Об этом свидетельствует и тот факт, что в коде бэкдора имеется фрагмент тест-процедуры, связанной с отладкой его программы, т.е. автор производил контрольную проверку под отладчиком на наличие ошибок по ходу компиляции программы и наверняка не стал бы добавлять к прочим компонентам вируса нерабочую программу.
Вообще же бэкдор должен проделывать следующие вещи: при запуске он пытается найти в потоках данных, обрабатываемых системой, сетевые (не локальные) IP-адреса каких-либо серверов (неважно каких именно). Если таковых не обнаружено, то сетевой адрес генерируется случайным образом при помощи специального математического модулятора, встроенного в код программы, или берется адрес "по умолчанию" - 0.0.0.0. Далее бэкдор имитирует запрос к данному IP-адресу на 53-м порту (на этом месте в случае некитайской версии ОС Windows программа аварийно закрывается). В случае активного подключения к сети Интернет бэкдор отсылает данный запрос якобы на выбранный IP-адрес, а в реальности - перенаправляет его на сервер злоумышленников

hnmy.3322.org

При удачном соединении с данным сервером бэкдор открывает произвольный порт, передает на удаленный сервер внешний IP-адрес зараженного компьютера, а также номер открытого порта, и ждет команд от злоумышленников.


5. Прочее.

При активном подключении к сети Интернет, опять же под китайской версией Windows, компонент вируса svchost.exe открывает в установленном "по умолчанию" Web-броузере ссылку http://www.jiaozhu.net. По этой ссылке загружается следующая страница:


При этом svchost.exe пытается искать в домене данного портала какие-то EXE-файлы. В случае обнаружения файлы скачиваются в системный подкаталог %windir%\Temp\, проверяются на наличие повреждений и, если структура файлов не нарушена, то производится их запуск на выполнение.
Также в коде svchost.exe содержится несколько какихо-то текстов на китайском языке.
Иконка данного файла при просмотре в Проводнике выглядит следующим образом:


Если просмотреть свойства данного файла, то можно увидеть следующую информацию:

Версия файла: 1.0.0.1
Версия продукта: 1.0.0.1
Внутреннее имя файла: BindFile
Исходное имя файла: BindFile.EXE
Название продукта: BindFile [4 печатных китайских символа]
Производитель: ничего не указано
Товарные заки: ничего не указано
Описание: BindFile Microsoft [7 печатных китайских символов]
Авторские права: [4 печатных китайских символа] (C) 2005
Язык: Китайский (КНР)

Помимо операций, связанных непосредственно с выявлением и заражением носителей информации, компонент temp1.exe может осуществлять на зараженном компьютере и следующие вещи:

 - выводить на экран некое графическое окно с каким-то текстом;

 - просматривать настройки последнего из используемых Интернет-подключений;

 - просматривать настройки параметров печати документов для установленного в системе принтера "по умолчанию".

При каких условиях производятся данные действия и для чего - непонятно.
У всех компонентов вируса (образцы были получены из разных источников) дата и время модификации их файлов соответствуют следующим величинам (ниже привожу дату и время соответственно):

host.exe - 20.05.2006 и 18.19
copy.exe - 13.05.2006 и 04.40
autorun.inf - 09.05.2006 и 19.36


6. Детектирование и удаление вируса из машины и с СНИ.

На момент создания данного описания компоненты Win32.ChinaWorm антивирусы детектируют под такими номенклатурными названиями:

Антивирус Kaspersky AntiVirus:
файл autorun.inf: не детектируется
файл copy.exe (xcopy.exe): Virus.Win32.Perlovga.a
файл host.exe (svchost.exe): Trojan-Dropper.Win32.Small.apl
файл temp1.exe: Virus.Win32.Perlovga.b
файл temp2.exe: Backdoor.Win32.Small.lo

Антивирус DrWeb:
файл autorun.inf: не обнаруживает
файл copy.exe (xcopy.exe): Trojan.Copyself
файл host.exe (svchost.exe): Trojan.MulDrop.4181
файл temp1.exe: Trojan.Copier
файл temp2.exe: Trojan.DownLoader.10355

Антивирус BitDefender Professional:
файл autorun.inf: Trojan.Pervolga.7bp.INF
файл copy.exe (xcopy.exe): Win32.Perlovga.A
файл host.exe (svchost.exe): Trojan.Dropper.Small.APL
файл temp1.exe: Trojan.Perlovga.B
файл temp2.exe: Backdoor.Small.LO

Для удаления всех вирусных компонентов и устранения проблемы блокирования некорректно вылеченных носителей при обращении к ним через Проводник, я рекомендую Вам проделать следующее:

 - проверьте компьютер установленной на нем антивирусной программой;

 - в случае обнаружения вируса, отключите все сетевые подключения (включая и Интернет), закройте все открытые окна Проводника, после чего при помощи Диспетчера задач завершите вредоносный процесс temp1.exe;

 - используя программу Total Commander (предварительно включив в ней поддержку просмотра скрытых/системных папок и файлов) или Far Manager, удалите со всех дисков компьютера, а также с подключенных к нему СНИ, вредоносные файлы в корневых каталогах:

%drivename%\autorun.inf
%drivename%\copy.exe
%drivename%\host.exe

Также удалите из системы файлы

%windir%\autorun.inf
%windir%\xcopy.exe
%windir%\svchost.exe

, а также:

для Windows 9X/ME:

%windir%\SYSTEM\temp1.exe
%windir%\SYSTEM\temp2.exe

для Windows 2K/XP:

%windir%\System32\temp1.exe
%windir%\System32\temp2.exe

Если не удалить из корневых каталогов дисков файл-дроппер autorun.inf, то прямое обращение к ним через Проводник (двойной щелчок на иконке диска в общем списке активных носителей) будет заблокировано системой, а на экране появится системное сообщение об ошибке вида


После очистки от вируса компьютер необходимо перезагрузить, т.к. Проводник будет хранить в памяти имена всех заблокированных стационарных дисков вплоть до завершения текущего сеанса работы с системой (у съемных - например, USB Flash - до момента их отключения, т.е. достаточно просто вынуть из разъема заблокированную флэшку и вставить ее снова - блокировка пропадет). Это обусловлено использованием специальных потоков данных и некоторых временных ключей реестра (по соображениям безопасности не приводятся).

 - если Вы пользуетесь Windows 2K/XP или выше, то создайте файл 1.reg, в который впишите следующий текст (указан между "звездочками"):

****************************************
REGEDIT4


[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]
"load"=-


****************************************

Сделать это можно, например, при помощи системного редактора "Блокнот" (Notepad); далее сохраните созданный файл и запустите его на выполнение. При этом последовательно нажмите опции "Да" и "ОК".
Операцию с применением файла 1.reg необходимо проделать по одной простой причине: если не удалить созданную вирусом запись в ключе реестра, то после его (вируса) удаления система при каждом старте будет выдавать на экран 2 последовательных сообщения об ошибке следующего вида:




Для тех, кто по-прежнему хочет пользоваться такой небезопасной вещью, как Проводник, настоятельно рекомендую включить показ скрытых/системных фалов и папок при работе в нем, для чего Вы можете воспользоваться утилитой из спец. набора от VirusHunter'а, который можно скачать здесь. Кроме того, с учетом потенциальной опасности, которую несет неконтролируемое считывание системой данных из вредоносных файлов autorun.inf, для пользователей Windows XP была разработана специальная утилита, выгружающая из системной памяти потоки данных, связанные со считыванием и выполнением инструкций из файлов autorun.inf. Данная утилита также добавлена в спец. набор от VirusHunter'а. Перед использованием обеих утилит настоятельно рекомендую прочитать прилагаемое к набору руководство пользователя (в частности - для второй, поскольку ее работоспособность зависит от некоторых системных условий).

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

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

Win32.ChinaWorm.II


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


Rambler's Top100

0.004065990448