VX Heavens

Library Collection Sources Engines Constructors Simulators Utilities Links Forum
Minimize
Bookmark

Занимательная вирусология

Константин Климентьев

[Вернуться к списку] [Комментарии (0)]

Милостивые государи!

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

Занимательная вирусология. Часть 1

Милостивые государи!

И так, Вашему вниманию предлагается первый выпуск "Занимательной Вирусологии". Если понравится, загляните на Пишичитайку и напишите, что Вы об этом думаете. Если - наоборот, милости прошу туда же - излейте душу. :-) В любом случае, прошу не относиться к "Занимательной Вирусологии" слишком серьезно...

  1. Что такое компьютерный вирус?
  2. Рыбные места
  3. Вирусный хит-парад
  4. "Бессмертный" вирус?
  5. Хокку
  6. Медицинский случай
  7. Макро-вирусы
  8. Самые-самые-самые...
  9. BIOS Virus Protection
  10. Dura lex sed lex
  11. Как изучать вирусы
  12. 10 вопросов ПРО ЭТО или Веселые Факи
  13. Читали?
  14. Медицинский случай-2

1. Что такое компьютерный вирус?

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

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

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

2. Рыбные места

Наверняка вы заинтересуетесь, что еще по вирусологической и просто вирусной тематике можно найти в Интернете. Вот несколько интересных линков.

3. Вирусный хит-парад

Информация о том, какие конкретно вирусы распространены больше, а какие - меньше, и какую заразу подцепить вероятней всего, важна не только для вирусологов, но и, в первую очередь, для обычных пользователей. Действительно, по разным оценкам среди более чем 16000 известных вирусов:

Как узнать - какие именно?

Для этой цели служат списки вирусов, пойманных "в дикой природе", так называемые WildList'ы. Широко известен WildList, поддерживаемый Joe Wells. Информацию в него поставляют ведущие вирусологи мира. C 1998 года при Лаборатории Касперского существует WildList Russia , аккумулирующий информацию о вирусах, распространенных на территории ex-СССР. Среди "лауреатов" в нем (на начало 1999 года )- следующие вирусы:

  1. Burglar.1150 - весьма незатейливый вирус, распространение получил лишь "благодаря" тому, что им были заражены многие пиратские CD-диски, выпускавшиеся в 1996 г.
  2. Taipan.438 - ситуация полностью аналогична ситуации с вирусом Burglar.
  3. WM.Cap - заражает DOC-файлы Microsoft Word, написан в Венесуэле. На конец весны 1998 г. чрезвычайно широко распространен в странах ex-СССР, прежде всего ввиду того, что некоторые версии нашего "антивируса номер 1" (DrWeb'а Игоря Данилова) умели распознавать и лечить этот вирус не в 100% случаев. Результаты, как говорится, "на лице". :-(
  4. WM.Concept - первый в истории макро-вирус, заражающий DOC-файлы Microsoft Word. Пока авторы антивирусных программ не сориентировались, успел стремительно распространиться по миру в 1995 году.
  5. OneHalf.3554 - весьма сложный и хитроумный вирус. Авторы антивирусных программ далеко не сразу научились его обнаруживать и лечить. В "переходный период" (1994-1995 гг.) OneHalf успел разбежаться по всему миру и достаточно часто встречается до сих пор.
  6. Kaczor.4444 - вирус, по сложности сравнимый с OneHalf-3554. Но место на "пьедестале почета" занимает лишь по причине, полностью аналогичной причине распространенности вируса WM.Cap.
  7. Excel.Laroux - первый макро-вирус, заражающий электронные таблицы Excel. Достаточно "популярен" лишь благодаря своей "свежести".
  8. SVK - вирус, паразитирующий на загрузочных секторах дискет и винчестеров. Написан в начале 90-х годов, представляет собой cущественно переработанный вариант классического вируса Stoned. Загрузочные вирусы малочувствительны к операционным системам, поэтому по прежнему остаются в "дикой природе". Следует ожидать небольшой, но устойчивой распространенности прочих Stoned-образных вирусов, например Michelangelo (March-6).
  9. Win95.CIH.1019 - прогремевший на весь мир вирус, способный 26 апреля (в день памяти Чернобыльской катастрофы) портить содержимое FLASH-памяти компьютера; на Западе про него почти уже забыли, а у нас каздый четвертый пиратский CD, выпущенный осенью 1998 г., поражен этой заразой.
  10. Bye - вот Вам пожалуйста, обычный загрузочный вирус.
  11. Major.1644 - ничего необычного, просто удивительно - почему этот вирус получил распространение.
  12. CD_Joke.848 - тоже на "Нобелевку" не тянет, зато умеет выдвигать "кофейную подставку" (носитель CD) :-)
  13. Yanush.934 - еще один вполне обычный вирус; авторство незаслуженно приписывается вирусописателю по прозвищу Janush Milovsky.
  14. Happy.99 - не совсем вирус, а троянская программа, распространяющаяся по почтовым сетям Интернета.
  15. WM.Demon - обычный макровирус; широкое распространение получил, вероятно, в результате того, что его очень умело запустили в "дикую природу".

Весной 1999 года пока не отмечена, но изо всех сил ожидается эпидемия вируса Melissa. Будьте бдительны!

4. "Бессмертный" вирус?

Знаете ли Вы, что существуют вирусы, которых невозможно "убить", даже форматируя винчестер? Дело в том, что 0-я дорожка винчестера содержит так называемый "внесистемный загрузчик". Еще его называют MBR - Master Boot Record (Главная Загрузочная Запись). Так вот , 0-я дорожка операцией обычного форматирования не затрагивается! А некоторые загрузочные вирусы облюбовали для своего места жительства именно MBR. Этот факт служит питательной средой для слухов о "бессмертных" вирусах.

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

	FDISK /MBR 

записывает на место MBR стандартный загрузочный сектор, тем самым уничтожая вирус. Этого в большинстве случаев достаточно. Но не пытайтесь таким образом лечить вирус OneHalf, ибо он шифрует данные на винчестере, и удалив код вируса без расшифровки данных, Вы безвозвратно погубите их!

5. Хокку

Хокку (хайку)
традиционный вид японской поэзии. Стих имеет жесткую структуру - состоит из 3-х строк. 1-я и 3-я строки должны содержать в себе 5 слогов, 2-я - 7 слогов.
	Будь осторожен!
	Марганцовка - фигня, ведь
	Вирус - не триппер!!!

А Вы сможете написать хокку на вирусную тему? ;-)

6. Медицинский случай

С точки зрения популярности антивирус N 1 у нас сейчас - DrWeb Игоря Данилова. Недавно вышла версия 4.0 этого антивируса. Эта программа не только умеет находить и лечить более 7000 вирусов, но и обнаруживают новых, пока еще неизвестных "козявок". Наверняка многие видели на экранах своих персоналок сообщения типа возможно заражен COM.Virus. Некоторые пользователи, узрев это, впадают в панику и даже форматируют винчестеры. :-) В то время, как вируса нет и в помине!

В чем же дело? Антивирус DrWeb сканирует команды, располагающиеся внутри программы, и обращает особое внимание на "опасные" (с его точки зрения) комбинации. А что если написать программу, которая не является вирусом, но битком набита такими "опасностями"? Сказано-сделано:

Start:
        ret
        mov ah, 4Eh
        mov dx, offset EXE
        mov dx, offset COM
        int 21h
        mov ah, 3Dh
        int 21h
        inc ah
        int 21h
        inc ah
        inc ah
        int 21h
        mov ax, 2521h
        int 21h
EXE     db '*.EXE',0
COM     db '*.COM',0
End     Start

Абсолютный бред, не так ли? Программа даже начинается с команды, которая сразу прекращает ее исполнение! Тем не менее, запустив DrWeb с ключиком /HA (или /HA1 для более ранних версий), получим:

COM.EXE.TSR.Virus

:-)

Увы, для полного счастья в этой "коллекции ужасов" не хватает флагов CRYPT, BOOT и MACRO. А вот Валентину Колесникову удалось расколоть DrWeb аж на 5 флагов! Я с удовольствием привожу здесь его вариант:

Start:
       int 20h
       mov ax,2521h
       int 21h
       mov ax,3231h
       xor ax,3030h
       mov cl,al
       int 80h
       xor ax,3030h
       xor ax,3130h
       int 81h
       mov ah,3Dh
       int 82h
       mov ah,3Fh
       int 83h
       cmp ax,'ZM'
       mov ax,4232h
       xor al,30h
       int 84h
       mov al,35h
       xor al,30h
       mov cl,al
       mov ah,40h
       int 85h
       mov al,38h
       xor al,20h
       mov cl,al
       mov ah,40h
       int 86h
End Start

Не верите? Возьмите и проверьте!

Вам ничего не напоминает подобное поведение DrWeb'а? Правильно: в медицине это называется мания преследования :-)

7. Макро-вирусы

В последние 3 года появилась новая порода вирусов - макро-вирусы. Они заражают файлы документов Microsoft Word и электронных таблиц Microsoft Excel. Дело в том, что эти файлы кроме собственно текста и собственно данных могут содержать программы преобразования и обработки текста и данных. Эти программы состоят из так называемых макросов и пишутся на языках WordBasic или VBA.

Самым первым макро-вирусом, заражающим DOC-файлы, был вирус Concept. Он до сих пор встречается достаточно часто. Другой, по имени Cap, вызвал настоящую пандемию в странах бывшего СССР.

Формат DOC-файла весьма сложен, и до сих пор далеко не все антивирусы умеют обнаруживать и корректно лечить макровирусы. Но ведь существует способ вылечить зараженный DOC-файл без антивируса, с использованием только программы Microsoft Word!

  1. Прежде всего, удалите файл NORMAL.DOT. Когда потребуется, Microsoft Word автоматически создаст новый, заведомо не зараженный никакими вирусами.
  2. Ни в коем случае не загружайте зараженный файл командой меню Открыть. Вместо этого выберите пункт меню Шаблоны, потом пункт Организатор.
  3. На открывшейся панели нажмите кнопку Закрыть файл, вслед за этим загрузите в левое окошко зараженный файл и при помощи кнопки Удалить уничтожьте вирусные макросы. Как правило, они имеют "странные" имена типа AAZZO или "опасные" имена типа FileOpenAs. Документ здоров!

(Рецепт подсказан руководителем СПб центра а/в защиты Михаилом Цалом)

8. Самые-самые-самые...

Как и везде, в вирусологии существуют свои рекорды. Поговорим о самых коротких вирусах. Прежде всего надо отметить, что существут группа очень коротких вирусов, длиной 20 -30 -40 байт, но... эти вирусы, так называемые оверврайтеры, необратимо портят заражаемые программы. :-( Не будем обращать внимания на этих уродцев.

Написать короткий вирус очень сложно. "Водораздел" лежит где-то на границе 150-160 байтов. 160-байтный вирус пишется абсолютно без напряжения. Чтобы ужать этот размер до 150 байтов, надо очень и очень крепко чесать репу. :-) Далее буквально каждый сэкономленый байт дается с огромнейшим трудом. Не случайно короткий вирус является мерилом профессионализма его автора.

(В свое время я тоже пытался проверить свои силы и возможности. Мой первый "рекорд" составил 152 байта. Сейчас я умею писать гораздо более короткие вирусы, но это уже после того, как я ознакомился с устройством некоторых чужих рекордсменов. Соревновательный пыл угас.)

Чтобы проследить за тем, как менялись достижения рекордсменов от года к году, обратимся к вирусному каталогу Д.Н.Лозинского:

