
                   4. НЕРЕЗИДЕНТНЫЕ ФАЙЛОВЫЕ ВИРУСЫ,
                           ОБНАРУЖЕННЫЕ В СССР

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

   Поскольку во  многих случаях  зараженность программы можно определить
визуально, с  помощью просмотра  дампа, описания вирусов будем иллюстри-
ровать характерными  фрагментами дампов.  При этом в качестве заражаемой
программы используется  специальная макетная программа, состоящая из ко-
манды выхода  и некоторого (требуемого для того, чтобы вирус заразил эту
программу, если  в нем  предусмотрен контроль минимальной длины) количе-
ства пустых  операций (NOP),  имеющих для  данного процессора  код  90h.
Такие макетные программы, специально рассчитанные на последующее зараже-
ние  вирусами,   будем  в   дальнейшем  называть   дрозофилами.   Удачно
подобранные  дрозофилы   существенно  облегчают   изучение   вируса,   в
частности, определение  места, куда вирус прячет первые байты. Для этого
достаточно поменять первые байты дрозофилы и опять заразить ее вирусом.



                          4.1. Венская группа

   Венская группа  берет свое  начало с  вируса С-648. Для данной группы
характерен способ  поиска зараженных файлов, основанный на анализе стро-
ки, содержащейся  в команде  PATH, а затем на последовательном просмотре
содержимого описанных  там каталогов.  Кроме того,  вирусы данной группы
обычно используют поле секунд для отметки зараженных файлов. В настоящее
время группа  включает ряд штаммов, наиболее распространенным из которых
является исторически  первый -- С-648. Указанные штаммы отличаются, в ос-
новном, длиной и методом повреждения файлов. В "базисном" вирусе это по-
вреждение состоит  в троянизации  части файлов  путем записи в их начало
команды перехода  на  подпрограмму  перезагрузки  операционной  системы.
Большинство штаммов  используют для выбора "жертв" текущее значение тай-
мера (см.  ниже), однако в литературе описаны и штаммы, использующие для
этой цели значение даты создания файла. В настоящее время известно более
двух десятков  штаммов, относящихся  к этой  группе, включая ряд штаммов
отечественной разработки.


              4.1.1. Базисный вирус С-648 (Vienna -- Вена)

   Неформальное название вируса связано с местом его первого обнаружения
и, по-видимому, разработки. Формально вирус С-648 -- файловый нерезидент-
ный вирус,  поражающий файлы с расширением СОМ. Функционирует на версиях
MS DOS, начиная с 2.0.

   Стратегия заражения --  поиск файла  с расширением  СOM  в  каталогах,
сцепленных в PATH. Заражение СOMMAND.COM выполняется так же, как и зара-
жение любого  другого COM-файла: никаких механизмов по поиску размещения
командного процессора вирус не содержит. При заражении он дописывается в
конец программы  и одновременно  вставляет в  первые три байта COM-файла
команду перехода  на тело вируса. При этом размер файла увеличивается на
648 байтов,  дата создания файла и атрибуты файла не меняются. Заражение
выполняется однократно. Минимальный размер заражаемых файлов -- 10 байтов
(0Ah), максимальный --  64000 байтов  (FA00h). Поскольку вирус определяет
тип файла  только по  расширению, заражение EXE-файлов с расширением COM
выполняется неправильно.  Это приводит  к потере работоспособности зара-
женных файлов указанного типа: их запуск обычно ведет к зависанию систе-
мы. После обработки такой программы фагом работоспособность восстанавли-
вается.

   Для определения  зараженных файлов (с целью предотвращения их повтор-
ного заражения)  используются младшие  пять битов времени создания файла
(для зараженных файлов поле секунд имеет значение, соответствующее несу-
ществующему количеству секунд -- 62 с). Следует отметить, что как команда
DIR, так и распространенные оболочки типа Norton Commander не показывают
поле секунд, выдавая содержимое каталога на экран. Поэтому это изменение
достаточно хорошо скрыто от пользователя.

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

   Заражение выполняется  стандартным способом  -- путем дописывания тела
вируса в  конец файла  с простановкой  в начало команды перехода на тело
вируса. Как уже указывалось, при заражении вирус не проверяет тип файла,
т.е. не  является ли  потенциальная жертва на самом деле файлом типа EXE
(начинающимся с "MZ"), ошибочно или намеренно "замаскированным" под файл
типа COM.  Указанные файлы после заражения теряют работоспособность, ко-
торая может быть восстановлена путем выкусывания вируса.

   Следует отметить,  что защита  файлов атрибутами READ ONLY и HIDDEN в
MS DOS недостаточно эффективна, поскольку вирус легко изменяет эти атри-
буты. Сначала  вирус запоминает атрибуты, дату и время создания заражае-
мого файла.  Затем сбрасывает атрибут READ ONLY, если он был установлен,
открывает файл  на запись  и считывает  текущее время.  Если выданное по
прерыванию 21h  (функция 2С) содержимое регистра DH содержит в последних
трех битах нули (т.е. системные часы показывают 0, 8, 16, 24, 32, 40, 48
или 56 с),  то вирус  предпринимает попытку  уничтожения  "потенциальной
жертвы". Иначе выполняется попытка заражения. Другими словами, приблизи-
тельно в 12% пораженных вирусом программ уничтожены первые пять байтов.

   Уничтожение файла  выполняется путем  записи в первые пять байтов ко-
манды перехода  на подпрограмму  перезагрузки BIOS  (переход  по  адресу
F000:FFF0). В  дальнейшем при  попытке выполнить  "пораженную" программу
вместо ее  выполнения будет  выполняться перезагрузка  MS DOS. Если  при
этом программа  входит в AUTOEXEC.BAT, то при загрузке произойдет зацик-
ливание и  с винчестера  или данной системной дискеты загрузиться нельзя
без корректировки AUTOEXEC.BAT.

   При заражении,  которое выполняется,  только если хотя бы один из по-
