Итальянская группа
🕛 16.03.2009, 13:17
Итальянская группа, в основном, представлена бутовыми вирусами, демонстрирующими интересный визуальный эффект: во время работы пользователя ни с того ни с сего на экране появляется хаотически движущееся светлое пятно (мячик). Первым и наиболее распространенным представителем этой группы является вирус Bx1-1C, на примере которого мы и рассмотрим эту группу. Вирус Bx1-1C (Ping-Pong - Пинг-понг; Italian Bouncing - Итальянский попрыгунчик)Многие из неформальных названий данного вируса связаны с тем, что вирус визуально проявляется в виде светлого ромбика на экране дисплея, двигающегося в случайном направлении и "отражающегося" от символов псевдографики. Формально данный вирус относится к резидентным бутовым вирусам типа Вx1: он заражает как дискеты, так и винчестер, а его хвост расположен в одном кластере, помеченном как сбойный, как на дискетах, так и на винчестере.
Дамп головы и хвоста вируса приведены ниже. Как уже указывалось, инфицируются любые дискеты, а не только системные. Оригинальный бут-сектор находится во втором секторе сбойного кластера, что позволяет использовать его при восстановлении с помощью Norton Utilities или PC Tools. Длина вируса составляет 1536 (600h) байтов.
Процесс начальной загрузки на IBM-совместимых компьютерах состоит в считывании бут-сектора, который размещается по адресу 0000:7C00, и передаче управления по указанному адресу. Когда происходит загрузка с зараженного диска, вместо бут-сектора считывается голова вируса. Затем управление передается на начало вируса. Вирус определяет объем памяти компьютера (слово по адресу 0040:0013) и уменьшает его значение на 2, резервируя место размером 2K под свою копию. Затем вирус копирует себя в зарезервированную область, передает туда управление, ищет свою вторую часть на диске, дописывает к себе свое продолжение и считывает оригинальный бут-сектор (второй сектор псевдосбойного кластера с хвостом вируса) в память по адресу 0000:7C00. Затем вирус перехватывает прерывание 13h с тем, чтобы контролировать обращения к диску, и запускает стандартный системный загрузчик (передавая управление на адрес 0000:7C00). Последний, в свою очередь, загружает IBMBIO.COM и IBMDOS.COM (или IO.SYS и MSDOS.SYS), т.е. происходит стандартная загрузка системы. В дальнейшем, в процессе работы пользователя на ЭВМ, вирус активируется всякий раз, когда выполняется операция чтения с дискеты. Получив управление, вирус анализирует, относится оно к дискете или к винчестеру. Если это прерывание относится к дискете, то сначала вирус проверяет, заражена уже данная дискета или нет. Для этой цели считывается бут-сектор и проверяется его содержимое. Если дискета еще не заражена, то вирус заражает дискету, а затем обрабатывает команду READ. В случае, если дискета уже заражена, вирус сразу переходит к обработке команды READ; так же он поступает в случае, если дискета защищена от записи.
Заражение выполняется следующим образом. Сначала вирус копирует оригинальный бут-сектор в оперативную память. Затем вирус ищет свободный кластер, который он может пометить как сбойный. Если ни одного свободного кластера на дискете нет, то заражение не происходит. Если подходящий кластер найден, то вирус копирует туда оригинальный бут-сектор и свoй хвост (в первый сектор кластера записывается хвост, а во второй сектор - оригинальный бут-сектор). Для того, чтобы занятый вирусом кластер не был использован MS DOS при создании нового файла, вирус помечает этот кластер как сбойный. И, наконец, вирус записывает свою голову в бут-сектор заражаемого диска, предварительно записав в ней номер кластера, содержащего хвост вируса. Заражение дискет происходит стандартным образом: при обращении к дискете. При заражении винчестера вирус анализирует в MBR таблицу разделов (Partition Table) и определяет положение бут-сектора на винчестере.
Стадия проявления у данного вируса наступает через случайный промежуток времени, варьирующийся от десятков минут до десятков часов. Условия активизации точно автору не известны, однако эффект, заключающийся в появлении на экране светлого ромбика (знак 07h ASCII), который хаотически движется по диагоналям, наблюдается при любом типе установленного адаптера. Для обеспечения этого эффекта вирус перехватывает прерывание 10h. Ромбик беспрепятственно проходит сквозь обычные символы, однако отражается от границ экрана и символов псевдографики. В некоторых случаях при прохождении через символ ромбик изменяет цвет символа или заменяет символ собой, искажая содержимое экрана. Изменение цвета часто наблюдается со стандартной подсказкой DOS. При записи в память искажения сохраняются. Поэтому можно исказить редактируемый текст, работая на зараженной машине. Если экран находится в графическом режиме, то движущийся ромбик изменяет цвет полей, через которые он проходит. Для некоторых игр это приводит к быстрому окрашиванию экрана в черный цвет, что делает невозможным продолжение игры.
В теле вируса имеется экзотическая команда, которую выполняет микропроцессор 8086/8088 и не выполняет микропроцессор 80286. Поэтому вирус работоспособен только на машинах класса XT. При попытке загрузиться с зараженной дискеты на IBM PC AT система зависает. Заражаемые дискеты должны иметь сектора размером 512 байтов и кластер, состоящий из двух секторов.
Исторические сведения. Данный вирус появился на Западе примерно в конце 1987 г. В СССР появился в конце 1988 г. (в Киеве в начале 1989 г.). Bx1-1C был первым бутовым вирусом, попавшим в СССР, и получил значительное распространение. Пик эпидемии наблюдался в сентябре 1989 г. Первым и достаточно удачным фагом для этого вируса, появившимся в Киеве, была зарубежная программа PNCL (Софтпанорама, т.1, No. 1). Поскольку данный вирус является одним из самых распространенных бутовых вирусов, имеются многочисленные штаммы. Описанная версия в настоящее время практически полностью уничтожена.
Неформальные названия. Для данного вируса существует порядка десяти неформальных названий. Среди них: Bouncing Dot - Танцующий зайчик; Bouncing Ball - Прыгающий мячик; Italian Bouncing - Итальянский попрыгунчик; Ball - Мячик, Vera Cruz - Вера Круз, Italian - Итальянский. Полидетектор Scan опознает этот вирус как "Ping Pong Virus - Version B [Ping]".
Методы и средства защиты. При проверке полученных дискет удобнее всего сравнивать первые три байта (J-сигнатуру) дампа. Перед считыванием информации с полученной дискеты рекомендуется обязательно провести ее вакцинирование с помощью бутовой вакцины VitaminB.
Вирус можно идентифицировать путем визуального просмотра содержимого бут-сектора (использовать Norton Utilities удобнее чем PCTools). Norton Utilitis (NU) выдает FAT в "полуинтерпретированном" виде и позволяет сразу определить номер кластера, помеченного как сбойный, что облегчает его поиск и анализ. Как уже указывалось, вирус хранит содержимое нормального бут-сектора во втором секторе своего сбойного кластера.
Рекомендуемые в прил.2 полифаги распознают и уничтожают этот вирус, предварительно нейтрализуя его в памяти. Тем не менее лучше выполнять эту операцию, загрузившись с защищенной от записи эталонной дискеты. При борьбе с данным вирусом важно не ограничиваться уничтожением вируса на винчестере, а провести полную ревизию всех используемых дискет.
Дамп головы вируса Bx1-1C
000: EB1C90504320546F 6F6C730002020100 ...PC Tools..
010: 027000D002FD0200 09000200000033C0 .p...3.
020: 8ED0BC007C8ED8A1 13042D0200A31304 .|..-..
030: B106D3E02DC0078E C0BE007C8BFEB900 .-...|.
040: 01F3A58EC80E1FE8 000032E4CD138026 .2.&
... .. .. .. .. .. .. .. .. . . . . . . . .
120: F77DFE5A595B5807 1FEA1B0300C8B801 .}.ZY[X...
130: 02B600B90100E88A FFF606F87D807423 ...}.t#
140: BEBE81B90400807C 0401740C807C0404 .|..t..|..
150: 740683C610E2EFC3 8B148B4C02B80102 t.L.
160: E860FFBE0280BF02 7CB91C00F3A4813E .`...|...>
170: FC8157137515803E FB8100730DA1F581 ..W.u..>...s.
180: A3F57D8B36F981E9 0801C3813E0B8000 ..}.6.>...
190: 0275F7803E0D8002 72F08B0E0E80A010 .u..>...r.
1A0: 8098F726168003C8 B82000F726118005 ...&.. ..&...
1B0: FF01BB0002F7F303 C8890EF57DA1137C ...}..|
1C0: 2B06F57D8A1E0D7C 33D232FFF7F3408B +..}...|3.2...@.
1D0: F88026F77DFB3DF0 0F7605800EF77D04 ..&.}.=..v.}.
1E0: BE01008B1E0E7C4B 891EF37DC606B27E ...|K...}...~
1F0: FEEB0D01000C0001 00240200571355AA ...$..W.U. Хвост вируса, записанный в "псевдосбойном" кластере
000: FF06F37D8B1EF37D 8006B27E02E88DFE ...}...}...~.
010: EB39B80300F606F7 7D04740140F7E6D1 .9...}.t.@...
020: E82A26B27E8BD881 FBFF0173D38B9700 .*&.~...s.
030: 80F606F77D04750D B104F7C601007402 .}.u.t.
040: D3EA80E60FF7C2FF FF7406463BF776C2 ...t.F;.v.
050: C3BAF7FFF606F77D 04750D80E60FB104 .}.u...
060: F7C601007402D3E2 099700808B1EF37D .t.}
... .. .. .. .. .. .. .. .. . . . . . . . .
Штамм Bx1-1C-y (Ping-Pong modified by Yankee Doodle - Пинг-понг, модифицированный вирусом Янки Дудль)
В данном штамме имеются изменения, вносимые вирусами подгруппы музыкальных самоедов. Изменения состоят во введении счетчика, увеличивающегося на единицу при каждом заражении. При достижении счетчиком значения 255 вирус теряет способность к дальнейшему размножению.
Исторические сведения. Выделен и изучен И.В.Сысоевым. Приводимые сведения опираются непосредственно на его сообщение на семинаре.
Неформальные названия. Помимо приведенного выше, отсутствуют.
Методы и средства защиты. Рекомендуется использовать полифаг AV.
Штамм Bx1-1C-h (Hacked Ping-Pong - Искромсанный пинг-понг)
Данный штамм является версией оригинального вируса, в котором непосредственно в загрузочном модуле сделаны изменения, направленные на стирание первых секторов диска при нажатии клавиши Scroll Lock. Из-за ошибок при корректировании загрузочного модуля "по живому" данный штамм только размножается. Впрочем, возможно имеется и "доработанная" версия.
Исторические сведения. Выделен и изучен И.В.Сысоевым. Приводимые сведения опираются непосредственно на его сообщение на семинаре.
Неформальные названия. Помимо приведенного выше, отсутствуют.
Методы и средства защиты. Рекомендуется использовать полифаг AV.