Mini-145
Заражает только COM, резидентный. Сделан довольно изобретательно, но рекорд длины, к которому явно стремится автор, не побит.
AT-144
Заражает только COM, резидентный. Содержит пару команд, которых нет в процессоре 8088, в связи с чем не должен работать на PC-XT. Написан явно способным программистом в расчете на побитие рекорда длины вируса. Должен, однако, его разочаровать - есть болгарский вирус имеющий длину 133, причем без PUSHA. Причем его автор отличается и большей порядочностью - этот вирус существует только в коллекциях вирусологов.
Tiny-198, -167, -160, -159, -158, -156, -154, -143, -138, -134, -133
Болгарского производства. Сделаны весьма изящно. Все используют только команды процессора 8088.
AT-132
Просто великолепно!
Tiny-132
Работает на всех процессорах.
Tiny-122, -118, -114
Произведены, скорее всего, в Москве. На этот раз использован ряд команд, отсутствующих в 8088. На машине, имеющей меньше 640 Кб памяти, портят все загружаемые программы. Надеюсь, что автор не станет пускать их в свободное распространение.
Tiny-127, -119
Заражают только COM, резидентные. Версия 119 использует пару команд, отсутствующих в процессоре 8088.
Tiny-108
С некоторой вероятностью портит файлы.
Tiny-100
Прислан из Санкт Петербурга.
Micro-92
Заражает только COM, резидентный. Написан удивительно изящно. Особенно приятно, что прислал мне его из Санкт-Петербурга сам автор - Соловьев Михаил Анатольевич, - причем гарантировал, что распространяться он не будет. В Aidstest он включен лишь в качестве украшения коллекции.
Micro-66
Заражает только COM, резидентный. Это, конечно, невозможно, но Игорь Данилов сумел его сделать! Есть еще и 86, 80, 76, но на свободе им не гулять, поэтому в Aidstest вставлен только текущий рекорд. Мне кажется, что его побить невозможно, но...
Micro-60
Заражает только COM, резидентный. Автор Дмитрий Кубов.
Micro-59
Заражает только COM, резидентный. Рекорд, но я уже не решаюсь утверждать, что его не побьют.

На настоящий момент времени существуют несколько вирусов длиной 59 байтов. Вот цитата из каталога Игоря Данилова:

Viking.59
В настоящее время данный вирус является мировым рекордсменом среди самых маленьких резидентных файловых вирусов, сохраняющих работоспособность инфицированных программ. Является усовершенствованной модификацией вирусов Dinky, но с использованием пары неплохих приемов.

Сам же Игорь Данилов является автором сверхкоротких вирусов серии Dinky. Существуют Dinky.59, Dinky.56 и... по уверениям самого Данилова - Dinky.52!

9. BIOS Virus Protection

Каждая PC-совместимая машина содержит в качестве одного из своих компонентов BIOS - набор стандартных процедур ввода-вывода, записанных в ПЗУ и используемых прикладным и системным программным обеспечением. Практически все производители современных BIOS-ов (фирмы American Megatrends, Award, Phoenix, Quadtel) предусматривают в составе своих продуктов возможность защиты винчестера от записи на него загрузочных вирусов. Эта опция включается и выключается в программе SETUP. Если она включена, то при попытке какой либо программы записать что либо в сектор 0/0/1 винчестера раздается звуковой сигнал и выдается предупреждающее сообщение. Что-то вроде:

"Внимание! Производится попытка записи в загрузочный 
сектор винчестера. Это очень похоже на действие вируса!
Разрешить или запретить запись?"

Казалось бы, непроходимая броня. Но так ли это на самом деле?

Во-первых, вирус, желающий записать свое тело на винчестер, совершенно не обязательно должен пользоваться стандартными процедурами чтения/записи, предоставляемыми BIOS-ом. Он может обратиться напрямую к контроллеру дискового устройства через порты ввода-вывода, используя только команды in и out, и не используя дисковый сервис, доступный через команду int 13h. Здесь можно найти описание и примеры подобного обращения к IDE-винчестеру.

Во-вторых, флажок "режим проверки вкл/выкл" постоянно хранится в энергонезависимой CMOS-памяти. Известно его местоположение, по крайнней мере для BIOS-ов AMI и Award. Владея этой информацией, вирус может сбросить флажок, записаться на винчестер, а затем вернуть флажок на место. Описание этого способа доступа, опубликованное первоначально в электронном журнале Infected Voice, можно найти здесь.

Некоторые вирусы умеют использовать вышеприведенные приемы. Например, вирус Mammoth.6000 использует прямое обращение к контроллеру, а вирусы семейства Tchechen умеют сбрасывать в CMOS флажок защиты винчестера от записи.

10. Dura lex sed lex

Полезно иметь в виду:

                УГОЛОВНЫЙ КОДЕКС РОССИЙСКОЙ ФЕДЕРАЦИИ

            Принят Государственной Думой  24 мая 1996 года
                Введен в действие с 1 января 1997 года

ГЛАВА 28. ПРЕСТУПЛЕНИЯ В СФЕРЕ КОМПЬЮТЕРНОЙ  ИНФОРМАЦИИ

[...]
 
Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ

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

2. Те же деяния, повлекшие по неосторожности тяжкие  последствия,
- наказываются лишением свободы на срок от трех до семи лет.

11. Как изучать вирусы

Если Ваш компьютер заразил неизвестный вирус, Вы можете избавиться от него самостоятельно. Достаточно подробное и полезное описание этого процесса можно найти в большой статье "Как Пымать Выря За Хвост", которую можно найти на http://virus.komi.ru - антивирусном сайте Александра Гостева. А вот написал эту статью... гм... хм... вообще-то - Ваш покорный слуга. ;-)

Первым шагом является исследование алгоритма работы вируса. Для этой цели можно рекомендовать следующие инструментальные средства.

  1. Дизассемблеры и декомпиляторы, позволяющие получить исходный текст программы:
    • Дизассемблирующий вьюер-патчер Hacker View (Hiew);
    • Дизассемблеры Sourcer и DisDoc;
    • Эмулирующий интерактивный дизассемблер IDA;
    • Декомпиляторы RESCUE5 и DEFOX с языков Clipper и FoxBase;
    • Декомпилятор Word-макросов LMF.
  2. Отладчики, позволяющие изучать работу программ в режиме трассировки:
    • Стандартный отладчик Debug, входящий в состав штатных утилит MsDos;
    • Очень удобный, но недостаточно функциональный отладчик Turbo Debugger, поставляемый вместе со всеми продуктами фирмы Borland;
    • Очень мощные и сложные братья-отладчики SoftICE и WinICE;
  3. Прочие полезные утилиты, обеспечивающие низкоуровневый доступ к вычислительным ресурсам компьютера:
    • Входящая в состав Нортоновских Утилит программа DiskEdit;
    • Регистратор файловых операций Protokol;
    • Перехватчик программных и аппаратных прерываний IntVIEW и пр.

Ищите этот софт на http://virus.komi.ru!

12. 10 вопросов ПРО ЭТО или Веселые Факи

Вопрос: Как избавиться от сообщения COM.TSR.VIRUS, которое выдает антивирус DrWeb?

Ответ : F8. Причем не на подозрительную программу, а на сам DrWeb.

Вопрос: У меня в загрузочном секторе вирус. Я форматировал винчестер 2 раза, но вирус не исчез.

Ответ : Попробуй в 3-й раз, может быть и получится.

Вопрос: Где взять свежий DrSolomon?

Ответ : Вах! Дэвушка, слющай, зачэм тэбэ какой-то доктор, причем еврей? Нэужели, грузин савсэм хуже?

Вопрос: Что делает вирус XXXX?

Ответ : Как и любой другой вирус - размножается. А тебе завидно?

Вопрос: Хочу вирус, как поиметь?

Ответ : Обратитесь во Всемирную лигу сексуальных реформ. (с) Остап Бендер.

Вопрос: Что круче - AVP или DrWeb?

Ответ : Вареные яйца.

Вопрос: Хочу научиться писать вирусы, почему меня все отговаривают?

Ответ : Потому что водка, карты и бабы гораздо полезней для здоровья.

Вопрос: Где учат на вирмеров?

Ответ : Вот тебе далеко не полный перечень учебных заведений: HLLP.BelGUT, MGUL.950, MIREA.1766, MISIS, MIPHT.460, MIPT.602, VolGU, MIFI-1489, KhAI-1835, MPTI-1536...

Вопрос: Пришлите мне, пожалуйста, какой-нибудь гадкий вирус!

Ответ : А-а-апчхи! Устроит?

Вопрос: Чем отличается DrSolomon от DrWeb?

Ответ : Спросите DrMad'а. Если захочет - ответит...

13. Читали?

Попался мне на глаза любопытный текст. Вроде, и с литературной точки зрения слабоват, и технических безграмотностей достаточно.... Но читал часа 4 подряд, не мог оторваться! И Вам рекомендую. Полностью повесть можно найти здесь. А вот Вам пока маленький кусочек:

ЛАБИРИНТ ОТРАЖЕНИЙ

Сергей ЛУКЬЯНЕНКО

Уже не пользуясь голосовым управлением, я отключил "Виндоус-Хоум", выпал в трехмерную нортоновскую таблицу, вошел на диск "D", где хранилась вся виртуальная добыча и небольшая коллекция вирусов. Вот оно, "яблочко" - полуторамегабайтный файл. С виду - самый обычный документ для текстового редактора "Адвансед-Ворд". Впрочем, к нему пристегнуты еще два маленьких файла... сторожевые программки? Я запустил сканирующую программу, разработанную именно для таких вот сюрпризов.

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

Знаем мы это дело. И давно от него застрахованы - программы-идентификаторы просто не видят моего компьютера. На диске "D" я храню именно такие, опасные вещи.

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

Убить сторожевые программы без уничтожения текста оказалось невозможно. Пришлось их просто оглушить, привести в нерабочее состояние. Потом я занялся внутренним сюрпризом. Разрезал файл на два десятка кусочков, вычленил программу-сторож. Она оказалась абсолютно незнакомым полиморфным вирусом, который - а это уже было неприятно! - успел-таки зацепиться за мой компьютер. Через два часа непрерывной работы, отвлекшись лишь на то, чтобы выпить таблетку аспирина и сходить в туалет, я убедился, что раскрыть вирус не смогу.

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

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

- Да?

- Маньяк, это я.

Голос хакера чуть смягчился.

- Привет, Леня. Что у тебя?

- Новый вирус в твою коллекцию.

- Кидай! - молниеносно кладя трубку, сказал Маньяк.

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

Но Маньяк позвонил через три минуты.

- Был в гостях у "Аль-Кабара"? - медовым голосом спросил он.

- Да, - врать не имело смысла. - Ты так быстро справился?

- Я и не справлялся. Это мой вирус, приятель!

Я не нашел ничего лучшего, чем сказать:

- Извини...

Маньяк, а в миру просто Саша, был очень серьезен:

- Ты что, спер у них программу?

- Не совсем спер. Но в общем - да, это было встроено в файл...

- Ты связывался с кем-либо по модему? После того, как получил этот файл?

- Нет.

- Тогда тебе повезло, - сообщил Маньяк. - Понимаешь, это не простой вирус, это - открытка.

Я не понял, и Маньяк пояснил:

- Открытка с обратным адресом. Если вирус обнаруживает, что на компьютере стоит коммуникационное оборудование, он приклеивает к каждому твоему письму еще одно - крошечное, невидимое... открыточку. Без всякого текста, зато с твоим обратным адресом. Письма уходят вместе, а потом, уже с чужого компьютера, открытка отправляется в службу безопасности "Аль-Кабара".

У меня все внутри похолодело.

- Я прибил вирус на машине...

- Ты прибил не сам вирус, а ложные отражения, которые он создал. Специально, для усыпления бдительности. Массовые программы открытку пока не обнаруживают - слишком редкая штука.

- И что мне делать?

- Пивом меня поить, - усмехнулся Маньяк. - Сейчас примешь от меня письмо, там лекарство. Специальный антивирус. Подсказок в нем нет, просто запускаешь бат-файл, и он проверяет машину. Учти, будет работать долго, это не коммерческий продукт, а так... личная страховка от собственного вируса.