следних трех битов времени создания файла равен единице, вирус переписы-
вает свой код в конец файла и заносит в первые три байта команду JMP для
передачи ему управления. После этого С-648 восстанавливает дату, время и
атрибуты уже  зараженного файла, и управление передается программе-виру-
соносителю. При  восстановлении даты  количество секунд  устанавливается
равным 62 (т.е. последним четырем битам присваивается значение 1111). По
этому значению вирус отличает зараженные файлы от незараженных, что обе-
спечивает однократность заражения. Впрочем, при архивировании зараженных
файлов поле секунд может теряться (количество секунд во времени создания
файла не  выдается ни  одной командой MS DOS), что приведет к повторному
заражению.

   Поскольку вирус C-648 не проверяет, находится ли заражаемый или унич-
тожаемый файл  на защищенной  дискете или нет, то в этом случае выдается
обычное сообщение операционной системы
  Write protect error writing device <лог.имя.устр.>
  Abort, Retry, Ignore, Fail?

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

   Исторические сведения. Данный вирус является первым вирусом европейс-
кой разработки, который получил распространение во всем мире. Помимо Ве-
ны, предполагаемым  местом разработки может являться Гамбург (Германия).
В качестве  распространителя  вируса  также  выступала  книга  Р.Бургера
[Burger87], содержавшая  исходный код  вируса.  В  результате  появились
штаммы, отличавшиеся  друг от друга только используемым ассемблером, что
не наблюдалось  ни для какого другого компьютерного вируса. Пик эпидемии
в Западной  Европе наблюдался в 1988 г. Фактически данный вирус был пер-
вым компьютерным  вирусом, вызвавшим эпидемию в Европе, включая СССР. Об
этом, в частности, свидетельствуют даты создания первых детекторов и фа-
гов для этого вируса (среди них попадались немецкие, польские, чешские и
австрийские программы).

   В СССР  вирус С-648  появился приблизительно в августе 1988 г., когда
он был обнаружен в лаборатории Института программных систем (Переславль-
Залесский). Возможно,  он попал туда во время проведения институтом (со-
вместно с  ЮНЕСКО) Международного детского компьютерного летнего лагеря.
Поскольку этот вирус к середине 1988 г. был уже довольно распространен в
Европе, он  несомненно завозился  в СССР неоднократно, c различного рода
новыми версиями программного обеспечения и компьютерными играми. В Киеве
этот вирус  появился в конце 1988 г., а наибольшее распространение полу-
чил примерно  в апреле  1989 г., после чего его эпидемия пошла на убыль,
что прежде всего связано с достаточной распространенностью средств защи-
ты от  этого вируса.  Одним из переносчиков этого вируса в Киеве являлся
адаптированный вариант  программы SideKick  (шестерка). К  сожалению, по
стране распространяется  откомментированный исходный текст данного виру-
са, который, в частности, был включен В.Бончевым в его "вирусную" диске-
ту.

   Первыми антивирусными программами, попавшими в Киев и ориентированны-
ми на борьбу с этим вирусом, были зарубежные программы, распространявши-
еся в виде случайного набора на дискете. Среди них наибольшей популярно-
стью на  начальном этапе пользовались детектор Diag и фаг Cure Д.Сопчека
(Польша), DR_NO, Fag_OM и др. Отечественные средства появились несколько
позднее, однако  к концу  1989 г. основным  средством борьбы стали такие
отечественные полифаги, как Aidstest, Doctor, Vdeath и др.

   Неформальные названия. Данный вирус имеет не менее десятка неформаль-
ных названий.  Среди них:  Vienna (Вена), DOS-62, Time Bomb (Часовая ми-
на), Flea  (Блоха), вирус  перезагрузки,  VHP-648,  Restart  (Рестарт  --
О.Г.Котик), Rebooter (Перезагрузчик), P-virus, Omega (Омега). Полидетек-
тор Scan  называет данный  вирус "Vienna  (DOS  62)  Virus --  Version  A
[Vienna]".

   Методы и средства защиты. Для данного вируса имеется огромное количе-
ство программ  типа детекторов  и фагов  разработки 1988-89 гг. При этом
большинство из них не указывают, для какого типа вируса они предназначе-
ны. Пользоваться  этими фагами  ни при  каких условиях не рекомендуется,
т.к. у  них отсутствует проверка на самозаражение, и они могут оказаться
уже зараженными.  Уничтоженные вирусом файлы, т.е. файлы, в которых вме-
сто первых  пяти байтов  записана команда безусловного перехода на пере-
загрузку MS DOS (EA F0 FF 00 F0), можно восстановить, только если первые
байты программы были предварительно записаны в справочном файле програм-
мой-ревизором (типа  CRCDOS). В  настоящее время все полидетекторы и все
полифаги обрабатывают  программы, зараженные данным вирусом. Автор реко-
мендует полифаг Aidstest. Защита винчестера от данного вируса облегчает-
ся при  использовании программы Advanced Disk Manager (ADM), которая по-
зволяет устанавливать  защиту записи  и для разделов винчестера. Вакцина
от данного  вируса может  быть создана  двумя способами.  Во-первых, по-
скольку при  поиске слова  PATH вирус фактически ищет подстроку "PATH=",
его можно  "навести на  ложный аэродром",  вставив в AUTOEXEC.BAT строку
вида


                          SET XPATH = Х:\DUMMY

до "настоящей" строки


                               SET PATH =
