I-Worm.Cholera является вредоносной программой типа "червь", распространяющейся через сеть Интернет и локальные компьютерные сети. "Червь" пытается проникнуть на компьютер посредством зараженного файла SETUP.EXE, вложенного в сообщение электронной почты. Сообщение имеет заголовок (Subject) "Ok...". Зараженный файл является исполняемым файлом около 40Кб длиной, написанном на языке программирования Microsoft C++. Большую часть исходного кода занимают динамические библиотеки C++. Непосредственно сам "червь" занимает около 7Кб.
"Червь" получил свое название из-за строки в своем коде:
CH0LERA - Bacterium BioCoded by GriYo / 29A
Эта строка, как и все остальные данные "червя" зашифрованы.
Инсталлирование в систему
Сразу же после запуска "червя" (т.е. после запуска зараженного файла, вложенного в сообщение электронной почты), он само - инсталлируется в директорию Windows под именем RPCSRV.EXE. Для того чтобы запускаться каждый раз при очередной загрузке Windows, "червь" добавляет команду "Run=" в файл WIN.INI в директории Windows.
Для поиска директории Windows "червь" не использует соответствующие функции Windows. Вместо этого он сканирует все существующие локальные диски в поиске директорий со следующими именами: \WINDOWS, \WIN95, \WIN98, \WIN, \WINNT. При обнаружении одной из этих директорий, "червь" ищет в ней файл WIN.INI. И только если этот файл найден, "червь" инсталлирует себя в эту директорию.
Таким образом, "червь" может создать несколько своих копий на одном компьютере, поразив все установленные версии операционной системы Windows. Это означает, что в случае, если на компьютере установлена система загрузки нескольких версий Windows, то "червь" активизируется при запуске каждой из них.
Для сокрытия своей деятельности "червь" показывает диалоговое окно следующего содержания:
Setup
Cannot open file: it does not appear to be a valid archive.
If you downloaded this file, try downloading the file again.
[ OK ]
Дальнейшее распространение
При следующем запуске Windows "червь" активизируется посредством команды "Run=" в инициализационном файле WIN.INI. После этого он берет контроль на себя, регистрирует себя в памяти Windows в качестве скрытого приложения (невидимого сервиса), что дает "червю" возможность оставаться активным, даже если пользователь выйдет из системы (log off). Вслед за этим "червь" запускает две другие подпрограммы. Одна из них обеспечивает распространение "червя" через локальную сеть, другая - через электронную почту. Кроме того, остается активной подпрограмма инсталляции. Это означает, что заражаются и все новые обнаруженные на инфицированном компьютере версии Windows.
Все перечисленные подпрограммы работают как основные процессы, т.е. параллельно.
Первая из подпрограмм обеспечивает распространение "червя" по локальной компьютерной сети. Она собирает информацию обо всех сетевых дисках, ищет на них директории Windows и, в случае, если таковые обнаружены, копирует в них зараженный файл RCPSRV.EXE и регистрирует "червя" в файле WIN.INI. В результате, при следующей загрузке вместе с Windows на удаленном компьютере запускается и сам "червь", готовый распространяться дальше.
Вторая подпрограмма посылает зараженные сообщения по электронной почте. Для этого "червь" использует протокол SMTP. Отличительная черта распространения "червя" по электронной почте состоит в том, что он рассылает себя, используя прямое соединение. Это определяет независимость способности "червя" к распространению от типа установленной на компьютере программы для обработки электронной почты.
Раз в шесть секунд эта подпрограмма определяет все активные программы и ищет среди них следующие приложения для работы с Интернет: Outlook, CuteFTP, Internet Explorer, Telnet, Mirc. Обнаружение любой из перечисленных программ дает "червю" основание полагать, что данный компьютер подключен к сети Интернет (это необходимо для используемого "червем" прямого SMTP соединения).
Вслед за этим "червь" извлекает из системного реестра адрес SMTP сервера и адрес электронной почты зараженного компьютера. На основании этих данных он создает новое сообщение, содержащее вложенный инфицированный файл SETUP.EXE и отсылает его.
Адреса электронной почты, по которым "червь" рассылает свои копии, берутся из файлов в директории и поддиректориях Windows. "Червь" сканирует эти директории и ищет файлы с расширениями .HTM, .TXT, .EML, .DBX, .MBX, .NCH, .IDX. Затем он просматривает эти файлы и выбирает строки похожие на адреса электронной почты. За каждый прием "червь" рассылает себя не более чем 10 адресатам.