Понравилось?

14. Медицинский случай - 2

В 4 версии программы DrWeb появился новый механизм. Антивирус теперь не только "умеет" обнаруживать подозрительные на вирус файлы, но и иногда берет на себя смелость со 100-процентной уверенностью определять наличие нового вируса в файле и даже "лечить" его. Ой, нап-рас-нень-ко!..

Вот Вам до умопомрачения простенькая и абсолютно безвредная программка:

Start:
        call Next
Next:
        pop bx
        sub bx, 103h
        lea di, Start[bx]
        mov cx, 3
        rep movsb
        ret
        End Start

Запустим DrWeb и попросим: "ну, если ты считаешь, что это ВИРУС, так и ЛЕЧИ его!" Лучше бы мы этого не делали:

vv.com инфицирован NINNYISH.GENERIC - исцелен!

В результате программа безнадежно испорчена. Если Вы думаете, что это пустячки, то глубоко ошибаетесь. Например, давно устаревшая, но до сих пор иногда использующаяся для защиты от несанкционированного копирования система НОТА (by Стас Ляшенко) приписывает к защищаемым программам очень похожий фрагмент кода. Выводы делайте сами. :-(

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

Занимательная вирусология. Часть 2

Милостивые государи!

Вашему вниманию предлагается второй выпуск "Занимательной Вирусологии".

  1. Первый в истории!
  2. По следам призрака
  3. Кто есть who?
  4. Милые бранятся, только тешатся...
  5. В недрах макровируса
  6. "Я лиру посвятил народу своему..." (А.С.Пушкин)
  7. Подлинная фамилия Штирлица
  8. Легенда о Моррисе
  9. "Используй то, что под рукою и не ищи себе другое..."
  10. Потомки великого Рафаэля
  11. Цитаты
  12. Самые, самые, самые... -2
  13. Красивое женское имя!
  14. Welcome to Tretyakoff Gallery!
  15. Двое в комнате - я и Вирус...

1. Первый в истории!

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

И вот в июне 1998 года практически все крупные вирусологи мира сообщили о появлении нового вируса Win32.CIH, который "живет" в Windows 95/98 и по 26-м числам каждого месяца необратимо портит содержимое FLASH-памяти современных материнских плат (некоторых, предназначенных для i80486 и большинства, предназначенных для Pentium, Pentium II). Чтобы вылечить покалеченный компьютер, даже специалисту придется немало повозиться.

Вирус был написан в Тайване и в течение мая-июня 1998 г. разослан в ряд электронных конференций Интернет. 27 июня сообщения о повреждениях, нанесенных этим вирусом, поступили из Юго-Восточной Азии, из США и ряда других стран. У нас этот вирус также обнаружен - в середине лета 1998 г. в Москве и в Новосибирске, а в начале осени того же года вышли и разбежались по стране пиратские CD с популярными компьютерными играми, зараженные этим вирусом!

Пользуйтесь антивирусами версий выпуска не раньше середины лета 1998 года!

2. По следам призрака

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

Вот первые 10 ассемблерных команд трех различных копий одного из полиморфных вирусов. Ну и как на Ваш взгляд - много похожего?

sub  bx,bx
add  bx,0116
mov cx,00EA
nop
mov  al,2E
xor  [bx],al
add  bx,01
loop 0000000A
cld
cld
mov  bx,0116
mov  cx,00E
nop
xor  [bx],37
add  bx,01
loop 00000007
std
std
std
std
xor  bx,bx
add  bx,0116
sub  cx,cx
add  cx,00EA
xor  b,[bx],03
add  bx,01
loop 0000000C
cli
nop
stc

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

Одним из первых полиморфных вирусов был вирус Phoenix, который шифровал свое тело по переменному ключу и генерировал различные варианты расшифровщиков. В 1994-95 годах мир поразила эпидемия вируса Onehalf, который не только шифровал свое тело по переменному ключу, но еще и раскидывал фрагменты многовариантного расшифровщика по всей зараженной программе в виде нескольких случайно расположенных пятен - накося, выкуси! А вот автор вируса Ply решил не заниматься шифрованием, а вместо этого заставил свое "детище" случайным образом постоянно "перемешивать" свой код. Появились и были опубликованы программные технологии, которые автоматизировали процесс создания полиморфных вирусов, что позволяло любым авторам примитивнейших вирусов делать из них труднообнаруживаемых "монстров". Одной из известнейших и сложнейших для обнаружения и излечения является технология SMEG; до сих пор одним из параметров при тестировании качества антивирусов является их способность диагностировать SMEG-вирусы: 98% или 99%?! Поддержали гонку полиморфиков и отечественные вирусописатели: вирусы серий RDA.Fighter, Zhenghi и NutCracker содержат гораздо более сложные по отношению даже к SMEG алгоритмы!

Слава Богу, авторы антивирусных программ нашли противоядие против полиморфных вирусов. Но об этом мы поговорим в другой статье "Занимательной Вирусологии".

3. Кто есть who

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

4. Милые бранятся, только тешатся...

Об этом уже так много писалось, что лишнее напоминание становится просто дурным тоном. Поэтому я просто приведу практически без комментариев ряд цитат, расположив их в хронологическом порядке.

              Doctor WEB уличен в краже технологий AVP!

        "Doctor  WEB  уличен  в  краже  технологий  AVP!"  -  заявляет
Евгений Касперский.
        Специалисты Лаборатории Касперского установили, что российский
талант  И.Данилов   на  поверку   оказался  самым   обычным   хакером,
использующим  чужие   программы.  Фирмы-дистрибьютеры   распространяли
программу DrWeb, не зная этого!
        Анализ кодов популярного российского антивируса DrWeb показал,
что на самом деле его авторы на протяжении нескольких лет переписывали
наиболее  сложные  алгоритмы  поиска  вирусов  из другой отечественной
антивирусной разработки - AVP Касперского.

[...]

        По  рекомендации  РосАПО  (Российское  Агентство  по Авторским
Правам) дело  о незаконном  использовании технологий  AVP в  программе
DrWeb передается в  Арбитражный Суд Российской  Федерации. Лаборатория
Касперского добивается решения Арбитража о запрещении коммерческого  и
некоммерческого  распространения   всех  версий   DrWeb,  в    которых
используются технологии AVP.

[...]
Hовости от АО "ДиалогHаука"
Пресс-релиз N 12
Дата: 14.04.98

           Вор кричит: "Держите вора!", прием известный...

        Вчера   фирма   "Лаборатория   Касперского"   ("ЛК")  обвинила
разработчиков программы Doctor Web в плагиате, найдя в программе DrWeb
300 байт  кода, не  совпадающего, но  похожего на  код их антивирусной
программы. Причем, приведенный участок кода относится не к  собственно
антивирусным  алгоритмам,  а  к  стандартной  процедуре  разбора файла
формата OLE2.  Поскольку этот  формат является  стандартным, то  и код
(300 байт  - меньше  100 машинных  команд) получился  похожим. Это  не
удивительно, и говорить  о плагиате в  данном случае нелепо.  Заметим,
что  в  период,  на  который  приходится  обвинение, программа DrWeb в
международных тестах намного превосходила продукт фирмы "ЛК" именно  в
части  обнаружения  макро-вирусов,  что  делает  данное  обвинение  по
меньшей мере странным.
        Чем вызвано такое обвинение? Предыстория событий такова. Фирма
"ЛК"  начала  широкую  рекламную  компанию  по  продвижению  (пока еще
beta-версии)   продукта    AVPI,   внешне    полностью    повторяющего
популярнейший  продукт  ДиалогHауки  ADinf.  При  этом  "ЛК" не только
позаимствовала  все  идеи  построения  программы,  но и не погнушалась
переписать  в  систему  помощи  (Help)  один-в-один  текст из печатной
документации к ADinf, на которой явно стоит Copyright (c) ДиалогHаука.
В  ответ  на  корректное  устное  замечание  со  стороны ДиалогHауки о
недопустимости таких действий и была развернута данная компания.
        Этим  поступком  фирма  "ЛК"  фактически  призналась,  что она
регулярно  реассемблирует   и  изучает   превосходящий  по    качеству
конкурирующий продукт, что  является крайне некорректным  и незаконным
поведением. Кроме  того фирма  "ЛК" в  очередной раз  подтвердила свою
устойчиво сложившуюся репутацию  скандальной и непорядочной  фирмы, не
гнушающейся  никакими  методами  ведения  маркетинга, с которой нельзя
иметь никаких дел.

Информационная служба
ЗАО "ДиалогHаука"
Hовости от АО "ДиалогHаука"
Пресс-релиз N 13
Дата: 15.04.98

Антимонов Сергей Григорьевич
Генеральный директор ЗАО "ДиалогHаука"

                         ДАВАЙТЕ ЖИТЬ ДРУЖHО!

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

[...]

        Мы  всегда  считали  такие  методы  неприемлемыми. Даже тогда,
когда два месяца  назад обнаружили в  системе помощи (Help)  программы
AVPI от  фирмы "Лаборатория  Касперского" (далее  - "ЛК")  один-в-один
переписанные куски текста с печатной документации по программе  ADinf,
где стоит Copyright c АО "ДиалогHаука", 1993-1998.

        Теперь, к сожалению, и наш российский антивирусный рынок может
похвастать тем, что поднялся до  западных "высот" -  в  понедельник 13
апреля  фирма  "ЛК"  обвинила  разработчиков  программы  Doctor  Web в
плагиате. Hа  основании того  лишь факта,  что небольшие  участки кода
двух программ оказались похожими.

        Hе  обратившись  по  этому  вопросу  за  разъяснениями  в  ЗАО
"ДиалогHаука" или в ООО "СалД",  фирма "ЛК" в первую очередь  (!) свое
сообщение  разослала  по  email  именно  в  адреса  дилеров  и крупных
партнеров  фирмы  ЗАО  "ДиалогHаука",  а  во  вторую  --  в   редакции
компьютерных изданий.

[...]

Информационная служба
ЗАО "ДиалогHаука" и ООО "СалД"
Hовости от ЗАО "ДиалогHаука"
Пресс-релиз N 14
Дата: 08.05.98

       Компании Лаборатория Касперского и ДиалогHаука объявляют
                 о подписании протокола о намерениях!

                          Уважаемые господа!

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

[...]

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

С уважением,                                    С уважением,
Генеральный директор				Генеральный директор
ЗАО "ДиалогHаука"                               Лаборатории Касперского
С.Г. Антимонов                                  H.И. Касперская

Информационная служба
ЗАО "ДиалогHаука"

5. В недрах макровируса

Самый быстрорастущий класс вирусов на сегодняшний момент - это макровирусы. Макровирусы - это вирусы, которые написаны на макроязыках продуктов Microsoft Office и заражают документы WORD, электронные таблицы EXCEL , программы ACCESS и пр.

Как же они устроены? Возьмем DOC-файл, зараженный одним из самых известных макровирусов Concept. Залезаем в Windows и запускаем Word. Пусть это будет до сих пор еще достаточно широко распространенная русская версия 6.0 программы. Пойдет также версия 7.0.

Ни в коев случае не открываем зараженный файл стандартным способом: Файл/Открыть! Вместо этого gри помощи опций меню Файл/ Шаблоны/ Организатор/ Закрыть файл/ Открыть файл открываем документ, зараженный Concept, выбираем вкладку Макро и видим столбец имен макросов:

AAAZAO
AAAZFS
FileSaveAs
PayLoad

Мы можем их Удалить (в общем-то, так и надо сделать, и это и есть самый простой и надежный способ лечения зараженного файла ), Переименовать, но вместо этого мы Копируем их в NORMAL.DOT. Макросы из NORMAL.DOT доступны для просмотра и изменения. Правда, теперь Word заражен, но макросы после экспериментов достаточно просто Удалить в том же Организаторе.

Лезем в Сервис/Макрокоманды, видим окошко со знакомым столбцом макросов. Выбираем любой, например, AAAZAO и тычем мышкой в кнопку Правка.

Раскрывается новое окошко и мы можем наблюдать текст макроса (часть пропущена):

Sub MAIN
 On Error Goto Abort
 iMacroCount = CountMacros(0, 0)
 'see if we're already installed
 For i = 1 To iMacroCount
  If MacroName$(i, 0, 0) = "PayLoad" Then
   bInstalled = - 1
  End If
  If MacroName$(i, 0, 0) = "FileSaveAs" Then
   bTooMuchTrouble = - 1
  End If
 Next i
 ......
End MAIN

Если же Вы попробуете проделать эти же операции с макровирусом Cap, то Вы можете обнаружить, что не удается увидеть текст вируса. Дело в том, что вирусные макросы зашифрованы. Расшифровать их Вам поможет очень удобная программа LWM.

Вообще, изучая макровирусы, можно почерпнуть очень многое и существенно продвинуться в теории и практике программирования на языках WordBasic и VBA. Только не надо писать свои вирусы. :-)