В приведенном  примере DUMMY -- несуществующий каталог, а первая (или не-
сколько первых)  букв в  имени ловушки  могут быть произвольными. В этом
случае вирус  "поймает" первую букву "P", входящую в слово XPATH и будет
пытаться искать файлы на несуществующем диске Х и в несуществующем ката-
логе DUMMY.  Аналогичную ловушку  можно ставить и на COMSPEC, и хотя для
данного вируса  она не  нужна, важно  понимать, что данную идею "обмана"
вирусов можно  развить в  нескольких направлениях.  Другими словами, она
может быть  обобщена до  некоторого универсального  приема использования
особенностей кодировки  соответствующих частей вируса. Кроме того, целе-
сообразно создать каталог BAT (имя может быть произвольным) и записать в
него пакеты  для вызова часто используемых программ в виде BATCH-файлов.
В этом  случае достаточно указать в PATH только этот каталог, что вполне
безопасно, поскольку  ни одного  файла типа  COM в нем нет. Этот способ,
наряду с повышением безопасности, ускоряет вызов программ, позволяет на-
строить среду  и передать  стандартные параметры.  Поэтому его стоит ис-
пользовать как можно шире.

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

   Следует отметить,  что вместо  "лечения" файлов зачастую проще и без-
опасней восстановить их с дистрибутивных копий.


           Фрагмент дампа дрозофилы, зараженной вирусом C-648

       +-------- команда передачи управления телу
     +----+      вируса
000: E90D009090909090 9090909090909090  ................

     +- ****** -------- J-сигнатура (звездочками поме
     |                  чены изменяемые вирусом байты)
010: 51BA0903FC8BF281 C60A00BF0001B903  Q...............
020: 00F3A48BF2B430CD 213C007503E9C701  ......0.!<.u....
030: 06B42FCD21899C00 008C84020007BA5F  ../.!.........._
040: 009003D6B41ACD21 06568E062C00BF00  .......!.V..,...
050: 005E5681C61A00AC B90080F2AEB90400  .^V.............
060: ACAE75EDE2FA5E07 89BC16008BFE81C7  ..u...^.........
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
1E0: 00BA1F009003D6CD 211EB41A8B940000  ........!.......
1F0: 8E9C0200CD211F59 33C033DB33D233F6  .....!.Y3.3.3.3.
200: BF00015733FFC2FF FF8000ED251B0121  ...W3.......%..!
210: 002000909090E90D 002A2E434F4D001C  . .......*.COM..
220: 002006504154483D 473634382E434F4D  . .PATH=G648.COM
230: 2020202020202020 2020202020202020
***  последующие строки идентичны предыдущей ***
260: 2020202020202020 033F3F3F3F3F3F3F          .???????
270: 3F434F4D030500EE 0200000000201B01  ?COM......... ..
280: 2100100000004736 34382E434F4D004D  !.....G648.COM.M
290: 000000EAF0FF00F0                   ........

         Фрагмент дампа дрозофилы, "уничтоженной" вирусом С-648

000: EAF0FF00F0909090 9090909090909090  ................
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .


                     4.1.2. Штамм С-623 (Vienna-X)

   Вирус С-623 отличается от C-648 наличием обработки ненормальных окон-
чаний, что обеспечивает подавление сообщений вида
  Write protect error writing device <лог.имя.устр.>
  Abort, Retry, Ignore, Fail?

при попытке записи на защищенную дискету. Кроме того, в уничтожаемые мо-
дули записывается переход по адресу C800:0000. Возможно, автор предпола-
гал, что  в результате  будет выполнена форматизация диска. Уничтоженные
модули можно искать по сигнатуре EA000000C8.

   Данный штамм содержит подпрограмму обработки ошибок ввода-вывода. По-
этому при  попытке заражения программы, расположенной на защищенной дис-
кете, не выдается соответствующего сообщения MS DOS.

   Исторические сведения. Передан автору Д.Н.Лозинским. Обнаружен в кон-
це 1989 г.

   Методы и средства защиты. См. прил.1.


             Фрагмент дампа дрозофилы, зараженной вирусом C-623

000: E9A0009090909090 9090909090909090  ................
010: 8000ED251B012100 2000909090E9A000  ...%..!. .......
020: 2A2E434F4D001C00 0E04504154483D47  *.COM.....PATH=G
030: 3632332E434F4D00 0000202020202020  623.COM...
040: 2020202020202020 2020202020202020
***  последующие строки идентичны предыдущей ***
070: 3F3F3F3F3F3F3F3F 434F4D030700EE02  ????????COM.....
080: 00000000201B0121 0010000000473632  .... ..!.....G62
090: 332E434F4D000000 0000EA000000C856  3.COM..........V
0A0: 050E2551BA1001FC 8BF283C60ABF0001  ..%Q............
0B0: B90300F3A48BF2B4 30CD213C007503E9  ........0.!<.u..
0C0: A80106B42FCD2189 1C8C4402B82435CD  ..../.!...D..$5.
0D0: 21899C8F008C8491 0007B824258BD681  !..........$%...
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
230: 8B54068B4C0480E1 E080C91FB80157CD  .T..L.........W.
240: 21B43ECD21B80143 8B4C08BA1F0003D6  !.>.!..C.L......
250: CD211EB41A8B148E 5C02CD21B824258B  .!......\..!.$%.
260: 948F008E9C9100CD 211F5933C033DB33  ........!.Y3.3.3
270: D233F6BF00015733 FFC2FFFFB000CF    .3....W3.......

                     4.1.3. Штамм C-627 (Vienna-Y)

   В штамме 627 исключен блок уничтожения программы.

   Исторические сведения. Передан автору Д.Н.Лозинским. Обнаружен в кон-
це 1989 г.

   Методы и средства защиты. См. прил.1.



                          4.2. Польская группа

   Польская группа включает несколько штаммов, стратегия заражения кото-
