Надеюсь, что Вы уже прочитали "Ошибку резидентного вируса" <здесь должен быть
(C) ее автора; -) >.

Лично  мне  этот  текст понравился, но, к сожалению, уровень...
применяемых приемов программирования, что ли,  несколько  далек
от   современного.   You  can  see  мое  мнение  о  необходимом
техническом  уровне  таких  произведений,  оформленное  в  виде
второй  части  сериала.  К  сожалению,  в  ряде  мест  пришлось
отступить от системной правды в пользу художественной  части...
Вообще-то  подобные  вещи лучше всего писать не по-русски, а на
ассемблере; -) Ну что ж - можете критиковать:

-------------------------------------------------------------------------------

/* (C) 21-04-95, Vladislav Kononenko (2: 465/23. 103@fidonet) */
/*    Описанные    события    не    имеют   ничего   общего   с
действительностью. Всякое совпадение имен, событий  и  названий
программ  с  реально  существующими  или  происшедшими  следует
считать  случайным.  Данный  текст  распространяется   согласно
принципу  "as  is"  -  автор  не  гарантирует сохранение Вашего
психического равновесия после прочтения... Впрочем, вряд ли; -)
*/

 После  того, как Aidstest распознал и уничтожил K-817, в среде
MS-DOS наступило затишье. Юзеры  радовались  жизни,  играли  на
Pentium'е  в  DOOM'а,  UFO и Digger'a, иногда что-то печатали в
Лексиконе...
 А совсем недалеко, в том же городе кто-то сидел за клавиатурой
386SX и упорно писал что-то на асме.



 Новый  вирус  пока  не  имел  названия,  но  лично  его это не
беспокоило. Он привык менять имена, места проживания и  внешний
вид. Вот и сейчас он сидел на каком-то подвернувшемся exe'шнике
в сени густого дерева каталогов апгрейднутого UFO  и  терпеливо
ожидал, когда какому-нибудь глупому юзеру вздумается пострелять
в монстров.
 Наконец где-то рядом щелкнула дверца дисковода. Вирус злорадно
усмехнулся - жизнь юзера, польстившегося на улучшенный  звук  и
уменьшенное   количество  багов,  переставала  быть  пресной  и
однообразной...
 От  размышлений вируса оторвало деликатное покашливание. Рядом
стоял  невысокий  человек  в  сером  костюме  и,  прищурившись,
разглядывал его сквозь стекла очков.
 "Aidstest!  " - сообразил вирус. Юзер, оказывается, попался не
совсем глупый.  Впрочем, это  ему  не  поможет  -  а  так  даже
интереснее.
 -  Не  мог  ли  я Вас где-то видеть? - вежливо поинтересовался
человек в сером костюме. - Кого-то вы мне смутно напоминаете...

 "Еще  бы  не  напоминал"  -  возмутился  в  душе  вирус. Стиль
программирования, как известно, штука стойкая, и даже  несмотря
на  то,  что  в нем не было ни команды из кода K-817, он слегка
смахивал на него. Конечно, когда не изменял внешность.
 -   Не  думаю,  -  вирус  нагло  закрылся  листингом  с  кучей
бессмысленнейших команд типа mov al, al / ror al, cl /  xor  al
/... - Математик я...
 -   Упаковщик,  что  ли?  Не  по  специальности  работаете?  -
полюбопытствовал Aidstest.
 - Ну, не совсем... Но вроде... - усмехнулся вирус. Связываться
с Aidstest'ом на первых этапах внедрения в систему не стоило  -
последствия  могли быть вплоть до low-level format, а он не был
камикадзе, как Халф, который ходил на задания  с  набитыми  TNT
карманами  -  стрелять  в него было делом опасным.  Кстати, его
последние данные заслуживали серьезного внимания... Тут  вируса
сбил  с  мысли Aidstest, который откланялся со словами "приятно
было познакомиться".
 "Надо  же  -  купиться на 5 уровень полиморфности! " - подумал
вирус, провожая  взглядом  удаляющегося  Aidstest'а.  "Впрочем,
давно  уже  ходят  слухи,  что  он  собирается отойти от дел...
Кстати, о делах - полиморфность полиморфностью, а  подстраховка
все  равно  не  помешает...  " Недалеко он видел чугунный люк с
надписью VCPI...
 За  работу!  Вирус  поднялся, подхватив лежавшую рядом толстую