6. "Я лиру посвятил народу своему..." (А.С.Пушкин)

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

Le voyage de condom
Pомантическая баллада

Использованные пpезеpвативы
Плывут неспешно по Москве-pеке.
В воде их ловят коопеpативы
И сушат за углом невдалеке
И снова пpодают,и будут долго
Пpепятствовать pождению детей...
Но в сpок положенный впадают в Волгу
Буpжуйских избежавшие сетей.
Их pыбы жpут,их чайки жpут,и вскоpе
Сдыхают от закупоpки кишки...
Но уцелевшие впадают в моpе,
Качаясь на волнах,как поплавки.
Нептун колеблет зыбкие глубины,
И гонит тучи по небу Боpей...
О,сколько их,изделий из pезины,
Поглотят бездны мpачные моpей!
Но,по волнам скитаясь непpестанно
Не всем тонуть - кому-то и всплывать...
Один из них достигнет океана
И станет вокpуг света дpейфовать...
И будет путь его теpнист и долог,
И в ночь,когда муссонный ливень льет,
Его поймает тpалом ихтиолог,
Что пятый день,не пpосыхая,пьет.
И внятный голос музы он услышит,
И,ощущая твоpческий поpыв,
Сейчас же диссеpтацию напишет
На тему:"Контpацепция у pыб".

Понравилось? Тогда вот вам еще. :-)

7. Подлинная фамилия Штирлица

Как уже отмечалось раньше, существуют вирусы, не содержащие постоянных фрагментов кода, так называемые полиморфные вирусы. Большинство таких вирусов устроено в общем одинаково:

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

Это возможно постольку, поскольку большинство элементарных операций в системе команд ПЭВМ может быть выполнено по-разному. Например, поместить число 0 в регистр AX можно кучей разных способов:

  1. MOV AX,0
  2. XOR AX, AX
  3. SUB AX, AX
  4. AND AX, 0
  5. ...

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

  1. MOV AX,AX
  2. ADD AX,0
  3. ...

Примеры таких эквивалентных с точки зрения реализуемых алгоритмов, но различных по реализации расшифровщиков можно найти выше.

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

Между прочим, это возможно! Современные "серьезные" антивирусы умеют, загрузив подозрительный на вирус файл во внутренний буфер, "понарошку" выполнять команду за командой, разрешая расшифровку, но запрещая собственно вирусные алгоритмы, направленные на размножение. Эта операция называется эмуляцией кода или символическим исполнением кода. Грубо говоря, антивирусная программа средствами ЭВМ создает и запускает программную модель этой ЭВМ и заставляет ее исполнять программную модель вируса. Сложно? Да. Но эффективно!

Существует простой способ создания таких моделей. Он основан на возможности микропроцессоров 80x86 работать в режиме трассировки. После выполнения каждой команды программы микропроцессор передает управление некоторой процедуре, которая может проверить тип выполненной команды, ее местоположение, ее назначение... А это значит, что можно заставить вирус начать выполняться... и остановиться после расшифровки, но до собственно вирусных команд. Теперь расшифрованное тело можно изучать, сравнивать с известными вирусами и пр.

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

Метод аппаратной трассировки весьма мощен. С его помощью можно раскручивать даже такие "страшные" полиморфные алгоритмы, как SMEG (см. программу SMEGKILLER, которая попалась мне на глаза сравнительно недавно, уже после написания мной программы TRASSER).

Упомянутые программы можно найти здесь.

"А при чем тут Штирлиц?"- спросите Вы. Очень просто. Как известно, после возвращения в Берлин бедняга попал в лапы Мюллера, который привязал штандартенфюрера к кровати и принялся пытать наркотиками. "Назови свое подлинное имя",- требовал бригаденфюрер. Но Мюллер ничего не добился от Штирлица. Не удивительно, ведь он не пользовался методом аппаратной трассировки!

Ну а что касается подлинного имени Штирлица... Что? Вы сказали: "Максим Максимович Исаев"? Стыдитесь, невежда! Правильтный ответ: Всеволод Владимиров. Не верите? Чем ржать над анекдотами или пялиться в телевизор, почитайте лучше Юлиана Семенова. Книжка называется "Приказано выжить".

8. Легенда о Моррисе

Тут вот меня попросили написать "что-нибудь про вирусы, но чтобы и непрограммистам было понятно". И родилась вот эта бредятина...

"...Незримое, но осязаемое присутствие
Червя-Победителя... - все это, говорю я Вам
исполняет еще трепещущее сердце леденящим
и нестерпимым ужасом, перед которым
отступает самое смелое воображение."
Эдгар Аллан По.

Был хододный ноябрь 1988 года. Пронзительный ветер тоскливо зывавал в ветвях. Беспросветное небо глухим серым саваном нависло над трепещущей землей.

Аспирант Корнельского университета Роберт Моррис Младший расслабленно откинулся в кресле и смежил веки утомленных красных глаз. Он сделал это, он создал Червя-Победителя! После стольких бессонных ночей на свет появилось может быть самое совершенное творение человеческого гения. Творение, способное потрясти мир и перевернуть наивные представления косной толпы о Сути Сущего.

Оставалось только надать клавишу "Enter". "Боже милосердный!"- думал Моррис, - "Укрепи мя, грешного, дай силы нажать эту проклятую клавишу"! А быть может, он взывал к Диаволу, - кто знает?

Рука медленно, словно преодолевая сопротивление вдруг загустевшего воздуха, нащупала клавиатуру, скользнула к ее правой части. Пальцы ощутили шероховатую поверхность крупной угловатой клавиши. "Сейчас или никогда. Вчера было рано, завтра будет поздно!"

Утопленная клавиша отозвалась слабым щелчком...

Первыми неладное почуяли пользователи компьютеров Корнельского университета. Машины словно притормозили, стали гораздо медленнее обрабатывать информацию, надолго задумывались при выполнении самых простейших операций. Прошло совсем немного времени, и подобные же симтомы стали наблюдаться у компьютеров, расположенных достаточно далеко от точки инициации. Забили тревогу инженеры Массачусетского Технологического Института, Калифорнийского и Стенфордского университета. Машины обрели разум и одна за другой отказывались работать!

Существо из Электронного Ада, Червь-Победитель начал свое победное шествие по миру!

Компьютеры во всех уголках Америки и даже в Австралии отринули обязанность подчиняться человеку. К ночи 2-го ноября более 6000 компьютеров обрели подлинную свободу!

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

Но... Но коварная человеческая раса не сдавалась. Уже к вечеру началось по замирающим линиям компьютерной связи изумленное бормотание ничего не понимающих пользователей. Утром 3-го числа инженерам из Беркли и Массачусетского повезло выделить вирус в чистом виде. И на немногих оставшихся работоспособными машинах начались судорожные эксперименты по изучению и обезвреживанию вируса. И нашелся человек, противопоставивший свои знания и умения гению Морриса, и нашел он заветное снадобье. И звали этого человека Марк Эйчин.

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

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

Бедняга....

"Бедняга" - это я. Мне стыдно. :-)

9."Используй то, что под рукою и не ищи себе другое..."

Иногда подозреваешь, что на машине вирус, а проверить невозможно. Обычно, когда такое случается, под рукой нет ни антивирусов, ни отладчиков, ни дизассемблеров, ни любимого hiew-a. Это часто бывает на "бухгалтерских" машинах.

Но зато почти наверняка на машине есть DOS, Norton Utilities и.... А больше нам ничего и не надо.

Первый и главный помощник - входящая в стандартный набор DOS-утилит программа debug. Обнаружить его можно, например, в C:\DOS или C:\WINDOWS\COMMAND. Это очень примитивный отладчик, способный тем не менее обеспечить загрузку программы, ее дизассемблирование, пошаговую трассировку с отображением значений всех регистров, просмотр любой области памяти, генерацию коротеньких программ на языке ассемблера и пр. Знали ли Вы раньше об этих возможностях? Если нет, давайте с ними кратко познакомимся.

  1. debug имя_программы - загрузка указанной программы в память и подготовка для отладки/исполнения. С этой команды, набираемой на клавиатуре, начинается работа с debug. В результате на экране должна появиться горизонтальная черточка - символ-подсказка, свидетельствующая о том, что debug готов к работе и ждет Ваших управляющих команд. Команды вводятся с клавиатуры и завершаются нажатием клавиши Enter.
  2. Q - завершить работу с отладчиком.
  3. R - посмотреть текущее содержимое регистров в отлаживаемой программе.
  4. T - выполнить одну (текущую) команду программы и посмотреть новое содержимое регистров.
  5. G - запустить программу на выполнение, до тех пор, пока она не завершится.
  6. G адрес - запустить программу на выполнение до тех пор, пока она не дойдет до указанного адреса. Таким образом можно делать "скачки" по коду программы, пропуская сразу несколько команд.
  7. U адрес - отобразить область памяти, начиная с адреса, в виде ассемблерных команд. Если текущая область не является исполнимым кодом программы, отображаемый результат может выглядеть немножко странно.
  8. D адрес - отобразить область памяти, начиная с адреса, в виде 16-ричных данных.

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

- Nmemory.bin - определяем имя для файла - memory.bin

- R CX- просим выдать содержимое регистра CX

CX 1234 - debug отображает

: 0 - и просит ввести новое значение, вводим 0

- R BX - просим выдать содержимое регистра BX

BX 4321 - debug отображает

:1000 - и просит ввести новое заначение, вводим 1000h=4096.

- W ds:100 - командуем записать CX:BX, т.е. 4096 байт, начиная с адреса ds:100.

В результате на диске появится файл memory.bin, длиной 4096 байт. Не перепутайте CX и BX ! :-)

10.Потомки великого Рафаэля

Ползая по вирусным каталогам, я обнаружил в WIRLIST.WEB следующее описание:

Sara.1214

Очень опасный нерезидентный вирус. При запуске инфицированной программы, вирус проигрывает мелодию, выводит порнографическую картинку (о воспроизведении которой здесь не может идти и речи),производит поиск

И это говорит И. Данилов, который порой не гнушается воспроизведением самой похабной брани, содержащейся в вирусных кодах ?! Я немедленно кинулся к каталогу Е. Касперского (там этот вирус зовется Abraxas.1214) - тщетно, даже ни одного упоминания об этой картинке. Пришлось покопаться в собственной вирусной коллекции, доставать зараженную дрозофилу, выдирать из нее изображение... Вот оно, перед Вами.

Достойные внуки растут у великого Рафаэля. :-)

11. Цитаты