рых основана на поиске файлов с расширением COM в текущем каталоге и ис-
пользовании для  отметки зараженных  файлов не  значения 62 с в поле се-
кунд, а  13-й месяц. Она включает два почти идентичных вируса С-507 и С-
534, из  которых в  нашу страну попал только второй. Анализ кода создает
впечатление о  том, что  основные идеи заимствованы у венского вируса. В
связи с  используемым методом отметки зараженных файлов группа практиче-
ски полностью уничтожена.


             4.2.1. Вирус С-534 (Toothless -- Беззубый, W13)

   В коде  вируса C-534  прослеживаются явные аналогии с кодом вируса С-
648, однако  чувствуется более низкая квалификация автора. Возможно, ав-
тор пользовался  комментированным листингом вируса С-648 или книгой Бур-
гера. Против этого предположения говорит тот факт, что стратегия зараже-
ния существенно  упрощена, а признак зараженности файла изменен на более
заметный, хотя при создании штаммов чаще наблюдаются попытки "улуч-шить"
эти участки  кода. Так  или иначе, спецификации обоих вирусов достаточно
близки.

   Формально вирус С-534 -- файловый нерезидентный вирус, поражающий фай-
лы типа  СОМ. Функционирует  на версиях MS DOS, начиная с 2.0. Длина 534
(216h) байта.  Заражаются только COM-файлы длиной от 256 (100h) до 64000
(FA00h) байтов  в текущем и корневом каталогах. Заражение происходит при
запуске инфицированной  программы, при этом за один запуск заражается не
более одного файла. При выполнении зараженной программы управление пере-
дается на  начало вируса.  Вирус восстанавливает первые 3 байта основной
программы, ищет  незараженный файл с раcширением СОМ и заражает его. Это
ведет к  потере работоспособности  EXE-файлов, записанных  с расширением
COM. Работоспособность  таких файлов может быть восстановлена путем при-
менения соответствующего фага.

   Стратегия заражения -- поиск файла-жертвы в текущем и корневом катало-
гах. Поражает  СOMMAND.COM. При  заражении он  дописывается в конец про-
граммы и одновременно вставляет в первые три байта COM-файла команду пе-
рехода на тело вируса. При этом размер файла увеличивается на 534 байта,
дата создания  файла и  атрибуты файла изменяются (вирус снимает атрибут
READ ONLY  и из-за ошибки в тексте не восстанавливает его; кроме того, в
дате подставляется  13 (0Dh)  месяц). Заражение  выполняется однократно.
Минимальный размер заражаемых файлов -- 256 байтов (100h), максимальный --
чуть меньше  64К (FA00h). При попытке заражения у файла проверяется зна-
чение месяца  последней его  модификации и, если оно равно 0Dh (13-й ме-
сяц), то  файл не  заражается. Очевидно, что данный метод предотвращения
повторного заражения является вариантом метода, использованного в "базо-
вом" вирусе С-648 с той разницей, что вместо секунд используется месяц.

   Как и  С-648, вирус  C-534 не проверяет, находится заражаемый файл на
защищенной дискете  или нет,  и в этом случае выдается обычное сообщение
операционной системы:


  Write protect error writing device <лог.имя.устр.>
  Abort, Retry, Ignore, Fail?

   При заражении  EXE-файлов с расширением COM наблюдаются те же пробле-
мы, что и для вируса С-648.

   Исторические сведения.  Обнаружен в  Польше в  ноябре 1988 г. В Киеве
появился приблизительно в октябре 1989 г. Первым фагом для данного виру-
са, распространяемым бесплатно, вероятно был полифаг Д.Н.Лозинского.

   Неформальные названия.  Помимо приведенных  в заголовке,  встречаются
названия Micro88, Microsoft 88, Microsofttyright, основанные на содержа-
щейся в  вирусе текстовой  строке, и  название 13-й месяц, основанное на
изменении даты создания файлов при заражении.

   Методы и  средства защиты. Методы защиты аналогичны методам защиты от
вируса С-648. Рекомендуется использовать программы, указанные в прил.1.


           Фрагмент дампа дрозофилы, зараженной вирусом C-534

100: E98D019090909090  9090909090909090 ................
110: 9090909090909090  9090909090909090 ................
***  Последующие строки идентичны предыдущей  ***
280: 9090909090909090  90909090909090C3 ................

     +- ****** -------- J-сигнатура (звездочками поме
     |                  чены изменяемые вирусом байты)
290: 50BEF5038BD681C6  0000FCB90300BF00 P...............
2A0: 01F3A48BFAB430CD  213C007503E93F01 ......0.!<.u..?.
2B0: BA2C0003D78BDAB4  1ACD21BD00008BD7 .,........!.....
...  ..  ..  ..  ..    ..  ..  ..  ..   . . . . . . . .
3F0: BF000157C3EBFE90  E98D015C3F3F3F3F ...W.......\????
400: 3F3F3F3F2E434F4D  00545259302E434F ????.COM.TRY0.CO
410: 4D004D0000000020  00E4812400000000 M.M.... ...$....
420: 00073F3F3F3F3F3F  3F3F434F4D030900 ..????????COM...
430: 000046510F0920E4  8124009001000054 ..FQ....$.....T
440: 5259302E434F4D00  4D0000006F736F66 RY0.COM.M...osof
450: 7479726967687420  4D6963726F736F66 tyright Microsof
***  Последующие строки идентичны предыдущей  ***
4A0: 7420313938380000  0000000000000000 t 1988..........

                           4.2.2. Вирус С-507
            (13-й месяц-Б, Toothless-B -- Беззубый-Б, W13-B)

   Данный штамм  представляет собой более отлаженный вариант предыдущего
вируса. Практически  идентичен предыдущему.  Вирус детектируется полиде-
тектором Scan  и входит в список П.Хоффман, начиная с версии, датирован-
ной 10 августа 1990 г.
                        4.3. Группа IV (Amstrad)

   Данная группа в настоящее время состоит из трех представителей с дли-