папку с нотами, и отправился искать люк.



 Вирус  отправил  в  люк папку с нотами, задумчиво посмотрел на
то, как она  удачно  разлеглась  рядом  с  толстым  оптокабелем
передачи данных какого-то там уровня секретности, и пнул крышку
на место. Папка - она же тщательно  замаскированное  устройство
подстраховки - сама разберется, что делать.
 Он  огляделся.  Недалеко  мигала  неоновая вывеска бара "Turbo
Pascal".  Туда  как  раз  входил  сильно  потрепанный  мужик  в
пятнистом  комбинезоне  и с АКМ. Вирус вспомнил что-то смешное,
осмотрелся вокруг и с хитрой улыбкой  нырнул  в  бар  вслед  за
автоматчиком.
 В  баре было накурено, хрипло гремела музыка группы "Uses Crt"
и  мигали  лампы  разных  примитивных  видеоэффектов.   Повсюду
толпились прикладные программы...
 Искать  достойного  клиента  не  пришлось:  возле стойки сидел
невероятно  толстый  DOS  Navigator  в  штурманской  фуражке  и
форменном  кителе  с  громадным  количеством нашивок, медалей и
прочих  знаков  отличия,  среди  которых  выделялась  громадная
медаль  с надписью по диагонали "Registered" и каким-то длинным
номером, и что-то втолковывал мрачно слушающим его Лексикону  и
Нортону.  Вирус  с  рассеянным  видом  облокотился на стойку по
соседству с компанией, заказал кружку пива "Two +'s"  и,  делая
вид,  что прихлебывает из кружки (во-первых, он был непьющим, а
во-вторых, терпеть не мог объектов), прислушался к разговору...

 -... заставить, раз сам не хочет! - горячился DOS Navigator. -
У меня учитесь - сначала работаешь за  так,  чтобы  привыкли  и
обойтись  не  могли,  а  потом - даешь официальную регистрацию!
Выкидываешь лозунги через каждые 5 минут - и посмотрим, сколько
продержится!  Некоторые,  правда,  фальшивые  купюры  подсунуть
пытаются, но тут уж смотреть  надо  -  я  тогда  такой  кошачий
концерт устраиваю...
 Нортон  сосредоточился  на  пиве  и  пропускал эти пространные
рассуждения мимо ушей - с папой в Америке, где,  как  известно,
юзеры   богатые   и  непуганые,  он  мог  себе  позволить  жить
свободно... Лексикон мрачно слушал и обдумывал какие-то  планы.
Заметно было, что дальше обдумывания он не пойдет.
 - Точно, только так с ними и надо! - вклинился вирус. - Юзеров
надо в страхе держать! - Свободной от пива  рукой  он  дружески
похлопал Навигатора по спине.
 - Кого держать? - не понял тот.
 -  Этих,  пользователей...  Да  ты  вот  его  спроси!  - Вирус
приглашающе   махнул   пивом   автоматчику.    Тот    мгновенно
сориентировался,  подскочил  и  схватил протянутое пиво с таким
видом, будто не пил несколько лет. Впрочем,  так  оно  и  было.
Вирус  усмехнулся про себя - в кружке пива уже было меньше, чем
LCD.
 - Кто такой? - удивленно осведомился Навигатор.
 -  Anti-Kot  я...  -  Глаза  автоматчика, отхлебнувшего в один
прием примерно всю  кружку,  полезли  на  лоб  и  там  медленно
разъехались в стороны.
 - Ну и интерфейс у тебя... Когда писали-то?
 -  Что  ты  понимаешь,  самый  прогрессивный  интерфейс  среди
антивирусов... был в свое время, - обиделся Anti-Kot. -  Такого
звука ни у кого не было!
 -  А  теперь  как?  -  поинтересовался Лексикон, которому этот
стиль понравился.
 DOS  Navigator, потеряв интерес к беседе, отвернулся к стойке,
обнаружив на спине аккуратно выведенные мелом буквы "MsDos".
 Anti-Kot   поперхнулся   пивом,   схватился  за  автомат  и  с
неразборчивим воплем "я-то думал, что я давно всех... "  всадил
Навигатору в надпись полмагазина.
 Нортон,  как  военный  и  офицер,  сориентировался раньше всех
(кроме вируса, конечно) и нырнул под прикрытие стойки. Лексикон
попытался  сделать  ноги,  но  был замечен и наделен оставшейся
частью  магазина.  Заварушка  только  начиналась   -   запасных
магазинов у Анти-Кота было много...
 Разумеется,  все  это  не  имело  никакого отношения к вирусу,