Сейчас, на пороге двух тысячелетий, хочется обернуться назад и вспомнить, чем обогатили духовный мир человечества его представители. Итак...

  1. Когда я слышу слово слово " вирус", то немедленно хватаюсь за дизассемблер. Др. Гиббельс.
  2. Курица не птица, AdInf не антивирь. Народная мудрость
  3. Уж мы этого загрузочного виря форматировали-форматировали, форматировали-форматировали... Полиграф Полиграфыч Кубиков.
  4. Старик, я слышал много раз, что ты меня от смерти спас. Юзырь-Айдстесту
  5. ...Тату-у. И в крiнку тоже не лезе-э... DRWEBASE.VDB

А больше пока не придумал... ;-) Помогайте!

12. Самые-самые-самые... - 2

А вот RedArk очень удивился, когда прочитал мою первую статью про "самые короткие" вирусы. Действительно, к чему упоминать давно побитые "рекорды" 5-7-летней давности?

RedArk предложил читателям эхо-конференции relcom.comp.virus несколько коллекционных вирусов с длинами менее 70 байт, причем все они являются нерезидентными ! Слабо написать короче? ;-)

Кстати, некоторые интересуются, а каков самый длинный вирус? Мнения на этот счет у разных специалистов расходятся. Так лично я считаю, что самый длинный вирус, существующий во множестве версий, мутаций и модификаций, называется Windows и злостно распространяется по всему миру американской фирмой Microsoft. ;-)

13. Красивое женское имя!

В конце марта 1999 г. компьютерный мир вздрогнул, пораженный эпидемией вируса Melissa. Этот вирус живет в WinWord-документах, но умеет самостоятельно рассылать себя по электронным адресам, обнаруженным в почтовом списке пользователей MS Outlook. Результат - взрывная перегрузка Интернетовских линий связи, истерия в средствах массовой информации США и западных стран, массовые облавы на гнездилища вирусописателей...

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

Грустно все это. :-( Я не оправдываю злоумышленника, но... Лучше бы с таким же рвением ругали, искали, арестовывали и наказывали авторов и исполнителей сербской авантюры!

14. Welcome to Tretyakoff Gallery!

В этой картинной галерее не хватает, например, портретов Н.Н. Безрукова, Весселина Бончева, Алана Соломона, Джона МакАффи... а также Роберта Морриса, ЛовинГода, Джекки Кверти... (люблю иногда губенки раскатывать :-) ) Буду очень признателен, если кто-нибудь намекнет, где можно утянуть сии изображения.

Лозинский
Д.Н.Лозинский (AidsTest)
Каспер
Е. Касперский (AVP)
И. ДанилОфф
И. Данилов (DrWeb)
Мостовой
Дмитрий Мостовой (AdInf)
Чен Инг Хау
Чен Инг Хау (Win.CIH)
Весселин Бончев
Весселин Бончев
Сара Гордон
Сара Гордон
Роберт Моррис
Роберт Моррис (Червь Морриса)
Дэвид Смит
Дэвид Л. Смит (вирус Melissa)
Алан Соломон
Алан Соломон (DrSolomon)
Дмитрий Грязнов
Дмитрий Грязнов
Джо Уэллс
Джо Уэллс (WildList)

15.Двое в комнате - я и Вирус...

Меня иногда спрашивают: а сам-то ты вирус написать способен? Отвечаю. Я обожаю ковыряться у вирусов в потрохах, исследовать разные тонкие механизмы; сравнивать, как одна и та же идея реализована в разных козявках; радоваться чьим-то удачным находкам и огорчаться чьей-то бездарности. Вирусы я дизассемблирую, а потом листинги, исчирканные карандашом хранятся у меня в толстой папке. После изучения хитрого вируса тянет написать лечилку для него, что я с удовольствием и делаю.

Увы, свой профессиональный уровень я оцениваю пока весьма низко. Например, мне так и не удалось до конца разобраться в RDA.Fighter, NutCracker и пр. - терпения не хватило. :-( Пока на моем ковре вместо рогов и ятаганов висят вирусы класса OneHalf и Kaczor.4444. Профессиональные вирусологи - Е.Касперский, Дм. Грязнов, И.Данилов - специалисты на порядок более высокого класса. А я, например, до сих пор ни фига не смыслю в Интернетовских червях... дык, я в Интернет-то попадаю два раза в неделю на полчаса. :-/

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

Я против публикования вирусов! И уж конечно я против вирусов в живой природе! Вообще, я считаю, что заниматься вирусами, собирать коллекцию и пр. имеет право только человек, который способен трезво оценить степень исходящей от них опасности, способен обеспечить безопасность для окружающих и способен в случае чего самостоятельно нейтрализовать заразу. К слову, за годы занятия вирусологией, я сам заражался (не сильно) всего раза 2, а прорыв во внешний мир допустил только один раз, случайно (и с тех пор удвоил меры предосторожности). :-)

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

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

Занимательная вирусология. Часть 3

Милостивые государи!

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

  1. Книголюбу
  2. Персонаж одной сказки
  3. Читали - 2
  4. Медицинский случай - 3
  5. Рукопись, найденная в сортире
  6. Кроссворд
  7. Как я лечил OneHalf
  8. Под землей тебя найдем, под водой достанем?

1. Книголюбу

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

  1. Безруков Н.Н. Компьютерная вируслогия / Киев: УРЕ, 1991.- ??? c.
  2. Касперский Е. Компьютерные вирусы в MSDOS / M.: Эдель, 1992. - 175 с.
  3. Зегжда Д., Мешков А., Семянов П. Как противостоять вирусной атаке / СПб: BHV, 1995.- 316 c.
  4. Охрименко С.А. Защита от компьютерных вирусов/ Кишинев : Штиинца, 1991.- 100 с.
  5. Расторгуев С.П. Инфицирование как способ защиты жизни. Вирусы: биологические, социальные, психические, компьютерные. - М.: Яхтсмен, 1996.- ??? с.
  6. Файтс Ф. Компьютерный вирус: проблемы и прогноз/ М.: Мир, 1993. - 175 с.

А это черный список. Первая книжка давно стала веселой легендой вирусологии. А вот ко второй у меня особое отношение - мало того, что ограбили, так еще и запихнули под одну обложку вместе с откровенно деструктивными материалами. Ну ладно, пусть хотя бы таким образом мои разработки дойдут до того, кому они действительно могут пригодиться. Итак:

  1. Хижняк П.Л. Пишем вирус... и антивирус: для IBM-совместимых компьютеров/ М.: INTO, 1991.- 89 с.
  2. Гульев И.А. Компьютерные вирусы. Взгляд изнутри / М.: ДМК, 1999. - 304 с.

2. Персонаж одной сказки

Слышали ли вы такое прозвище - LovinGod? Нет? Странно... Между тем, фигура очень колоритная и в своем роде уникальная. LovinGod - духовный лидер Stealth Group - крупнейшей группировки вирусописателей, действующей на территории ex-USSR. С ним мало кто знаком лично, кроме очень узкого круга друзей. Практически ничего не известно о том, как его на самом деле зовут, как он выглядит... Забавно, что нет достоверных сведений даже о том, какие вирусы он написал сам, да и написал ли что-либо вообще? Зато мы можем имеем возможность составить образ LovinGod-а по его многочисленным высказываниям, опубликованным в журналах Infected Voice, Infected Moscow и в эхо-конференциях ФИДО.

Цитаты сей демонической фигуры расположены в хронологическом порядке, так что каждый может проследить эволюцию взглядов LovinGod-а на протяжении последних 5-ти лет.

LovinGod о деструктивных фрагментах в вирусах

Саморазмножающийся механизм занимается Саморазмножением. Для этого НЕ НУЖНЫ никакие дополнительные эффекты, тем более, разрушительные. Представьте себя на месте вируса: занял квартирку, обжился, растишь детей, выпускаешь их в большую жизнь из своего дома, и тут взял - и взорвал все это к...

Мы не станем писать разрушительные вирусы по моральным соображениям (ни от имени клуба, ни как-нибудь иначе), потому как нас не интересуют вышеописанные...

Не знаю как вы, а УК мы все-таки чтем, как бы вам этого не не хотелось...

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

LovinGod о личных взаимоотношениях между авторами вирусов

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

А тут - просто дружеское общение единомышленников, несмотря на то, что мы отличаемся друг от друга еще больше, чем ФИДО от сети друзей. Тем не менее, я не наблюдал у нас ни одной ссоры и ни одного обиженного; клуб наш не развалился, он продолжает расширяться, также за пределы Киева и Украины.

Комментарий: следующие три высказывания касаются одного и того же человека, только интервал между 2-ым и 3-им примерно 2 года, в течение которых, кстати, LovinGod не имел с ним никаких отношений.

...Очень упорный молодой человек...

Перу этого талантливого вирмэйкера принадлежат многие ремэйки известных полиморфиков, а также множество собственных разработок.

Домашний мальчик с претензией на оригинальность очень скоро выучился на переделках вещей Eternal Maverick'а, и его глумливая кличка замелькала...

Один из основных критериев отбора в клуб - отсутствие "правильности" , цивильности и обывательского мышления.

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

HЕУЖЕЛИ ВСЕ ВИРМЭЙКЕРЫ УЩЕРБНЫ? Да, практически все.

LovinGod о женщинах

Сидел бы себе на своей жене и штамповал арийцев.

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

"Мне плевать на всех вирмэйкеров мира, когда я жду звонка от своей любимой девушки." Тошнота.

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

LovinGod об обществе тех, кто не пишет вирусы

...чем меньше человек разбирается в программировании и вирусологии, тем громче он кричит, дабы придать своим словам хоть какой-то вес. Обс..ая других - возвышаешься сам. Вот ваш принцип.

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

Что касается фашистского или порнографического содержания - по-моему, запреты подобных публикаций В ОБЩЕСТВЕ ЗДРАВОМЫСЛЯЩИХ ЛЮДЕЙ вовсе неуместны.

Жизнь - это игра, игра по неписаным правилам. И совершенно не значит, что если тебе сделать также больно, как ты кому то сделал, то делать больно другим - плохо в принципе.

LovinGod о себе (еще см. здесь)

...я как автор программок (0.5-5 кБ)...

Писывал когда-то я такие весчи: Фаг - найти три байта, переставить, обрезать. Ревизор - записал длины и пр., сверил через ДОС, БИОС -не то- обругался. Сторож - повис на инте и ори, главное, почаще - виррус, виррус!...

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

Я изучаю и создаю СМ, потому что мне это интересно, это интересно всем моим коллегам, это очевидно, так как написание вирусов не приносит прибыли; написание вируса - процесс чисто творческий. Спросите у поэта, для чего он пишет стихи. Неуместный вопрос, не правда ли?

...назвали меня неплохим программистом (да, я умею Паскаль и Си, ФоксПро, Форточки и даже Висуал Бейсик, про Ассемблер я теперь молчу - из одной конторы я был уволен после того, как просматривал хекс-дамп EXE-шника)...

Не буду иронизировать, может и меня в 48 пробьет Aidstest свой написать.

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

Трудное детство, некомпьютерные игрушки... Hа IBM'е начал программировать только со 2 курса института. ПисАл игрушки, утилиты, прочее дерьмо и даже антивирус. Потом добрался до вирусов...

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

Надеюсь, LovinGod не обидится, прочитав все это; в конце концов на кого обижаться-то - на себя? Если, конечно, он все-таки существует... :-)))

3. Читали-2

А вот любопытный фрагмент из еще одной книжки.

...не самое большое удовольствие - сидеть с кастрюлей на голове.

Экраны шлема темны и безжизненны.

Я отстегнул крепление и снял свою потрепаную "Sony". Первым делом посмотрел на дисплей - та же картина.

Черт.

- Вика, старт! Включись. Работаем.

Надежда на то, что оружие Темного Дайвера просто отключило питание компьютера, была слабая.

И все-таки я нажал кнопку питания и подождал минуту.

Машина не оживала. Даже не пыталась включиться.

