Detect date
20/11/2002
Класс
Virus
Платформа
Win9x

Родительский класс: VirWare

Вирусы и черви – это вредоносные программы, которые без ведома пользователя саморазмножаются на компьютерах или в компьютерных сетях, при этом каждая последующая копия также обладает способностью к саморазмножению. К вирусам и червям не относятся вредоносные программы, которые распространяют свои копии по сети и заражают удаленные машины по команде "хозяина" (например, программы типа Backdoor), или такие, которые создают в системе свои многочисленные, но не умеющие размножаться копии. Основным признаком, по которому программы выделяются в отдельные классы, является способ их распространения, т.е. как вредоносная программа передает свою копию по локальным или сетевым ресурсам. Большинство известных червей распространяется в виде файлов: во вложении в электронное письмо, при переходе по ссылке на каком-либо WEB- или FTP-ресурсе или по ссылке, присланной в ICQ- или IRC-сообщении, а также через системы файлового обмена P2P и т. п. Некоторые черви распространяются в виде сетевых пакетов, проникают непосредственно в память компьютера и активизируют свой код. Для проникновения на удаленные компьютеры и последующего запуска своей копии черви используют следующие проблемы в системах безопасности: социальный инжиниринг (например, в электронном письме предлагается открыть вложенный файл), недочеты в конфигурации сети (например, копирование на диск, открытый для полного доступа), ошибки в службах безопасности операционных систем и приложений. Что касается вирусов, то их можно разделить по способу заражения компьютера:
  • файловые;
  • загрузочные;
  • макровирусы;
  • скриптовые.
Любой представитель данной категории может дополнительно содержать троянский функционал. Также следует отметить, что многие компьютерные черви используют более одного способа распространения своей копии по сетям.

Класс: Virus

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

Подробнее

Платформа: Win9x

No platform description

Описание

Technical Details

Также известен как "Чернобыль". Резидентный вирус, работает только под Windows95/98 и заражает PE-файлы (Portable Executable). Имеет довольно небольшую длину - около 1Кб. Был обнаружен "в живом виде" на Тайване в июне 1998 - автор вируса заразил компьютеры в местном университете, где он (автор вируса) в то время проходил обучение. Через некоторое время зараженные файлы были (случайно?) разосланы в местные Интернет-конференции, и вирус выбрался за пределы Тайваня: за последующую неделю вирусные эпидемии были зарегистрированы в Австрии, Австралии, Израиле и Великобритании. Затем вирус был обнаружен и в нескольких других странах, включая Россию.

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

Видимо, по тем причинам, что 1) вирус нес реальную угрозу компьютерам во всем мире и 2) дата срабатывания вируса (26 апреля) совпадает с датой аварии на Чернобыльской атомной электростанции, вирус получил свое второе имя - "Чернобыль" (Chernobyl).

Автор вируса, скорее всего, никак не связывал Чернобыльскую трагедию со своим вирусом и поставил дату срабатывания "бомбы" на 26 апреля по совсем другой причине: именно 26 апреля в 1998 году он выпустил первую версию своего вируса (которая, кстати, так и не вышла за пределы Тайваня) - 26 апреля вирус "CIH" отмечает подобным образом свой "день рождения".

Как вирус работает

При запуске зараженного файла вирус инсталлирует свой код в память Windows, перехватывает обращения к файлам и при открытии PE EXE-файлов записывает в них свою копию. Содержит ошибки и в некоторых случаях завешивает систему при запуске зараженных файлов. В зависимости от текущей даты стирает Flash BIOS и содержимое дисков.

Запись в Flash BIOS возможна только на соответсвующих типах материнских плат и при разрешающей установке соответственного переключателя. Этот переключатель обычно установлен в положение "только чтение", однако это справедливо не для всех производителей компьютеров. К сожалению Flash BIOS на некоторых современных материнских платах не может быть защищена переключателем: одни из них разрешают запись в Flash при любом положении переключателя, на других защита записи в Flash может быть отменена программно.

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

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

Длина   Текст            Дата срабатывания   Обнаружен "в живом виде"
1003    CIH 1.2 TTIT     26 апреля           Да
1010    CIH 1.3 TTIT     26 апреля           Нет
1019    CIH 1.4 TATUNG   26 каждого месяца   Да - во многих странах

Технические детали

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

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

Вирус также ищет неиспользуемый блок данных в PE-заголовке. Если в конце заголовка есть "дыра" размером не менее 184 байт, вирус записывает в нее свою startup-процедуру. Затем вирус изменяет стартовый адрес файла: записывает в нее адрес своей startup-процедуры. В результате такого приема структура файла становится достаточно нестандартной: адрес стартовой процедуры программы указывает не в какую-либо секцию файла, а за пределы загружаемого модуля - в заголовок файла. Однако Windows95 не обращает внимания на такие "странные" файлы, грузит в память заголовок файла, затем все секции и передает управление на указанный в заголовке адрес - на startup-прецедуру вируса в PE-заголовке.

Получив управление, startup-процедура вируса выделяет блок памяти VMM-вызовом PageAllocate, копирует туда свой код, затем определяет адреса остальных блоков кода вируса (расположенных в конце секций) и дописывает их к коду своей startup-процедуры. Затем вирус перехватывает IFS API и возвращает управление программе-носителю.

С точки зрения операционной системы эта процедура наиболее интересна в вирусе: после того, как вирус скопировал свой код в новый блок памяти и передал туда управление, код вируса исполняется как приложение Ring0, и вирус в состоянии перехватить AFS API (это невозможно для программ, выполняемых в Ring3).

Перехватчик IFS API обрабатывает только одну функцию - открытие файлов. Если открывается файл с расширением EXE, вирус проверяет его внутренний формат и записывает в файл свой код. После заражения вирус проверяет системную дату и вызывает процедуру стирания Flash BIOS и секторов диска (см. выше).

При стирании Flash BIOS вирус использует соответствующие порты чтения/записи, при стирании секторов дисков вирус вызывает VxD-функцию прямого обращения к дискам IOS_SendCommand.

Известные варианты вируса

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

Известно также об "оригинальных" версиях вируса, срабатывающих в дни, отличные от 26 [апреля]. Данный факт объясняется тем, что проверка даты в коде вируса происходит по двум константам. Естественно, что для того, чтобы поставить таймер "бомбы" на любой заданный день, достаточно поменять лишь два байта в коде вируса.

Смотрите также

Узнай статистику распространения уязвимостей в своем регионе statistics.securelist.com

Нашли неточность в описании этой уязвимости? Дайте нам знать!
Встречай новый Kaspersky!
Каждая минута твоей онлайн-жизни заслуживает топовой защиты.
Узнать больше
Kaspersky IT Security Calculator:
Оцените ваш профиль кибербезопасности
Узнать больше
Confirm changes?
Your message has been sent successfully.