нами 847, 740 и 345 байтов. На расстоянии 2-3 байта от начала в этих ви-
русах стоят  буквы "IV".  П.Хоффман описывает  ряд других, неизвестных в
нашей стране штаммов. В их числе штаммы с длиной 277 и 299 байтов, кото-
рые аналогичны  вирусу С-345,  однако текст  сообщения исключен и вместо
кода, обеспечивающего  выдачу сообщения,  вставлен код, создающий ошибку
четности (Parity  error) приблизительно в 50% случаев запуска программы.
Вирусы этой группы являются одними из наиболее простых файловых вирусов.
Они заражают  только COM-файлы  в текущем каталоге, причем при заражении
не предусмотрено ни сохранение даты, ни контроль длины. Заражение произ-
водится приписыванием программы к телу вируса. Таким образом, в заражен-
ной программе  вирус располагается  в начале,  что встречается  довольно
редко.

   Существенной разницы  в функционировании штаммов нет: в данном случае
большая длина  вируса не  означает усложнения  механизма его работы. Все
три штамма заражают только файлы с расширением "COM" в текущем каталоге,
причем правильность  расширения не проверяется. Как и в случае с вирусом
С-648, это  приводит к  повреждению EXE-файлов  с расширением COM: после
заражения файлы становятся неработоспособными и их запуск обычно ведет к
зависанию системы.  Данное повреждение может быть устранено "выкусывани-
ем" вируса из программы.


                     4.3.1. C-345 (Pixel -- Пиксель)

   Получив управление,  данный вирус переписывает собственное тело в об-
ласть памяти, отстоящую от области загрузки данной программы на 64К. Это
действие может  привести к  нарушению работы  системы в случае наложения
копии на  резидентные программы.  Затем вирус  выполняет поиск в текущем
подкаталоге файла  с расширением  COM. Если  такой файл обнаружен, то он
считывается в память, располагаясь непосредственно за копией вируса (та-
ким образом, вся область памяти практически представляет собой образ за-
раженной вирусом  программы). Если  второй и третий байты считанной про-
граммы принимают значения 49h и 56h ("IV"), то вирус считает, что данная
программа уже заражена. В противном случае в файл, из которого была счи-
тана программа, "сбрасывается" область оперативной памяти, начиная с те-
ла вируса.  За одно  выполнение зараженной программы вирус предпринимает
попытку заражения  всех файлов в текущем каталоге. Очевидно, что повтор-
ный запуск  зараженной программы  в том  же каталоге не вызовет дополни-
тельного заражения, поскольку все COM-файлы в текущем каталоге уже зара-
жены.

   При каждом  вызове зараженной  программы вирус  увеличивает  значение
специального счетчика,  а затем выполняет проверку его содержимого. Если
значение счетчика  равно 5, то вирус считывает значение таймера, и, если
оно нечетно, то на экран выводится сообщение:


  Program sick error:
  Call doctor or buy PIXEL for cure description

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

   Исторические сведения.  Исходный текст данного вируса был опубликован
в Греции в журнале "Пиксель" ("Pixel"). В СССР попал на вирусной дискете
В.Бончева. Первым  фагом для  данного вируса  был, по-видимому,  полифаг
Д.Н.Лозинского.

   Неформальные названия.  Распространенным неформальным названием этого
вируса является Pixel. Д.Н.Лозинский называет данный вирус IV-345.

   Методы и средства защиты. Вирус легко обнаружить по изменению длины и
даты создания COM-файлов. Рекомендуемые фаги приведены в прил.1.
            Фрагмент дампа дрозофилы, зараженной вирусом С-345