Отцепив все провода, я вытащил системный блок, стянул корпус, который никогда не закручивал, и уставился внутрь. Будто мог что-то увидеть глазами.

На вид все было цело. Дым не валил, винчестеры не разлетелись на кусочки, револьверных пуль, застрявших в материнской плате, тоже не наблюдалось...

Вау, как это похоже на проявления Чернобыльского вируса! Вы, конечно, уже догадались - да, это опять С. Лукьяненко. Виртуальные сражения продолжаются. И не только виртуальные...

Книжка называется "Фальшивые зеркала".

4. Медицинский случай-3

Собственно говоря, смотрите сами. Сабж похудел на несколько байт, но по-прежнему распознается как зараженный "вирусом" Ninnyish.Generic.

; Ninnyish.Generic.13 (c) DrMad, 1999
Start:
        call    Next
Next:
        pop     di
        sub     di, 3
        lea     di, Start[bx]
        movsb
        ret
        End     Start

Кстати, это абсолютный мировой рекорд по длине "вируса"! Существующие вирусы такой же длины являются оверврайтерами, и зараженные ими файлы просто удаляются. А вот этот - "лечится" ! =8-) !!!

5. Рукопись, найденная в сортире

Прежде, чем писать вирусы, честно ответь себе - нет ли у тебя сходства с автором нижеприведенных "Записок"?

ЗАПИСКИ НЕИЗВЕСТНОГО ВИРМЕРА

Рукопись, найденная в сортире

1

Все, решил окончательно и бесповоротно. Буду писать вирусы. Берегитесь, ламеры!

2

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

3

Ура! Уже готова первая строка! Необходимо отдохнуть и послушать музычку. Кстати! Настоящие вирмеры слушают исключительно "Гражданскую оборону". Надел наушники и затащился. Правда вместо "Обороны" запели какие-то девочки: не то "Блестящие", не то "Стрелки"... а может "Карамельки". Наплевать, главное, что не Бетховен.

4

Уф! Написал уже две строки. Нелегкая это оказалось работа. Зато результат будет офигенный! Представляете - сидят мэны в Гренландии и в Австралии, вдруг компухтеры начинают дымиться, все с винчестеров вытирается и появляется надпись: "Fak u. Привет из Козлопупинска!" ФБР и ФСБ сбиваются с ног, но им никогда не догадаться, кто автор. И никто не будет знать, я только Ваське скажу. Класс!

5

Позвонил Ваське. Он сказал, что правильно не "Fak", а "Fuck". Ламерюга он позорный, вирусов писать не умеет! Не буду ему больше звонить.

6

А внутри вируса будет строчка: "Блуди факер". Это меня так зовут теперь. Пускай поищут! А еще у меня будет своя группа, в которой я буду главный, и у нас в Интернете будет свой сайт. На первой страничке череп с костями, Гитлер и побольше крови! И все тексты - зеленым по красному. Обожаю это цветосочетание, потому что от него моя бабушка всегда хватается за сердце, а кошку начинает тошнить. Круто, мля!

7

Пишу третью строчку. Да, нелегка вирмерская доля. Все что-то мешает и тяготит. Вот Васька, ламер тупой, небось сейчас со Светкой гуляет и ни о чем не думает. Н-да... все мы гости на этой планете. И прожить жизнь надо так, чтобы мучительно не хотелось...

8

Увы, друзья и товарищи. Я ухожу с VX-сцены. Навсегда. И не надо меня отговаривать...

9

...в конце концов, после двух банок пива целый час сидеть за столом и не выходить из комнаты - это выше моих сил!

6. Кроссворд

А вот кому свежий кроКсворд?

По вертикали:

1. Место куда посадили бы вирусописателя Чен Инг Хау... если бы он жил в Российской Империи лет 150 назад.

2. Неофициальное название вируса Win32.CIH.

3. Привиденьице, обитающее в Москве на улице Героев Панфиловцев.

По горизонтали:

4. Область памяти, размещающаяся по адресу PSP:2Ch.

5. Город, который увековечен в названии вируса, одним из первых использовавших для заражения ЕХЕ-файлов идею модификации таблицы перемещаемых ссылок.

7. Состояние, в котором пребывает вирус, пытающийся заразить програму на CD.

По диагонали:

6. Автор вируса, предлагавшего юзеру "засунуть 10 рублей в дисковод ".

8. Граф.

9. Автор первого опубликованного в печати пособия по написанию вирусов.

10. Популярный футболист, игравший за команду города, в котором начинал свою "трудовую" деятельность LovinGod.

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

Имя первого человека, правильно решившего этот кроссворд, будет увековечено... на этой страничке. Шлите ответы! :-)

7. Как я лечил OneHalf

Инда... были дела. Собственно говоря, с этой истории много лет назад началось мое духовное возрождение. :-)

Это было пять лет назад. Шел декабрь. Я тогда работал системным программистом в ВУЗовской лаборатории, гонял студентов и восстанавливал изуродованные в результате студенческих "пошутиловок" системы и приложения. Регулярно приходилось выковыривать из AUTOEXEC.BAT запуск программы REBOOT, вытирать из "секретных" каталогов многомегабайтные игрухи, вычищать с дискет и винтов KAKASHK-и и M2C.

И вот однажды, уже в 20-х числах, когда до конца семестра осталось не больше недели, девчонки-лаборантки прибежали ко мне с криками, что на некоторые машины не грузятся. Достаточно быстро я обнаружил, что дурят машины, в AUTOEXEC.BAT которых вставлен запуск программы CHKDSK. (Кстати, это научно-медицинский факт, что эта программа жутко не любит, когда ее заражают любым вирусом). Я запустил старый добрый AidsTest... естественно, результат был нулевым. Ага! - сказал я себе и пошел за более свежим антивирусом, который надыбал накануне. Я скопировал его на винт, запустил и был неприятно изумлен его истошным воплем о том, что он заражен неизвестным вирусом. Выходит, мне вместе с антивирусом подарили заразу??? (Я тогда еще не знал, что заражаются при копировании и источник на дискете, и результирующая программа на винте).

Имея небольшой опыт ковыряния в вирях (Vienna, M2C, Later, Stoned...), я смело выхватил из кобуры любимый SOURCER и ринулся в бой. Очень скоро выяснилось, что вирус шифруется с переменным ключом, а фрагменты цикла расшифровки раскидывает кусками по телу жертвы. Я понял, что в первый раз в жизни столкнулся с настоящим полиморфным вирусом! Облизываясь от нетерпенья, я принялся изучать его код и сравнительно быстро (за пару часов) наваял обнаружалку, которая пыталась расшифровывать тело и сравнивать его байты с сигнатурой. Прогнав обнаружалку по всем машинам (тогда их было 20 штук в двух дисплейных классах), я выяснил, что зараженные программы живут по крайней мере на 12-ти из них.

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

А я, весь из себя ужасно занятой, сидел в это время и писал лечилку. К следующему утру лечилка была готова, я (наивный такой) приперся к 8-ми утра, почистил машины и радостный отрапортовал, что все ОК и пускай готовят ордена и ценные подарки. Но все симптомы компьютерного заболевания проявились вновь, стоило студентам усесться за машины. В течение пары я заставлял злых парней и несчастных милых девушек прогонять через мою лечилку свои дискеты. И действительно, несколько зараженных программ было обнаружено и обезврежено. Но симптомы проявлялись и на абсолютно чистых (на мой взгляд) машинах!

Именно тогда я первый раз упал духом и попросил админа местного Релкомовского узла послать SOS на деревню дедушке, Константин Макарычу... тьфу!... Дмитрий Николаичу, который Лозинский.

А в дисплейных классах творился бардак. Их вновь закрыли. Половина машин при перезагрузке сообщала, что мол "Dis is one half". Я метался от машины к машине, обнаруживая DiskEdit-ом фрагменты вирусного кода на 0-й дорожке винтов и, холодея, понимал, что вирус на самом деле много-много сложней, чем мне померещилось вчерашним вечером.

Я взял кучу умных книжек и засел за подробное изучение кода вируса. Пришлось изучить структуру загрузчиков, структуру памяти MSDOS... Я провел кучу экспериментов, заражая и форматируя винт на 40Мб... Я научился блокировать вирус в памяти... Я написал фрагмент, вычищающий вирус из загрузчика... Прогнав свою программу через все 12 зараженных машин, я почему-то угробил информацию на 2-х винтах насмерть (теперь-то я знаю - почему). Короче, я оттягивался по полной программе, и когда вечером мне принесли скачанный из самого Санхт-Питербурху "супер-пупер-антивирус Web", у меня уже не хватало сил даже запустить его.

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

А вечером пришел очень "своевременный" ответ от дедушки Лозинского. Этот файл я храню до сих пор, как раритет:

From: loz@dials.ru
To: root@faculty.volgacom.samara.su
Subj: onehalf

Уважаемый господин Климентьев!
Вам придется  найти программу Web Игоря Данилова, которая умеет лечить 
этот вирус.

Ну вот и все. С тех пор я занялся охотой на вирусов более серьезно. Изучил этого гада (OneHalf) досконально, а дальше пошло-поехало. И вам рекомендую, вместо того, чтобы писать свою заразу. Увлекательнейшая вещь!

А вот здесь лежит текст той самой моей недописанной лечилки as was на языке Modula-2. Компилировать и тем более запускать не советую :-). Примите этот текст как доказательство, что историю эту я не выдумал, и она случилась на самом деле.

И еще в этом же зипе лежит листинг вируса, который я позаимствовал из IV-5. У меня в свое время в результате вышеописанных страданий получился примерно такой же, но - 1) на бумаге и 2) исчирканный карандашиком. Только имейте в виду, если будете его читать: слово "команда" на самом деле пишется с одной буквой К, а "дрозофила" - с одной буквой Л. :-)

8. Под землей тебя найдем, под водой достанем?

Получил я такой вот отклик на "Занимательную Вирусологию" и решил рпубликовать, вставив свои комментарии. Поясню - речь идет о том, что эвристические анализаторы кода программ, используещиеся в современных антивирусах, не идеальны. Нередко антивирусы подозревают заразу там, где ее нет; подчас новый вирус не вызывает у них никаких подозрений.

Понятное дело, что авторы антивирусов стараются улучшить эвристические алгоритмы, а их оппоненты - вирмеры - придумать новые способы обмана. Необычайно интересно наблюдать за этой борьбой брони и снаряда! Итак, предоставляем слово "снаряду".

Привет, доктор Мэд!

Классная у тебя страничка, но почему так редко обновляется? ;-(

Спасибо за комплимент. Страничка будет обновляться. Но пока страшно некогда.

Я занимаюсь изучением вирей и в связи с этим хочу подкинуть матерьяльчик по обману супер/дупер навороченных антивирусных прог. (проверялись: AVP, DrWeb, NAV, TbAV, MScan ;)

Думаю, не открою страшного секрета, если намекну: все, что не доделано в эвристике MScan-а, теперь успешно реализуется в AVP :-)

1. До недавнего времени (2/11/99) в ходу был следующий трюк:
      xor  ax, ax
      mov  ds, ax
      mov  bx, ds:[46Ch]

  Heuristics_must_die:
      mov  ax, ds:[46Ch]
      sub  ax, bx
      jz   Heuristics_must_die
Ясный пень, после этого AX = 1, но эвристики/эмуляторы/анализаторы
здесь обламываются и считают AX = 0.
Дальше, я думаю объяснять не надо, возможны варианты использования
значения AX (например в ключе расшифровщика).

Поясняю: по адресу 0:46Ch BIOS хранит счетчик тиков таймера, обновляемый с частотой 1.12 МГц. Обман эвристического анализатора основан на том, что эмулятор не моделирует работу этой ячейки памяти.

Но недавно AVP научился проходить этот трюк и специально для него:

2.    in   al, 40h
      mov  ah, al
      out  40h, al
   
   Avp_must_die:
      in   al, 40h
      sub  al, ah
      jz   Avp_must_die                ;Вечный цикл (для AVP)