который в данный момент не торопясь шел прочь от  бара,  слегка
усмехаясь  и  невнимательно  прислушиваясь  к очередям и крикам
посетителей и  персонала.  Он  был  принципиальным  противником
регистрации софта, - кроме незаконной, конечно...



 После  такого  развлечения  можно  было  и поработать всерьез.
Вирус уже почти успел продумать очередную  пакость,  когда  его
отвлекли  две  смутно  видимые  из-за  расстояния  фигуры, явно
двигавшиеся  ему  навстречу.  Присмотревшись   получше,   вирус
метнулся  в  ближайшую  поддиректорию - связываться сразу с AD-
inf'ом и ADinfExt'ом ему не хотелось...
 Прижавшись  к  стене,  он  лихорадочно  шарил по карманам. Где
же?..
 -  Так,  а  тут  у  нас  кто-то  новый...  - Перед ним выросла
затянутая  в  спецназовскую  форму  фигура  ADinf'а.   -   Что,
документы  ищешь?  А  документы  без  надобности,  у  меня свои
списки...
 "Еще  бы  их  не  было" - подумал вирус, наконец нашарив среди
прочих мелочей типа стелс-накидок и антитрассировочных  газовых
гранат безобидную с виду трубку...
 -  А  это  еще  что? - Похоже, ADinf наконец отыскал в списках
место, соответствующее этой директории. - Сюда! Тут ви...
 Вирус мгновенно поднес трубку ко рту, и игла с гипнонаркотиком
воткнулась точно в сонную артерию ADinf'а.
 -  Эй!  Что там у тебя? - донесся крик ADinfExt'а. - Помощь не
нужна?
 -  Все  благополучно, - подсказал вирус. - Проверяй дальше. Да
построже, - он с трудом сдержал усмешку, подталкивая ADinf'а  к
выходу в директорию уровнем выше.
 -  Все... благополучно... - повторил ADinf и зашагал к выходу.

 Вирус  слегка  расслабился  -  это был действительно серьезный
противник. Но для  отдыха  не  было  времени.  Подавив  желание
немного  поразвлекаться  с  видеофонтами,  он  открыл  отмычкой
ближайшую дверь с надписью "Int 13h. Служебный вход! Только для
квалифицированного   персонала!   "  и  проскользнул  внутрь...
Разумеется, поставить  на  место  fn  02/03  более  современные
0Ah/0Bh  не  было  чем-то  новым  и оригинальным, но юзеров это
порядком удивляло.



 Сидя  на  каком-то  подвернувшемся  eхешнике,  вирус  отдыхал.
Миссия была  практически  выполнена.  Можно  было  отправляться
дальше, распространяясь по всей стране, вгоняя в дрожь юзеров и
вызывая почтительное уважение системщиков.
 Он  уже почти продумал финальный видеоэффект, когда его отвлек
какой-то  шум  за  спиной.  Как   оказалось,   сзади   к   нему
приближались трое чем-то неуловимо похожих личностей:
 Небритый  автоматчик  в пятнистом комбинезоне, с забинтованной
головой и несколько асимметричным фейсом. Ночь в баре  явно  не
пошла Anti-Kot'у впрок.
 Невысокий  человек в круглых очках, сером костюме и с огромным
револьвером.  Хотя Aidstest и собирался уходить в отставку,  он
все еще был боеспособен.
 И какая-то неизвестная вирусу личность... впрочем, неизвестная
ли? Именно о нем говорилось в последнем сообщении Халфа.
 Третьим был человек в белом докторском халате, марлевой маске,
шапочке и  с  солидного  размера  саквояжем,  на  котором  было
крупными буквами написано "Dr.  WEB". Как раз в этот момент он,
шаря по карманам, бормотал: "Где же я его  видел?  "  -  причем
смотрел он явно на вируса.
 Вирус   попытался   применить  стандартный  прием,  закрывшись
листингом,  но  доктор  аккуратно  отодвинул  мешающую   обзору
громадную пачку бумаги в сторону и уставился на него в упор.
 - Молодой человек, вы где, собственно, сидите?
 "Глупый вопрос. Но что-то ответить надо... "
 - Э-э... Работа у меня такая... Упаковщик я, - неудачно соврал
вирус.
 -  Что-то  не  припоминаю  я  упаковщика с такой внешностью...
