Купить
 
 
Жанр: Учеба

Большой справочник по компьютерным вирусам

страница №2

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

- 16 -


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

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

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

Следующий текст сначала был записан при помощи функции
COPY операционной системы MS-DOS в файл test.txt, а затем
выведен на экран при помощи TYPE :
C:"TYPE TEST.TXT
Это тест, который показывает, сколько посторонних символов
вставляет некоторый текстовый редактор в чистый ASCII
-текст.
(Dies ist ein Test, der belegt, wie viele Fremdzeichen
manche Textsysteme in einen reinen ASCII-Text einstreuen.)
Такой же текст (на немецком языке) был затем введен при
помощи текстового редактора (WordStar 2000) в документальном
формате и также при помощи TYPE выведен на экран монитора.
C:"TYPE TEST1.TXT

- WS2000 1.00 1IBMGRAPHIC 5 -
- 0 0 - -i
0 0i--^ 13^- -_ 4_- - [ A A


- 17 -


Наглядно видно, что теперь этот текст не может быть
обработан функцией TYPE. Этот эффект можно более подробно
исследовать при помощи отладчика.
Сначала текст, введенный при помощи COPY :

0100 44 69 65 73 20 69 73 74-20 65 69 6E 20 54 65 73
D i e s i s t e i n t e s
0100 74 2C 20 64 65 72 20 62-65 6C 65 67 74 2C 20 77
t , d e r b l e g t , w
0120 69 65 76 69 65 6C 65 20-46 72 65 6D 64 7A 65 69
i e v i e l e F r e m d z e i
0130 63 68 65 6E 20 6D 61 6E-63 68 65 20 54 65 78 74
c h e n m a n c h e T e x t
0140 73 79 73 74 65 6D 65 20-69 6E 20 65 69 6E 65 6E
s y s t e m e i n e i n e n
0150 72 65 69 6E 65 6E 20 41-53 43 49 49 2D 54 65 78
r e i n e n A S C I I - T e x
0160 74 20 65 69 6E 73 74 72-65 75 65 6E 2E 0D 0A 00
t e i n s t r e u e n . . . .

Ясно видно, что текст состоит из ASCII-символов, коды
которых лежат в диапазоне от шестнадцатиричных 20 до шестнадцатиричных
80. Единственные управляющие символы, которые
были использованы,- это 0Dh и 0Ah (возврат каретки и перевод
строки).

Теперь посмотрим текст, введенный при помощи WordStar
2000:
0100 7F 20 57 53 32 30 30 30-FF 31 2E 30 30 FF FF FF
. W S 2 0 0 0 . 1 . 0 0 . . .
0110 FF 20 31 49 42 4D 47 52-41 50 48 49 43 FF FF FF
. 1 I B M G R A P H I C . . .
0120 FF 20 20 20 20 20 20 35-20 7F 0A 7F 1C 20 30 20
. 5 . . . . 0
0130 20 30 1C 7F 0A 7F 69 20-30 20 20 30 69 7F 7F 5E
0 . . . . i 0 0 i . . ^
0140 20 31 33 5E 7F 7F 5F 20-20 34 5F 7F 7F 5B 01 41
1 3 ^ . . _ 4 _ . . [ . A
0150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

- 18 -


0160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
0170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
0180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF 01 41
. . . . . . . . . . . . . . . A
0190 01 06 01 0B 01 10 01 15-01 1A 01 1F 01 24 01 29
. . . . . . . . . . . . . $ . )
01A0 01 2E 01 33 01 38 01 3D-FF FF FF FF FF FF FF FF
. . . 3 . 8 . = . . . . . . . .
01B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
01C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF 5B 7F
. . . . . . . . . . . . . . [ .
01D0 7F 61 37 31 61 7F 7F 5C-31 30 5C 7F 7F 5D 31 30
. a 7 1 a . . \ 1 0 \ . . ] 1 0
01E0 5D 7F 7F 62 31 31 62 7F-7F 65 31 65 7F 7F 66 31
] . . b 1 1 b . . e 1 e . . f 1
01F0 66 7F 7F 67 31 37 7F 7F-76 7F 7F 5B 01 41 01 06
f . . g 1 g . . v . . [ . A . .
0200 01 0B 01 10 01 15 01 1A-01 1F 01 24 01 29 01 2E
. . . . . . . . . . . $ . ) . .
0210 01 33 01 38 01 3D FF FF-FF FF FF FF FF FF FF FF
. 3 . 8 . = . . . . . . . . . .
0220 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
0230 FF FF FF FF FF FF FF FF-FF FF FF FF FF 4B 01 06
. . . . . . . . . . . . . K . .
0240 01 0B 01 10 01 29 FF FF-FF FF FF FF FF FF FF FF
. . . . . ) . . . . . . . . . .
0250 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
0260 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
0270 FF FF FF FF FF FF FF FF-FF FF FF FF 5B 7F 7F 5B
. . . . . . . . . . . . [ . . [
0280 01 4B 01 06 01 0B 01 10-01 29 FF FF FF FF FF FF
. K . . . . . . . ) . . . . . .

- 19 -


0290 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
02A0 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
02B0 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
02C0 01 41 01 06 01 0B 01 10-01 29 FF FF FF FF FF FF
. A . . . . . . . ) . . . . . .
02D0 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
02E0 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
02F0 FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF
0300 5B 7F 44 69 65 73 20 69-73 74 20 65 69 6E 20 54
[ . D i e s i s t e i n T
0310 65 73 74 2C 20 64 65 72-20 62 65 6C 65 67 74 2C
e s t , d e r b e l e g t ,
0320 20 77 69 65 76 69 65 6C-65 20 46 72 65 6D 64 7A
w i e v i e l e F r e m d z
0330 65 69 63 68 65 6E 20 6D-61 6E 63 68 65 20 54 65
e i c h e n m a n c h e T e
0340 78 74 7F 1F 7F 7F 03 7F-73 79 73 74 65 6D 65 20
x t . . . . . . s y s t e m e
0350 69 6E 20 65 69 6E 65 6E-20 72 65 69 6E 65 6E 20
i n e i n e n r e i n e n
0360 41 53 43 49 49 2D 54 65-78 74 20 65 69 6E 73 74
A S C I I - T e x t e i n s t
0370 72 65 75 65 6E 2E 0A 00-00 00 00 00 00 00 00 00
r e u e n . . . . . . . . . . .

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

Однако управляющие символы стоят не только в заголовке,
но и в середине текста, а именно на месте верстки строк
в виде так называемых "мягких разделителей" между "текс-

- 20 -


том" и "системой". Эти управляющие символы в тексте нужны и
важны для удобной обработки текста, однако могут очень мешать
при другом использовании текста.
Тот, кто не очень хорошо разбирается в проблеме обработки
текстов, вероятнее всего, удивится: текст может быть
считан исходным редактором текста, но совершенно непригоден
для передачи данных (в коде ASCII ), так как содержит слишком
много управляющих символов.
Компилятор также ничего не сможет сделать с текстом,
который редактировался в этом режиме. Такие изменения в
текстовых файлах, которые возникают в некоторых программах
уже тогда, когда существующий текст читается текстовым редактором,
а затем опять записывается в память, являются типичными
процедурами обработки в вычислительных системах.
Основываясь на таком способе ввода определенных редакторов
текста, можно разработать редактор, который читает
текстовые файлы и в качестве полезной работы заменяет все
последовательности символов "ue" символами "u". Вероятно,
очень полезно было бы автоматически преобразовывать тексты
от устройств, в которых отсутствует умлаут. В этом случае
из Haueser получится Hauser, из Muel - Mul, а из Quellcode
получится Qullcode ?!?. Этот пример показывает, сколько
опасностей таится в обработке, которую ЭВМ выполняет самостоятельно.
Так, вполне разумно, если ЭВМ самостоятельно из
fuent делает funt, но совершенно бессмысленно, если она из
Quelle делает Qulle. Однако возможности программно управляемой
обработки не ограничиваются массивами данных. Точно
также может обрабатываться объектный код программ. ЭВМ может
также не хватить времени для надежного решения, идет ли
речь о произвольном массиве данных, о программе или о дате.
С тех пор,как стали применяться ЭВМ "фон-Неймановской
структуры" внутри системы, стали принципиально неразличимы
программы и данные. В системах, работающих под управлением
MS-DOS, отличительный признак имеется лишь в имени файла.
Если Вы переименуете файл KUNDEN.DTA в WS.COM, Вы получите
вызываемую программу. (Обратите внимание: вызываемая, а не
исполняемая; если попробовать ее исполнить, наверняка произойдет
сбой системы).
В программах настройки осознанно используется возмож-

- 21 -


ность обрабатывать и изменять программы как данные. Эти
программы настройки могут согласовывать настраиваемую программу
с системным окружением. Для этого пользователь должен
ответить на целенаправленные вопросы программы. Принцип действия
программы настройки заключается в целенаправленном
изменении определенных параметров настраиваемой программы;
адреса этих параметров известны программе настройки. Конечно,
программа настройки для "Турбо Паскаля" не может заново
настроить редактор "WordStar". Однако можно написать программу,
которая будет искать в массовой памяти программу
"WordStar" и, при благоприятном исходе поиска, изменит эту
программу таким образом, что функция "сохранение текста"
будет заменена функцией "стирание текста", что является
классическим примером обработки с неприятными последствиями.

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

К Байт идентификации вируса. Этот байт идентификации
должен говорить о наличии инфекции, чтобы предотвра-
тить повторное инфицирование программы.

VIR Ядро вируса. Ядро вируса содержит подпрограммы и
функции, необходимые для обеспечения размножаемости.

-------------¬
¦----T-----¬ ¦
¦¦ К ¦ VIR ¦ ¦ Программа-вирус
¦L---+------ ¦
L-------------

Если эта программа запускается,то немедленно в доступ-

- 22 -


ной массовой памяти осуществляется поиск прикладных программ.
(Под прикладными программами здесь понимаются те
программы, коды которых программа-вирус должна изменить).
Если такая программа обнаруживается, осуществляется ее проверка
на наличие инфекции. Для этого читается первая часть
найденной программы и проверяется на наличие байта идентификации
"К".Наличие байта идентификации подтверждает наличие
инфекции.Так как уже инфицированная программа не должна
инфицироваться повторно, осуществляется дальнейший поиск
программы без острой инфекции, т.е. без байта идентификации
"К". Эта защита от многократного инфицирования необходима
для того, чтобы вирус не тратил свою "жизненную силу" на
инфицирование уже зараженных программ.
----------------------------------¬
¦ ------------------------------¬ ¦
¦ ¦ Вторая прикладная программа ¦ ¦
¦ L------------------------------ ¦
L----------------------------------
В этом случае речь идет о "второй прикладной программе".
Теперь вирус передается в эту программу; при этом в
начало программы в массовой памяти помещается копия вируса.
Теперь размножение вируса завершено. До сих пор пользователь
мог в лучшем случае обнаружить лишь обращение для
записи к массовой памяти.
----------------------------------------------¬
¦ -----T-----T-----------------------------¬ ¦
¦ ¦ К ¦ VIR ¦ Вторая прикладная программа ¦ ¦
¦ L----+-----+------------------------------ ¦
L----------------------------------------------
Если теперь будет запущена инфицированная вторая прикладная
программа, сначала будет обработана программа вирус,
так как первая команда второй прикладной программы перезаписана.
Теперь вирус размножится описанным выше образом и
внедрится в третью прикладную программу.
После завершения процесса копирования могут возникнуть
серьезные программные ошибки, так как на месте части второй
прикладной программы записаны коды вируса.
Перед запуском инфицированной второй прикладной программы:


- 23 -


--------------------------------------¬
¦ --------------------------------¬ ¦
¦ ¦ Третья прикладная программа ¦ ¦
¦ L-------------------------------- ¦
L--------------------------------------
После запуска инфицированной второй прикладной программы:

------------------------------------------------¬
¦ -----T-----T------------------------------¬ ¦
¦ ¦ К ¦ VIR ¦ Третья прикладная программа ¦ ¦
¦ L----+-----+------------------------------- ¦
L------------------------------------------------
Теперь, после того как описан принцип действия вирусов,
следует еще сказать о программах, которые часто путают
с вирусами.
В первую очередь следовало бы назвать программу-червяк.Речь
идет о программе,которая также размножается, создавая
свои копии.Важнейшее ее отличие от вирусов заключается
в том, что для размножения червяка не требуется
программы-носителя.Червяки "проползают" через все уровни
вычислительной системы без использования программы-носителя.
Второй тип программ, относительно которых можно спорить,
являются они вирусами или нет, это так называемые логические
вирусы. Эти программы не только не изменяют программу-хозяина,
но и полностью уничтожают ее и занимают ее
место. Этого можно достичь, например, простым переименованием:
если А - вирус, а В -прикладная программа, то при переименовании
А в В под именем В будет находиться вирус.

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

1.5 Попытка определения
-------------------------

- 24 -


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

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

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

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

- 25 -


программе.
4. Предотвращение многократной модификации одной и той
же программы за счет распознавания выполненной модификации.
5. Модифицированное программное обеспечение приобретает
свойства, указанные в пп.1-4.

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

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

Математическая модель распространения инфекций известна
уже давно (Н.Т.Дж. Бейли; Математическая теория эпидемий;
Хафнер 1957 ). Хотя в США уже в семидесятых и в начале
восьмидесятых годов появлялись публикации о так называемых
"программах-червяках" и о "вирусах" (Ассоциация по вычислительной
технике. Использование вирусных функций для обеспечения
работы виртуального АПЛ интерпретатора под управлением
пользователя; 1974 и "программы-червяки" - ранние опыты
с распределенными вычислениями; 1982), в ФРГ обсуждение самовоспроизводящегося
программного обеспечения началось
только после появления статьи в Шпигеле в 1984 году.

С появлением публикации в таком влиятельном журнале,
как Шпигель, влиятельные круги уже не могли больше сдерживать
публичное обсуждение проблемы. Как обстояли дела до
этого момента, видно из содержательной публикации Дж. Крауса
из Дортмудского университета 1980/81 (!!) года. Хотя в
этой работе содержатся даже листинги вирусов, она неизвестна
даже многим специалистам. Чем эта работа так примечательна,
будет подробнее пояснено ниже; почему она неизвестна
- хотя появилась за четыре года до работы Коэна,-
объяснить трудно.

- 26 -


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

70-е годы Различные публикации о троянских конях, червяках
и вирусах (например, Гун. Использование функций
вирусов... Ассоциация по вычислительной технике,
1974)
Gunn, Use of Virus Function... ACM, 1974.

1980/81 Дж. Краус
Самовоспроизводящееся программное обеспечение
Дортмундский университет
J.Kraus.Selbstreproduzierende Software.
Universitat Dortmund.

1983-1984 Ф.Коэн
Компьютерные вирусы, теория и эксперименты
Университете Южной Калифорнии
F. Cohen. Computerviruses, Thory and Experiments
University of Southern California

11/84 Шпигель
Скрытая команда
47/84 Отчет по работе Коэна

3/85 ВНР выборочно переводит работу Коэна
Bayrische Hackerpost,c/o Basis
Adalbertstr. 41b, 8000 Munchen 40

3/85 Р. Дирштайн
Компьютерные вирусы
содержит рекомендации по защите от вирусов
R. Dierstain Computerviren
KES, Peter Hohl Verlag

7/86 Р. Дирштайн
Компьютерные вирусы,

- 27 -


Немецкая научно-исследовательская лаборатория
авиации и космонавтики, внутренний отчет IB 562/6
R. Dierstain Computerviren

11/86 Программы-вирусы
Персональные ЭВМ

12/86 Б. Фикс
Дополнительные источники вирусов
Зарегистрированное общество Хаос компьютер клуб
(ССС)
Schwenkestr. 85, 2000 Hamburg 20
Datenschleuder

12/86 Конгресс ССС
Представляются вирусы для персональных ЭВМ

1/87 Эберхард Шенебург
Компьютерные вирусы
Дорниер Пост

2/87 Цифровые картины ужасов
Экономическая неделя

2/87 С. Вернери
Вирусы в персональных ЭВМ
Справочник по защите данных
Pattweg 8,Pulcheim-Dansweiler

2/87 С. Вернери
Обсуждение проблемы вирусов в персональных ЭВМ
Datenschleuder

3/4/87 С. Вернери
Эксперименты с компьютерными вирусами
KES, Peter Hohl Verlag

4/87 Э.Крабель
Вирусы идут

- 28 -


c't Heise Verlag

4/87 Э. Шмидт
Компьютерные вирусы
Computerwoche; CW Publikation

4/87 Mailbox CLINCH
Правовые аспекты компьютерных вирусов
С. Аккерман

4/87 Аппаратные вирусы
Heppy Computer, Markt & Technik

6/87 Х. Шумахер
Страхование
Хандельсблат

7/87 Компьютерные вирусы
64'er
Markt & Technik

9/87 С. Вернери
Новая опасность - компьютерные вирусы
CHIP,Vogel-Verlag

10/87 Программы-вирусы: грозит ли нам компьютерный СПИД
PM-Computer

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

2.1 Гласность? Исследование Фреда Коэна
-----------------------------------------
Работой на тему компьютерных вирусов, привлекшей к себе
наибольшее внимание, несомненно является работа Фреда
Коэна "Компьютерные вирусы, теория и эксперименты". Основой

- 29 -


этой популярности является очень полное и понятное изложение
Коэном темы вирусов, а также результаты практических
исследований на вычислительных системах. В этой главе описываются
основные моменты работы Коэна.
Во введении Коэн пытается познакомить читателя с принципом
действия программ-вирусов. (Его определение вируса,
конечно, нельзя считать полным с научной точки зрения.)
We define a computer 'virus' as a program that can
'infect' other programs by modifying them to include a
possibly evolved copy of itself. With the infection
property, a virus can spread throughout a computer sistem
or network using the authorizations of every user using it
to infect thir programs. Every program that gets infected
may also act as a virus and thus the infection grows".

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


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

Простой вирус V описывается следующим образом:

program virus:=
12345678;

subroutine infect_executeble:=
loop: file = get_random_executable_file;
if first_line_offile=12345678 then goto loop;
prepend virus to file;


- 30 -


subroutine do_damage:=
whatever damage is to be done

subroutine trigger_pulled:=
return true if some condition holds

main programm:=
infect_executable;
if triger_pulled then do_damage;
goto next;
next:

Описание
--------
Подпрограмма "infect_executable" ищет исполняемый файл
и проверяет, содержит ли этот файл идентификатор вируса
"12345678". Наличие идентификатора говорит о присутствии
инфекции и инициирует дальнейший поиск. ПРи отсутствии
идентификатора вирус помещается перед файлом.
Подпрограмма "do_damage" содержит произвольно определяемую
задачу обработки.
Подпрограмма "trigger_pulled" проверяет, выполняется
ли определенное условие. Если выполняется,
"trigger_pulled" становится ИСТИННЫМ.
"main_program" сначала инфицирует здоровую программу,
затем проверяет наличие условия и, при благоприятном исходе
проверки, инициирует задачу обработки.
Коэн описывает здесь уже исключительно коварный вариант
компьютерного вируса, так называемый "спящий вирус", т.
е. вирус, ожидающий наступления инициирующего события. Последующие
авторы работ о вирусах почувствовали, очевидно,
особую симпатию к вирусам этого типа, и почти во всех публикациях
Вы найдете пример вируса, который первого апреля
стирает все данные и программы.
Для Коэна основной риск составляют многопользовательские
системы, так как он пишет: Если V инфицировал одну из
исполняемых программ Е пользователя А, а пользователь А затем
запустил эту программу, V поразит также и файлы пользователя
В.

- 31 -


Коэну принадлежит легенда о положительном вирусе, существование
которого он доказывает при помо

Список страниц

Закладка в соц.сетях

Купить

☏ Заказ рекламы: +380504468872

© Ассоциация электронных библиотек Украины

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