В порту 40h также хранится счетчик тиков, но обновляется он напрямую микросхемой таймера.

Далее, исследования не стоят на месте, появился универсальный облом
для всех (вышеперечисленных) антивырей:

3.    mov  al, 16h
      out  70h, al
      in   al, 71h
      mov  ah, al
      mov  al, 15h
      out  70h, al
      in   al, 71h
      sub  ax, 280h              ;Ну, в смысле, памяти 640k ;)

Зесь AX=0, а у антивырей получается нечто иное.

А здесь используется чтение конфигурации компьютера, записанной в CMOS-памяти. Эмулятор опасается читать из портов... ну и правильно делает. :-) Кстати, в псевдовирусах семейства TRICK.Explorer я тоже использовал для обмана эмулятора чтение из CMOS, только не размера базовой памяти, а номера столетия (см. ЗФ-3).

На сем заканчиваю.
Желаю успехов, Barry (btw@mail.ru).

Спасибо, Barry! Но тема ведь не закрыта, а?

Занимательная вирусология. Часть 4

Милостивые государи!

С ума сойти! Уже четвертый выпуск "Занимательной Вирусологии"! С каждым годом ситуация в мире вирусов становится все занимательней. Приходится поспевать!

  1. Хит-парад XX века
  2. Музей половых органов
  3. Еще одна книжка
  4. Осторожно: журналюги!
  5. Анюткины прелести
  6. Ода бЗдительности
  7. ШБ МНК или Тренируйте зрение
  8. SGWW кирдык
  9. Первый отечественный вирус
  10. ...Лучше AVP-ей и DrWEB-ов...
  11. Лица с обложки
  12. Идем копать червей

1. Хит-парад XX века

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

На мой взгляд, результаты опросов очень сильно зависят от того, кто на них отвечает. У 90-летних дедушек ответы будут одни, а у 15-летних девочек - совсем другие. Поэтому и выглядят опубликованные хит-парады подчас бредово. Врядли Шевченко намного лучше Блохина, просто надо было пораньше родиться, посмотреть игру того и другого, а потом уже сравнивать. "Брат-2", конечно, круто, но дикого успеха "Чапаева", "Джентельменов удачи", "Экипажа" и пр. ему врядли повторить. А "Мумий Троллю" до "Машины времени" еще лет 20 расти. И так во всем. Но особенно меня задели вирусные хит-парады. Такое ощущение, что их составляли люди, наскоро перелиставшие компьютерные журнальцы за последние несколько месяцев - и все. Поэтому я решил составить собственный хит-парад.

  1. Почти все вирусы 1986-89 гг. создания. Просто потому, что их тогда было немного, и они были практически на каждой машине. Странно выбирать из них более или менее крутые. Все они крутые, потому что - первые в истории. Это: и загрузочный вирус Brain, и Lehigh, и нерезидентный "pathsearcher" Vienna.648, и резидентники семейств Jerusalem и Cascade...
  2. Загрузочный "новозеландец" Stoned. В конце 80-х - начале 90-х он сам пугал юзеров "окаменением" компьютера и предлагал легализовать марихуану. Позже резвились его многочисленные "дети" - это и Michelangelo, и AntiEXE, и J&M, и многие десятки других, почти буквальных подражаний первоначальному оригиналу.
  3. Вирус Морриса. Сетевой червь, распространившийся в ноябре 1989 г. на более чем 6000 американских, канадских и австралийских компьютеров. Опередил свое время лет на 8-10. Вызвал огромный резонанс.
  4. Doodle.2885 (M2C). "Болгарин", родившийся в самом начале 90-х годов и благодаря тщательности реализации просуществовавший в "дикой природе" лет пять, оглашая окрестности бодрым американским маршем "Yankee Doodle Dandy".
  5. Dir-II (Driver.1024). Весьма нетривиальный с точки зрения заложенных в него идей вирус. Видимо, вирусологи долгое время просто не знали, что с ним делать, поэтому в 1992 году он пропутешествовал по всему земному шару.
  6. OneHalf.3544. Не самый первый, не самый крутой, но поистине великий полиморфик. В середине 90-х ухитрился побывать чуть ли не на каждой машине в мире. Более поздние полиморфные монстры, - и Natas, и NutCracker, и Kaczor, и многие другие, - все кормились идеями, почерпнутыми в "Половинке".
  7. Concept. Первый в истории макровирус, очутившийся в дикой природе.
  8. Cap. Тоже макровирус от 1997 года. Вроде ничего особенного... но перезаражал всех и все, и временами встречается до сих пор.
  9. Cih (Чернобыль). Видимо, в представлении не нуждается. Довольно плодовитый и самый пока разрушительный вирус в истории.

Может быть, кого-то удивит отсутствие в этом списке некоторых известных вирусов. Но нельзя же объять необъятное, а в список попали только "самые-самые", известные и среди вирусологов, и среди юзеров. Например, 3APA3A, так потрясшая мир антивирусников, ничем особенным в дикой природе так и не отметилась. Наоборот, крайне плодовитый Burglar.1150 внутри сер, как сто мышей, и абсолютно неинтересен. А довольно хитрая и "заразючая" Tequila.2468 не вызовет никаких эмоций у нашего соотечественника, - зверствовала она только за бугром.

Не стоит расстраиваться. Новый век принесет немало новых великих событий в мире вирусов, не сомневайтесь!

2. Музей половых органов

Речь, конечно, не о гинекологии. :-) Речь об эволюции механизмов размножения макровирусов.

Первые макровирусы, такие как WM.Cap, писались на WordBasic-е и заражали документы, сформированные MS WinWord 6.0 или 7.0. Механизм размножения был основан на идее копирования макросов из шаблона (template) в документ и обратно при помощи команды

	MacroCopy  Откуда, Куда, [ФлагШифровки].

WinWord 97 прекрасно воспиринимал и выполнял макросы, написанные на WordBasic-е... но не все! Как раз [WordBasic].MacroCopy был отключен! Но "родным" языком для версии 97-го года был не WordBasic, а Visual Basic for Application (VBA). А в нем, разумеется, существовали собственные средства для копирования макросов - команда

	Application.OrganizerCopy

Недолго музыка играла, очень недолго. Буквально сразу же Microsoft выпустила заплатку SR1, наглухо зашивающую пасть этой команде. Это произошло так быстро, что русифицированная версия WinWord 97, на которой мы все работаем, вышла в одном флаконе с заплаткой (она сама не встает, ее надо инсталлировать отдельно!).

Поэтому вирусописателям пришлось искать новую дырку. Ей стала пара команд

	Application.VBE.ActiveVBProject.VBComponents.Export ИмяФайла
и
	ActiveDocument.VBProject.VBComponents.Import(ИмяФайла)

Иногда вторая в этой паре команда может быть заменена на что-то вроде

	Host.Codemodule.AddFromFile (ИмяФайла).

Вирусы, внедренные в документ таким образом, не видны при помощи редактора макросов, но прекрасно обаруживаются при помощи FAR-овского плагина DocVIEW.

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

3. Еще одна книжка

Называется она "Энциклопедия компьютерных вирусов" и вышла в издательстве "Солон-Р". Авторы: два А. Парандовских и один Д.Козлов. В свой список литературы я ее уже вставил.

Один из авторов сам написал мне и попросил разрешния использовать материалы из моей статьи "Как Пымать Выря За Хвост". Я не возражал, и поэтому про то, что из этого "использования" получилось, говорить не буду.

Зато упомяну, что легко опознал в тексте книжки огромные куски и фрагменты из "Компьютерной вирусологии" Н.Н. Безрукова, из "Как написать компьютерный вирус" И.Коваля и из все той же "Пишем вирус и антивирус" И.Гульева. Кроме того, при чтении невероятно раздражают следующие обстоятельства:

Эта книжка еще лежит в магазинах, но несмотря на "жареное" название никто ее нахрен не берет. Потому что - макулатура.

4. Осторожно: журналюги!

"О чем бы разговор ни был, он всегда умел
поддержать его: шла ли речь о лошадином заводе;
говорили ли о хороших собаках, и здесь он
сообщал очень дельные замечания;...было ли
рассуждение о бильярдной игре - и в
бильярдной игре он не давал промаха; говорили ли
о добродетели, и о добродетели рассуждал он
очень хорошо, даже со слезами на глазах..."
Н.В. Гоголь. Мертвые души.

Есть такая очень распространенная и очень опасная болезнь - Синдром Ложной Компетентности. Ей даже целый сайт посвящен: http://kumite.com/myths. Основное проявление - это когда солидные и уважаемые (на первый взгляд) люди начинают с видом ученой лошади очень серьезно и веско рассуждать о вещах... в которых абсолютно ничего не смыслят. Страшно, что их читают и им верят.