000: EB3B4956012A2E43 4F4D000000000000 .;IV.*.COM......
010: 0000000000000000 0000000000000000 ................
020: 0000000000000000 0000000000000000 ................
030: 0000000000000000 0000000000508CC8 .............P..
040: 0500108EC0FE0604 01BE000133FFB959 ............3..Y
050: 0190F3A4BA1101B4 1ACD21BA0501B906 ..........!.....
060: 00B44ECD21724BBA 2F01B8023DCD218B ..N.!rK./...=.!.
...  ..  ..  ..  ..   ..  ..  ..  ..   . . . . . . . .
0D0: D801B409CD21CD20 50726F6772616D20  .....!. Program
0E0: 7369636B20657272 6F723A43616C6C20  sick error:Call
0F0: 646F63746F72206F 7220627579205049  doctor or buy PI
100: 58454C20666F7220 6375726520646573  XEL for cure des
110: 6372697074696F6E 0A0D24BE3702B922  cription..$.7.."
120: 0033FFF3A45B2EC7 060B0100002E8C06  .3...[..........
130: 0D012EFF2E0B011E 07BE5902BF0001B9  ..........Y.....
140: FFFF2BCEF3A42EC7 06000100012E8C1E  ..+.............
150: 02018BC32EFF2E00 01B409BA0901CD21  ...............!
160: CD20333435205669 7275732033343520  . 345 Virus 345
170: 6279746573202124                   bytes !$



                         4.3.2. C-847 (Amstrad)

   Вирус практически  полностью аналогичен  предыдущему, за  исключением
того, что  проверка на  зараженность программы выполняется по третьему и
четвертому байтам и буфер для чтения/записи размещен в теле вируса.

   Исторические сведения.  В СССР  попал в  сентябре 1989 г. на вирусной
дискете В.Бончева.  Первые случаи  заражения отмечены  в Москве  в марте
1990 г. Вирус  можно отнести  к числу  самых старых, простейших вирусов.
Вирус Amstrad  был передан McAfee в ноябре 1989 г. Джиан Луз (Jean Luz),
однако был  известен в  Испании и  Португалии по  меньшей мере за год до
этого. Этот  штамм не  заражает COMMAND.COM и содержит "самозванную" ре-
кламу компьютеров фирмы Amstrad.

   Неформальные названия.  Д.Н.Лозинский называет  данный вирус  IV-847.
Полидетектор Scan называет данный вирус "Amstrad Virus [Amst]".

   Методы и средства защиты. См. предыдущий штамм.


            Фрагмент дампа дрозофилы, зараженной вирусом С-847

000: EB14904956012A2E 434F4D004F040000  ...IV.*.COM.O...
010: 0100000000008CC8 0500108EC0FE0605  ................
020: 01BE000133FFB94F 01F3A4BA5F02B41A  ....3..O...._...
030: CD21BA0601B90600 B44ECD217260BA7D  .!.......N.!r`.}
040: 02B8023DCD21A314 018BD8061FBA4F03  ...=.!........O.
050: B9FFFFB43FCD2105 4F032EA312013E81  ....?.!.O.....>.
060: 3E52034956742133 C98BD12E8B1E1401  >R.IVt!3........
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
0C0: CD21CD2050726F67 72616D207369636B  .!. Program sick
0D0: 206572726F723A43 616C6C20646F6374   error:Call doct
0E0: 6F72206F72206275 7920504958454C20  or or buy PIXEL
0F0: 666F722063757265 2064657363726970  for cure descrip
100: 74696F6E0A0D24BE 2402B92B0033FFF3  tion..$.$..+.3..
110: A433FF2EC7060E01 00002E8C0610012E  .3..............
120: FF2E0E011E07BE4F 04803E0501017504  .......O..>...u.
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
300: 508D46AE509A4387 751883C4049A8085  P.F.P.C.u.......
310: 7518FF76088D865E FF508D46AE50E8A8  u..v...^.P.F.P..
320: 0583C4068946FE3D FFFF74053D010075  .....F.=..t.=..u
330: 03E8A0D0837EFE01 7403E947FE837E08  .....~..t..G..~.
340: 0075288D46AE509A 9487751883C402B4  .u(.F.P...u.....
350: 09BA0901CD21CD20 3834372056697275  .....!. 847 Viru
360: 7320383437206279 746573202124      s 847 bytes !$


                      4.3.3. C-740 (Canser -- Рак)

   C-740 не  контролирует и своего наличия в модуле, в связи с чем зара-
жение происходит многократно.
   Исторические сведения.  В СССР  попал в  сентябре 1989 г. на вирусной
дискете В.Бончева.

   Неформальные названия. Д.Н.Лозинский называет данный вирус IV-740.

   Методы и средства защиты. См.  штамм С-345.


             Фрагмент дампа дрозофилы, зараженной вирусом С-740

000: EB14904956012A2E 434F4D00E4030000  ...IV.*.COM.....
010: 0000000000008CC8 0500108EC0FE0605  ................
020: 01BE000133FFB9E4 00F3A4BAF401B41A  ....3...........
030: CD21BA0601B90600 B44ECD217257BA12  .!.......N.!rW..
040: 02B8023DCD21A314 018BD8061FBAE402  ...=.!..........
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
220: 4B2D83C40489865C FF833E1A1E00741D  K-.....\..>...t.
230: 833E1C1E007516B8 2B4B509A94877518  .>...u..+KP...u.
240: 83C4020BC07406C7 061C1E0100FFB65C  .....t.........\
250: FF8D46AE509A6A86 751883C404FF7606  ..F.P.j.u.....v.
260: 8D865EFF509A6A86 751883C404FF7608  ..^.P.j.u.....v.
270: 8D46AE508D865EFF 50E8F60083C40689  .F.P..^.P.......
280: 8654FF3DFEFF7503 E9F9FEFF361C1EFF  .T.=..u.....6...
290: B65CFFE8794183C4 04898656FF3DFFFF  .\..yA.....V.=..
2A0: 7503E9DFFE0BC074 2C837E08007526FF  u......t,.~..u&.
2B0: 361A1E8D865EFF50 E8544183C4048986  6....^.P.TA.....
2C0: 58FF3DFFFF7503E9 BAFE3D01001BC0F7  X.=..u....=.....
2D0: D8898656FF8D46AE 509A0487751883C4  ...V..F.P...u...
2E0: 020BC075B409BA09 01CD21CD20373430  ...u......!. 740
2F0: 2056697275732037 3430206279746573   Virus 740 bytes
300: 202124                              !$
                           4.4. Вирус E-1961
                    (Yankee Doodle-2 -- Янки Дудль-2)

   Неформальное название  данного вируса  связано с играемой им мелодией
"Yankee Doodle  Dandy". В  настоящее время этот вирус можно считать "вы-
мершим", и информация о нем представляет лишь исторический интерес.

   Формально E-1961  является нерезидентным файловым вирусом, заражающим
EXE-файлы. Файлы заражаются однократно. При запуске зараженной программы
вирус ищет  жертву в текущем каталоге, а затем во всех подкаталогах (ис-
пользуется рекурсивный  обход дерева) и, если попытка заражения удалась,
то играет мелодию "Янки Дудль Денди".

   При заражении длина файла увеличивается на 1961 байт. Тело вируса до-
писывается в конец файла. В конце вируса имеется строка "motherfuckler",
служащая признаком зараженности.

   Исторические сведения. Данный вирус является одним из первых болгарс-
ких вирусов. Он написан в конце 1988 г. Мелодия, играемая вирусом, позд-
нее была  заимствована техно-крысой, написавшей серию TP. Исходный текст
вируса распространялся  на вирусной  дискете В.Бончева.  Вирус  является
первым болгарским вирусом, в котором использован стандартный метод зара-
жения EXE-файлов, хотя при его реализации допущен ряд ошибок и неточнос-
тей. Известен  автор вируса. В СССР отмечены лишь отдельные случаи зара-
жения.

    Методы и средства защиты. Вирус легко обнаруживается по играемой ме-
лодии. Рекомендуемые фаги приведены в прил.1.



            4.5. Студенческие нерезидентные файловые вирусы

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


                   4.5.1. Вирус C-1004 (Bebe -- Бебе)

   Неформальное название  данного вируса связано с выдаваемым вирусом на
экран сообщением.  Идея, лежащая в основе данного вируса, является моди-
фикацией, использованной  в одном  из самых старых вирусов -- Cookie (см.
ниже).

   Формально С-1024  представляет собой  простой файловый  нерезидентный
вирус, заражающий  файлы, имеющие расширение COM в текущем каталоге. СО-
ММАND.COM заражается как обычный СОМ-файл.

   COM-файлы заражаются  однократно. При заражении длина файла не прове-
ряется. Свое  тело вирус дописывает в конец файла с выравниванием начала
на границу  параграфа. В  зараженных файлах  изменены первые  14 байтов,
причем  измененные   байты  содержат  группу  (PUSH  AX;  Є  ;  JMP  FAR
Virus_Start;) команд,  а не  единственную команду  JMP, как  это  бывает
обычно. Поэтому  зараженная программа всегда начинается со строки "50 0E
8C C8  2E 01  06 0C  01 EA". Выше было отмечено, что первую команду JMP,
подставляемую большинством  файловых вирусов,  дописывающих свое  тело в
конец COM-файла,  можно рассматривать  как вырожденный сегмент. В данном
случае первые  14 байтов представляют собой настоящий сегмент тела виру-
са, и  фактически мы  имеем дело  с файловым  вирусом, состоящим из двух
сегментов.

   Длина вируса  1004 (3ECh)  байта совпадает  с минимальным приращением
заражаемых файлов. Файлы с атрибутом READ ONLY не заражаются. Вирус име-
ет несколько  необычную реализацию  фазы проявления,  создающую иллюзию,
что мы  имеем дело  с резидентным вирусом: при запуске первой зараженной
программы он копирует часть своего тела в область векторов прерываний по
адресу 0000:01CE и устанавливает на нее прерывание 1Ch (таймер). Тем са-
мым создается резидентная программа, "висящая" на таймере, которая через
некоторое время выдает на экран заставку


                ╔════════ VIRUS ! ══════╗
                ║  Skagi "bebe" >       ║
                ╚═══════════════════════╝

и переходит  в состояние ожидания ввода с клавиатуры. При разработке ви-
руса предполагалось, что, если с клавиатуры вводится слово "bebe", то на
экране появляется  сообщение "Fig  Tebe !".  Последнее дает определенное
представление об уровне культуры автора, даже если рассматривать это как
своего рода  юмор. Однако на PC AT программа зацикливается из-за ошибки.
В результате  после выдачи сообщения компьютер зависает и его приходится
перегружать, причем сделать это удается только клавишей RESET.
   Уровень программирования  в целом невысок. В частности, вирус не вос-
станавливает DTA,  что может привести к зависанию компьютера. Аналогично
затирание части  таблицы векторов прерываний может приводить к зависанию
или нарушению  функционирования программ. Помимо приведенных выше строк,
образующих заставку и ответ, тело вируса содержит строку "*.COM".

   Исторические сведения.  Типичный представитель отечественных "студен-
ческих" вирусов. Обнаружен летом 1990 г.

   Неформальные названия.  Полидетектор Scan (версии до 77 включительно)
данный вирус не детектирует.

   Методы и  средства защиты. Обнаружение тривиально по описанному текс-
товому сообщению. Детектирование можно выполнять по сигнатуре, приведен-
ной в прил.1. Рекомендуемые полифаги приведены там же.


            Фрагмент дампа дрозофилы, зараженной вирусом С-1004

000: 500E8CC82E01060C 01EA580011002400  P.........X...$.
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
060: 9000000000000000

начало тела вируса -> 582EA3CC01581E06  M.......X....X..
070: 5053515256579C8C C88ED88EC08D360E  PSQRVW........6.
080: 0006C43ECA01B90E 00F3A40706B42FCD  ...>........../.
090: 212E891E2400062E 8F06260007B41A8D  !...$.....&.....
0A0: 162800CD21B44E8D 161E00B93F00CD21  .(..!.N.....?..!
0B0: 7303E9D0008D1628 0083C21EB8023DCD  s......(......=.
0C0: 21A31C007303E9AF 00B43F8D160E00B9  !...s.....?.....
0D0: 0E008B1E1C00CD21 7303E993008D360E  .......!s.....6.
0E0: 008D3E0000B90A00 FCF3A67503E98000  ..>........u....
0F0: 8D1E28008B5F1A8A C381C30001B104D3  ..(.._..........
100: EB240F3C00740143 891E0C00C7060A00  .$.<.t.C........
110: 5800B8004233C933 D28B1E1C00CD21B4  X...B3.3......!.
120: 408D160000B90E00 8B1E1C00CD218D1E  @............!..
130: 28008B571A33C9B8 00428B1E1C00CD21  (..W.3...B.....!
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
1B0: 018BFE8D0EEC032B CEFCF3A433DB8EDB  .......+....3...
1C0: BB70008D06F002FA 8907C747020000FB  .p.........G....
1D0: 9D5F5E5A595B5807 1FEA0001DD21C9CD  ._^ZY[X......!..
1E0: CDCDCDCDCD205649 5255532120CDCDCD  ..... VIRUS! ...
1F0: CDCDCDBBBA20536B 6167692022626562  ..... Skagi "beb
200: 6522203E20202020 20BAC8CDCDCDCDCD  e" >     .......
210: CDCDCDCDCDCDCDCD CDCDCDCDCDCDCDBC  ................
220: BA20202020204669 6720546562652021  .     Fig Tebe !
230: 2020202020BA0000 0000000000000000       ...........
240: 0000000000000000 0000000000000000  ................
***  последующие строки идентичны предыдущей ***
2B0: 0000000000000000 0000301230121C42  ..........0.0..B
2C0: 4542450D50B8C800 E6428AC4E642E461  EBE.P....B...B.a
2D0: 0C03E661E80800E4 6124FCE66158C3B9  ...a....a$..aX..
2E0: 74272E8A052E3A05 7500E2F9C3E4608A  t'....:.u.....`.
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
3D0: 518D362602BF7406 F3A559BF1407F3A5  Q.6&..t...Y.....
3E0: 59BFB407F3A55F5E 5A595B58071F2EA3  Y....._^ZY[X....
3F0: EA0358EA00000000 302A0000          ..X.....0*..


                           4.5.2. Вирус C-257
              (Kemerovo-Reset -- Кемеровская перезагрузка)

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

   Формально С-257  -- это файловый нерезидентный вирус, заражающий файлы
с расширением COM в текущем оглавлении. Заражает командный процессор.

   Заражает COM-файлы текущего оглавления длиной до 64767 (FCFFh) байтов
при запуске инфицированной программы. Файлы заражаются однократно. Копи-
рует себя  в конец файла и изменяет его первые 4 байта ( XCHG AX,DX; JMP
Virus_Start). Длина файлов при заражении увеличивается на 257 байтов.

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

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

   Исторические  сведения.  Происхождение  неизвестно.  Обнаружен  летом
1990 г. в Кемерово Е.Н.Сусликовым. Автору передан Д.Н.Лозинским.

   Неформальные названия.  Помимо приведенного выше, неизвестны.

   Методы и  средства защиты.  Полифаги SOS, Aidstest. Полидетектор Scan
(версии до 77, включительно) данный вирус не детектирует. Детектирование
можно выполнять по сигнатурам, приведенным в прил.1.


             Фрагмент дампа дрозофилы, зараженной вирусом С-257

000: 92E81500D8A10800 8B1E0A00891E0800  ................
010: A30A00B8004CCD21 125BE800005A5289  .....L.!.[...ZR.
020: D681C6C10089D82D 040089C7B90400A4  .......-........
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . . 0C0:
B80242CD2172D15A 5283EA04B90001B4  ..B.!r.ZR.......
0D0: 40CD21CC139090E9 3B1092E81500B840  @.!.....;......@
0E0: 008E2A2E434F4D00 B43ECD21B42CCD21  ..*.COM..>.!.,.!
0F0: 80FA0A7DE2909090 90909090909090EA  ...}............
100: 0000FFFF00000000 0000000000000000  ................
110: 0000000000000000 00                .........


                    4.5.3. Вирус C-273 (MSTU - МВТУ)

   Неформальное название  связано с содержащейся в теле вируса текстовой
строкой. Помимо заражения программ, никаких действий вирус не выполняет.
Формально С-273  -- это  файловый нерезидентный вирус, заражающий файлы с
расширением COM в текущем оглавлении. Заражает командный процессор.

   Контроль длины  заражаемых файлов  не предусмотрен.  Файлы заражаются
однократно. Копирует  себя в  конец файла  и изменяет его первые 4 байта
( JMP Virus_Start,  EBh). В  качестве  признака  заражения  используется
четвертый байт  программы. Для зараженных вирусом программ он равен EBh.
Длина файлов при заражении увеличивается на 273 байта.

   Вирус  содержит   характерную  для   начинающих  программировать   на
ассемблере IBM  PC ошибку -- некорректно возвращает управление зараженной
программе. Это  связано с  использованием для  выхода команды  Ret  Near
вместо команды  Ret Far.  В результате в стеке после возврата управления
остается лишнее слово. Вирус не блокирует сообщения о защите от записи.

   Код вируса  достаточно примитивен  и содержит  ряд  других  ошибок  и
неточностей. При  просмотре дампа  зараженной программы  видна текстовая
строка "Эта  программа написанна в МГТУ студентом группы ИУ4" (сохранена
орфография автора -- Н.Н.Безруков).

   Исторические сведения.  О происхождении можно судить по приведенной в
тексте вируса  строке. Обнаружен  летом 1990 г.  Автору передан  Д.Н.Ло-
зинским. Имеются более поздние версии, принадлежащие той же техно-крысе.

   Неформальные названия. Помимо приведенного выше, неизвестны.

   Методы и  средства защиты.  Полифаги SOS, Aidstest. Полидетектор Scan
данный вирус  не детектирует. Детектирование можно выполнять по сигнату-
рам, приведенным в прил.1.




             Фрагмент дампа дрозофилы, зараженной вирусом С-273

000: E90000EB3E902A2E 636F6D00E92D0DBA  ....>.*.com..-..
010: 9DE2A020AF70AEA3 70A0ACACA020ADA0  Эта программа на
020: AFA8E1A0ADADA020 A2208C83929320E1  писанна в МГТУ с
030: E2E3A4A5ADE2AEAC 20A370E3AFAFEB20  тудентом гpуппы
040: 889334                             ИУ4

           +-------  начало тела вируса
           V
           BB01018B07 0503008BE8B44E8D     ...........N.
050: 16030103D5CD2172 02EB03E99700BA9E  ......!r........
060: 00B002B43DCD218B F0B43F8BDEB90400  ....=.!...?.....
070: 8D16090103D5CD21 8D1E090103DD8A47  .......!.......G
080: 033CEB745BB442B0 00B90000BA00008B  .<.t[.B.........
...  ..  ..  ..  ..   ..  ..  ..  ..    . . . . . . . .
0C0: 408D0E0D028D1600 012BCA8BD581C200  @........+......
0D0: 01CD21B440B90400 8D16090103D5CD21  ..!.@..........!
0E0: 8BDEB43ECD218D16 030103D5B44FCD21  ...>.!.......O.!
0F0: 7203E969FF8BC58D 3E0D0203F8BE0001  r..i....>.......
100: 8B0589048B450289 4402B800011E50C3  .....E..D.....P.
110: E92D0DBA00000000 0000000000000000  .-..............