Позвольте-ка...  - доктор наконец извлек из  какого-то  кармана
распечатку с заголовком "New viruses". - Ребята! Вирус!!!
 "Провал!  " - Artificial Intelligence вируса мгновенно перешел
в режим противодействия антивирусу. Он выхватил из  внутреннего
кармана  стелс-накидку,  и  выстрелы  Anti-Kot'а  и  Aidstest'а
пришлись в пустое место, откуда  только  что  метнулась  за  их
спины смутная тень.
 -   Где   он?  -  Anti-Kot  вставил  новый  магазин  и  нервно
осматривался. Вирус  у  него  за  спиной  неслышно  хихикнул  и
постарался  пнуть  его так, чтобы пинок казался направленным со
стороны Aidstest'а, пригнувшегося рядом и отчаянно  пытающегося
обнаружить противника.
 Автоматчик   резко  обернулся  -  и  его  ожидания  более  чем
оправдались: на спине  Aidstest'а  отчетливо  виднелись  широко
известные 5 букв...
 Автоматная  очередь  слилась с криком "Предатель! " и грохотом
старого   безотказного   кольта   -   все-таки   Aidstest   был
профессионалом...
 Оставшийся  в одиночестве доктор сорвал шапочку, и сверкнувшее
на его лбу зеркало высветило возле двух поверженных антивирусов
полупрозрачную  фигуру  вируса. Тот резко обернулся, выхватывая
из  кармана  что-то  прямоугольное,  и   успел   увидеть,   как
пригнувшийся доктор выдернул из-под халата "Ингрэм"...
 Несколько десятков пуль с высокой начальной скоростью прервали
его недолгое, но насыщенное существование.

                                     ---

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



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

                                     ---

 -  Ты  смотри,  какой  живучий! - Это было первым, что услышал
воскресший  вирус.  Над  ним  стоял  доктор  с   "Ингрэмом"   и
внимательно его рассматривал.
 -  Стараюсь,  - привычно усмехнулся вирус, легко поднимаясь на
ноги.  Теперь  они  стояли  друг  против  друга  -  два  вечных
противника...
 - Неплохая реализация... Однако я вынужден тебя уничтожить. На
этот раз ошибка недопустима.
 Человек в белом халате засунул "Ингрэм" куда-то в недра своего
одеяния, распахнул саквояж, извлек оттуда внушительных размеров
гранатомет и тщательно прицелился.
 -   Это  еще  одна  твоя  ошибка,  -  улыбаясь,  вирус  достал
портативную рацию и нажал отдельно расположенную кнопку...
 Из  люков  VCPI ударили фиолетовые лучи, нацеленные на вируса.
Это было его самым последним и  наиболее  секретным  оружием  -
первый   полиморф-генератор   уровня   7,   реализующий  полную
полиморфность всего вируса. Громадная работа  по  его  созданию
была  завершена  совсем  недавно,  и сейчас генератор полностью
оправдывал возложенные на него ожидания...
 Фигура вируса заколебалась, как отражение в воде, преобразуясь
в сверкающее фиолетовыми вспышками облако. Выпущенная  точно  в
его  центр  граната прошла насквозь, не нанеся ущерба, и снесла
несколько поддиректорий  позади  (когда-то  такое  уже  было  -
промелькнуло в AI вируса)...
 -  I'll  be back, - успел проинформировать вирус, окончательно
преобразуясь в облако. Облако взмыло вверх  и  ушло  куда-то  в
сторону   кварталов  рабочих  утилит,  по  пути  поразив  лучом
паспортные архивы ADinf'а...



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

-------------------------------------------------------------------------------

To be continued? Maybe...

 Кажется,   сейчас   стало   традицией   объяснять,  как  можно
поддержать автора данного начинания? Ну что ж... Если вы прочли
и  вам  так  понравилось, что вы хотите мне чем-то помочь - мой
FIDO-адрес есть в начале  текста.  Впрочем,  вряд  ли  я  стану
писать продолжение - нет времени...
 Если  кому-то просто хочется поговорить про вирусы - пишите по
тому же адресу...  А еще я иногда пишу антивирусы... Впрочем, в
последнее  время  редко.  Надоели  примитивные вариации на тему
boot и нерезидентных com-вирусов...

  |\___/|
       /
 ( ` ~_\          Foxy
@__/^

Популярность: 28, Last-modified: Mon, 02 Jun 1997 07:03:33 GMT