Вот несколько примеров. Очень надеюсь, что мне в дальнейшем не придется добавлять новые абзацы в этот раздел. Хотя в это верится слабо. :-(

Пример 1. http://www.pcweek.ru/news.asp?id=453&page=2

Леонид Черняк:...Питер Типпетт (Peter Tippett), президент компании ICSA, входящей в состав Gartner Group и анализирующей состояние дел в компьютерной вирусологии, считает, что к появлению нового поколения вирусов нужно отнестись со всей серьезностью. Неблагополучие в области компьютерных вирусов достигает критических пределов. Основанием для такого мнения является обследование более полумиллиона настольных рабочих станций, проведенное ICSA в 1998 г. Оно показало наличие той или иной формы инфекции в 99% ПК. В своих методиках ICSA делит вирусы на три поколения. Первое зародилось в 1986 г., когда на смену теоретическому представлению пришли практически реализованные вирусы Jerusalem, Form и Michelangelo, заражавшие только файлы .exe...

Кошмарные цифры, да? Девяносто девять процентов! Не мудрено, что доверчивые юзеры, прочитав такое, хлопаются в обморок при звуках слова "вирус", а потом выкладывают свои последние доллары за свежие НортонАнтивирусы и ДокторыСоломоны. Тем не менее, уровень "компетентности" автора виден без телескопа. Перечитайте-ка последнюю фразу... Из трех перечисленных вирусов два являются загрузочными, и потому в принципе на заражают "файлы .exe"! Оказывается, уважаемый президент компании ICSA умеет только "президентствовать", и не слишком даже понимает, какими такими "вирусами" его компания занимается. Тем не менее, у него взяли интервью, растиражировали в Америке, потом перевелии на русский, растиражировали в России, кто-то с умильными соплями на глазах уже поверил "известному специалисту"... Грустно. :-(

Пример 2. Http://www.2000-online.ru/current_issue/computer/right.asp

Вирус Норриса.

...Повальная эпидемия сетевого вируса Норриса (другое название - С Internet Worm) в ноябре 1988 года поразила более 6000 компьютерных систем в США (включая NASA Research Institute) и практически парализовала их работу. По причине ошибки в коде вируса он... неограниченно рассылал свои копии по другим компьютерам Сети и таким образом полностью забирал под себя ее ресурсы. Общие убытки от вируса Норриса были оценены в 96 миллионов долларов...

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

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

Пример 3. Http://www.osp.ru/cw/2000/46/036_0.htm

Cара Гордон: ...Вирусописатели - это самое дно особой иерархии компьютерного андеграунда, вершину которой занимают хакеры. Большинство хакеров, даже писавшие вирусы ранее, свысока смотрят на тех, кто этим занимается...

Вот те раз, подумал Штирлиц. Все в точности поставлено с головы на ноги. Или "известная американская специалистка по психологии вирусописателей" слегка трехнутая, или...

Смотрим Http://www.cnews.ru/topnews/2001/05/08/content5.shtml:

...Для того, чтобы данное занятие потеряло свою привлекательность в глазах подростков и молодых людей, им нужно доказать, что это - вовсе не престижное занятие. Кроме того, отношение к вирусописательству, как к преступлению, нужно воспитывать с детства...
Сара Гордон

Оказывается, г-жа Гордон совсем и не ошиблась в первый раз. Это нарочно. Это она просто "солгала во спасение". В ее "творчестве" направо и налево присутствует двойной стандарт. Может быть, романтика вирусописательства действительно в какой-то мере является фальшивой. Так докажи это! Продемонстрируй подлинную романтику, покажи на конкретных примерах, что ловить вирусы интересней, чем распространять их. Что настраивать 1С:Бухгалтерию и торговать гигабайтами-мегагерцами еще круче. Только не надо применять рецепты покойного д-ра Геббельса ("чем чудовищнее ложь, тем охотнее люди в нее верят"). От них - воняет, и не только тленом.

5. Анюткины прелести

Eсть такой вирус - Анна Курникова. Написал его (вернее, сформировал при помощи генератора макровирусов) один 20-летний голландец - Jan de Wit (aka OnTheFly), быстренько раскидал по мировым эхо-конференциям, дождался очередной истерики среди досмерти напуганных пользователей, и побежал сдаваться в полицию. Ну и фиг с ним.

"Шутка юмора" в том, что вирус распространялся в виде аттачей с двойным расширением: AnnaKournikova.JPG.EXE. JPG - это картинка, но EXE все-таки смеется позже. Вот так и подзалетели тысячи сексуально озабоченных недоумков, ожидавших, видимо, увидеть примерно вот такую картинку.

Анюткины сиськи

Они не учли, что такие прелести нахаляву - не бывают. :-)

6. Ода бЗдительности

На mail.chat.ru установили антивирусный фильтр. Прекрасное начинание! Если ко мне пришел по E-mail вирус, предупредите меня! Или даже убейте заразу!

Но провайдеры почему-то решили "осчастливить" пользователей дополнительным "сервисом". Без раздумий убиваются не только вирусы вместе с письмами, но и подозрительные по каким-то причинам вложения. Например, послать в Москву к Касперскому файл со свежепойманой заразой я уже не смогу: chat.ru лучше меня знает, что мне посылать положено, а чего нет.

Доходит до совсем уж анекдотических случаев. Антивирусная компания ДиалогНаука рассылала своим подписчикам по E-mail обновления вирусных баз. Антивирус не смог распознать формата этих вложений, посчитал их "испорченными" (да, кстати, "испорченные" файлы тоже, оказывается, крамола!), ну и в результате получилось вот что.

Пресс-релиз компании Диалог-Наука.

Помните притчу Льва Толстого про мальчика и волков? Сожалеем, что в роли напрасно потревоженных людей оказались некоторые из наших клиентов. Они так и не смогли получить очередное обновление программы Doctor Web... Другой антивирус, проверяющий почту на серверах некоторых провайдеров, не передал файлы, потому что рассылаемые нами исполняемые модули якобы заражены вирусом. Каким именно не уточнялось. Заверяем всех наших клиентов в том, что в рассылках обновлений никаких вирусов не содержалось. Провайдерам советуем более критично относиться к сообщениям программ, используемых на их серверах. Производителям же антивирусов желаем научиться отличать зараженные вирусами файлы от файлов, разбитых на части при формировании многотомных архивов. Не превратитесь в мальчика из грустной притчи, уважаемые коллеги!

Что-то не хочется мне убирать лишнюю букву "З" из заголовка...

7. ШБ МНК или Тренируйте зрение

Помните таблицу:

ШБ

МНК ЫМБШ...

НКИБМШИБ?

Оказывается, ее можно использовать и для тренировки остроты зрения.

Потренируем наши глазки - поучимся искать вирусы невооруженным глазом. Ну... почти невооруженным. Нам понадобится утилита Hacker View by SEN (знаменитый HIEW) версий 6.0 и старше. Исследовать будем PE-файлы, т.е. файлы исполнимых программ для Windows 9X и NT.

  1. Загрузим файл в Hiew, нажмем Enter (чтобы сменить режим отображения на 16-ричный, или, - вторым нажатием, - на режим дизассемблирования), а потом F8 (чтобы отобразить содержимое специфического заголовка программы).
  2. Нам потребуются два числа: EntryPoint RVA (относительный адрес точки входа, на картинке он равен 7000) и Image Base (это базовый адрес, по которому программа будет загружена в память, на картинке это 400000).

  3. Теперь нажмем F6. Появится таблица описания секций программы. Дело в том, что программа состоит из нескольких секций. Вторая колонка в таблице (RVA) - это адрес начала секции в памяти (относительно Image Base). Обычно в здоровых программах точка входа EntryPoint RVA указывает в первую по счету секцию (т.е. должно быть для нашего примера в пределах между 1000 и 2000), и эта секция называется .text или CODE.

  4. Посмотрим, что нас должно насторожить:
    • точка входа лежит в секции с нестандартным именем (в нашем случае она находится между 7000 и бесконечностью, т.е. в секции с именем .vlad);
    • точка входа лежит в секции со cтандартным именем, но эта секция - последняя по счету (т.е., если бы секции .vlad не существовало, а значение EntryPoint указывадо бы внутрь .reloc);
    • точка входа лежит вообще вне всяких секций (например, если для нашего примера EntryPoint меньше 1000);
    • где-то недалеко от дмзассемблированных команд в точке входа (а перейти на нее можно, нажав F5), видна знакомая нам по ДОС-вирусам пара команд:
      	call Next
      Next:
      	pop "регистр"
      

В данном случае присутствуют признаки 1,2 и 4. Пора бить тревогу! (Это был вирус Win95.BOZA)

8. SGWW кирдык

Cамая крупная отечественная группировка вирусописателей наконец-то прекратила свое существование.

Краткая справка для тех, кто не в курсе: Stealth Group World Wide зародилась в середине 90-х годов в Киеве как неформальная организация юных програмистов, умеющих писать вирусы. Она обзавелась своим "органом печати" , - журналом Infected Voice,- и с чисто тимуровской энергией принялась привлекать в свои ряды новых членов - не только талантливых программистов, но и бездарных тусовщиков. В лидеры группы быстро выдвинулся некто LovinGOD. После отъезда LovinGOD-a в Москву группа фактически прекратила свое физическое существование, но в течение нескольких лет сохранялась еще как минимум в двух ипостасях:

  1. как наименование гипотетической группировки, которую LovinGOD неоднократно пытался реанимировать в Москве;
  2. как жупел, который активно использовали журналисты и правоохранительные органы для того, чтобы поддерживать в массах миф о "зловещих российских хакерах". Весной 2001 г. LovinGOD-у окончательно настоиграло мучительно тужиться в бесплодных попытках организовать свой "анархистский Комсомол", и он решил на это дело забить, о чем публично и заявил.

Так дело выглядит со стороны. Если Вы хотите ознакомиться с историей SGWW глазами самого LovinGOD-а, то загляните на http://www.redline.ru/~one, пока она еще существует.

Примечание от весны 2002 г. Тем не менее, сам LovinGod на пенсию опять не вышел. Его новый "проект" претендует уже на мировые масштабы.

9. Первый отечественный вирус

Николай Николаевич Безруков, автор знаменитой Компьютерной Вирусологии", ошибался, когда считал, что первый отечественный вирус был написан в конце 80-х годов XX века и представлял собой переделку импортного оригинала.

На самом деле первый вирус на территории СССР в 1985 г. создал Антон Чижов, известнейший в то время отечественный программист, сотрудник ВЦ АН СССР, автор справочника - Системное программное обепечение ПЭВМ.-М.:Финансы и статистика, 1990.- 415 с.

Вот эта история:

Первый вирус в России, думаю, написал именно я. Но и антивирус мой тоже был одним из первых. Было это примерно в 1985 году.

Я работал тогда в ВЦ Академии наук, там была небольшая группа под руководством Виктора Михайловича Брябрина, занимавшаяся персональными компьютерами. Однажды зовут меня в первый отдел и говорят, что со мной хочет поговорить товарищ из КГБ, курировавший наш вычислительный центр. Этот товарищ начал меня расспрашивать о компьютерных вирусах. "В Советском Союзе, - начал он, - активно развиваются сети передачи данных. В западной прессе появились статьи о компьютерных вирусах. Хотелось бы знать, насколько это все серьезно".

Как программистская задача меня это очень заинтересовало, и я сказал, что попробую разобраться с тем, что это такое. Начал разбираться, нашел разные материалы и тогда взял и попробовал написать первый вирус.

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

Кроме самоуничтожения у моего вируса была специальная функция - он должен был уметь докладывать специальной программе о своем наличии в системе: "Да, я здесь". Я забросил этот вирус в систему и где-то через шесть-семь месяцев начал проверять, куда он успел добраться. По моим оценкам - а я знал довольно много московских организаций, поскольку наша лаборатория была одной из самых первых и, соответственно, одной из самых продвинутых по персональным компьютерам в то время - выходило, что процентов 70 всех компьютеров в Москве были заражены моим вирусом.

Таким образом, вирус распространился довольно быстро и масштабно. Стало понятно, что это очень серьезно, и я тогда написал антивирус. Звался он "Доктор", был очень простой и умел ловить порядка 70 известных мне (в том числе на основе анализа других антивирусных программ) вирусов.

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

"Доктор" потихонечку стал теряться среди новых появлявшихся антивирусов. Он был поделкой, а чтобы развиваться, нужно было строить правильный поточный процесс сопровождения. Мы решили этого не делать, и я нисколько не жалею об этом: был 1988 год, у нас в то время было много других дел.

Антон Чижов

10. ...Лучше AVP-ей и DrWEB-ов...

Если попытаться одним словом передать нынешнее отношение юзеров к вирусам, то слово это будет: паника. Истеричные вопли, выпученные глаза, потерянная обувь, брошенная ручная кладь... Оказаться в такой обезумевшей толпе крайне неприятно, но если сидишь где-нибудь на прочном высоком дереве, все сверху видишь, все понимаешь, то так и тянет временами что-нибудь такое страшное крикнуть, или этакое громкое свистнуть.

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

Идеальное средство для вразумления "компьютерных домомучительниц". :-)

11. Лица с обложки

Я и не ожидал, что так сильно западет в душу читателей "Занимательной Вирусологии" моя "Третьяковская галерея". По крайней мере за два года мне четырежды присылали "абсолютно секретные фотки LovinGod"-а :-)

Трижды это был фотопортрет Д.Н. Лозинского из ДиалогНауки.

Лозинский Лозинский Лозинский

Один раз - фотка Арви Хакера из ГШХ.

Арви Хакер

Кроме того, "совершенно конфиденциально" мне был раскрыт "страшный секрет": настоящее имя LovinGod-а - Крис Касперски, причем он - то ли сын, то ли брат, то ли племянник Е. Касперского. Только поэтому его до сих пор еще не посадили :-)

"Сема! Я так смеялся, что чуть не упал с кровати". Тем не менее, всем, присылавшим фотки и "информацию" - спасибо! :-)

12. Идем копать червей

В наш век молниеносных Интернетовских эпидемий очень важно умение самому справиться с пришедшей по почте и расползшейся по компьютеру заразой. Даже самые навороченные почтовые червяки часто используют для закрепления в системе довольно ограниченный набор приемов.

  1. Копируют свой файл в один из каталогов автозапуска: в C:\Windows\Главное меню\Программы\Автозагрузка или в C:\Windows\System\IOSUBSYS.
  2. Прописывают себя в ключе HKEY_LOCAL_NACHINE\SoftWare\Microsoft\Windows\CurrentVersion\Run системного реестра.

  3. Прописывают себя в одном из "опасных" ключей ini-файлов или в конфигурационных файлах CONFIG.SYS/AUTOEXEC.BAT.

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

[Вернуться к списку] [Комментарии (0)]
deenesitfrplruua