Этот отчет также основан - по крайней мере все, что касает-
ся технических деталей - на исследованиях автора. Здесь
впервые был публично показан демонстрационный вирус для
операционной системы MS-DOS.
Вскоре после этого - в марте - появился "Компьютерво-
хе" с новым, основанным на переводе и комментариях Дирштай-
на, обсуждением работы Ф. Коэна.
В апреле 1987 было весело. "Хеппи компьютер" сообщил
об аппаратном вирусе (вирусе, который имитирует программа-
тор ЭППЗУ и повреждает ЭВМ). Автор получил от обеспокоенных
читателей множество запросов по этой статье. Правда, тот,
кто потрудился и ввел напечатанный в статье фильтр против
вируса, избавил себя от вопросов. Программа выводит: "Тот,
кто верит апрельским шуткам и не смеется над ними..." и т.д.
В апреле c't также почувствовал, что созрел для статьи
на тему вирусов. В этой статье Э.Крабель предостерегает от
злых-злых хакеров. Цитата: "Здесь я хотел бы предупредить
всех хакеров, обладающих высокой квалификацией и завидным
терпением,необходимым для разработки таких программ. Если
вирусы умышленно или не умышленно выйдут из под контроля,
они могут причинить большой ущерб."
Что можно сказать об авторе, который после такого выс-
казывания приводит распечатку вируса с таким комментарием:
"Только бессовестный гангстер будет набивать эту программу."
Каждый читатель может иметь свое собственное мнение.
Нельзя надежно предостеречься от людей, которые рекомендуют
использовать программы-вирусы в качестве защиты от вирусов,
предупреждая при этом, что при использовании этой защиты
все остальные программы работать не смогут.
В качестве предпоследней работы следует кратко упомя-
- 47 -
нуть статью из 64r(7/87), которая указывает на распростра-
нение программ-вирусов на ЭВМ С64.
В заключение следует остановиться на двух телевизион-
ных отчетах по теме "вирусы". Первым является отчет WDR
Компьютерклабс, вышедший весной 1986 года. Под конец пере-
дачи коснулись темы вирусов. Ведущий продемонстрировал
действие вируса - хотя из распечатки видно, что на экране
должна появиться надпись "WDR тест" - на экран выводится
надпись "WDR вирус". Ведущий, который, очевидно, был чрез-
вычайно доволен этой демонстрацией, - в конце концов, он
сам написал вирус на Бейсике, сияя, пояснил, что причиной
такого поведения программы явилось наличие в видимой распе-
чатке Бейсик-программы некоторых невидимых операторов. Де-
монстрация вируса для ЭВМ Apple - написанная уже не самим
ведущим - прошла несколько интереснее, хотя тоже не показа-
ла ничего существенного. Единственным просветом в передаче
был Ф. Хофмайстер (см. 10.), который, правда, ставил весьма
банальные вопросы.
Второй отчет по этой теме, сделанный NDR,был гораздо
более информативен. Здесь высказались такие деятели, как
Глисс, Брунштайн и Вернери.
Глисс (редактор "Датеншутц-бератер"):
"Программы-вирусы для ЭВМ представляют собой, пожалуй,
самый грустный вид компьютерного саботажа, который мне
встречался."
Вернери (Хаос Компьютер Клаб, Гамбург):
"До сих пор промышленность и торговля не предоставляет
никакой информации о грозящей опасности; пользователи ЭВМ
не в курсе дела и совершенно не представляют, какая опас-
ность им грозит."
Брунштайн (профессор информатики, Гамбургский универ-
ситет):
"В то время как в коммерческих вычислительных центрах
ущерб весьма ощутимый и при известных условиях может быть
выражен в марках и пфеннингах, ущерб в вычислительных цент-
рах высшей школы скорее не материален."
- 48 -
Следуют ссылки на ВНР, ССС и "Датеншутц-бератер", а
также на демонстрационный вирус. Все это завершается крат-
ким описанием результатов исследований автора. В заключении
передачи было сказано:
"Строгий контроль доступа ... является единственной
мерой защиты, известной в настоящее время."
Бесполезной, если не очень опасной, следует считать
ссылку на возможное вмешательство вирусов в работу ЭВМ, за-
нятых в переписи населения 1987 года.
Выводы
ДДДДДД
В публикациях специальных журналов также очень трудно
отделить плевелы от пшеницы. Большая часть публикаций сво-
дит всю проблему к хакерам. Причина этого, вероятно, заклю-
чается в том, что на хакеров еще не действуют различные ог-
раничения, которые мешают работать многим уважаемым
исследовательским институтам. Все-таки публикация работ
Дирштайна, которого никак нельзя отнести к хакерам, являет-
ся вехой на пути к всеобщей информированности.
3. Чем опасны компьютерные вирусы?
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
Обработка данных и программ известна с тех пор, как
известны ЭВМ. Почему же программы-вирусы привлекли такое
пристальное внимание? Возможно, немалую роль в этом сыграло
новое название этих программ. Словотворчество специалистов
по информатике как раз совпало с публичным обсуждением проб-
лемы СПИДа.Обыватель всегда пугается если машина становится
похожей на человека, а многих, наверняка, потрясло вторжение
машин - ЭВМ - в типично человеческую область, в область мыш-
ления. ТО, что ЭВМ может к тому же поражаться вирусами, еще
более приблизило машину к Гомо Сапиенс.
Главная опасность вирулентных программных кодов заклю-
чается в том, что программы-вирусы начинают жить собствен-
ной жизнью, практически не зависящей от разработчика прог-
раммы, после первого же размножения. Так же, как в цепной
- 49 -
реакции в ядерном реакторе, запущенный процесс очень трудно
остановить. Однако к этому добавляется еще один момент. В
то время, как до сих пор для внесения целенаправленных из-
менений в систему необходимо было подробнейшее знание сис-
темы для доступа к ЭВМ в течение длительного времени, с ис-
пользованием вирулентных кодов эта задача выполняется очень
просто.
Пример:
А хочет навредить В, сделав непригодными к использова-
нию все данные на ЭВМ В. Разумеется, это возможно и без ис-
пользования вирулентных кодов, что и практикуется; для это-
го вводится резидентная в памяти программа, задачей которой
является стирание массовой памяти в определенный момент.
(Такие "шутки" часто встречаются в программном обеспечении,
полученном из сомнительных источников.) Здесь, однако, с
одной стороны, существует "опасность", что эту резидентную
в памяти программу обнаружат и удалят из ЭВМ, с другой сто-
роны, даже безупречное выполнение этой программы не очень
затрудняет В, так как поврежденные данные могут быть восс-
тановлены по резервной копии.
При использовании вируса опасность разоблачения А су-
щественно уменьшается.
Вирус размножается в вычислительных системах и за ко-
роткое время заражает все программы. Однако зараженная
программа остается работоспособной. В качестве одной из за-
дач обработки вирус помещает в нее функцию криптографичес-
кой шифровки всех данных. Так как во всех программах, пора-
женных вирусом, имеется алгоритм расшифровки, данные могут
быть приведены в читаемую форму, и все работы могут нор-
мально выполняться. Это состояние продолжается до тех пор,
пока все данные В (в том числе и резервные копии) не будут
заменены без без его ведома на зашифрованные.
Если теперь, например, при наступлении определенной
даты, имеющиеся инфицированное программное обеспечение В
будет стерто, то теперь не только массивы данных, но и ре-
зервные копии станут бесполезными, так как зашифрованные
данные могут обрабатываться только инфицированными програм-
мами.
- 50 -
Это только один пример, демонстрирующий опасность ви-
рулентного программного обеспечения. Так как программист
вируса при выборе конкретной задачи обработки подчиняется
лишь ограничениям используемой вычислительной системы, мож-
но все задачи, выполняемые в этой системе, объединить в
один вирус. Однако одно это обстоятельство не объясняет по-
тенциальную опасность компьютерных вирусов. К нему добавля-
ется еще чрезмерная скорость распространения - компьютерные
вирусы "размножаются", как австралийские кролики"(РМ Компь-
ютерхефт).
Немного вычислений:
В основу вычислений положен вирус, описанный в 1.4.
При каждом запуске инфицированной программы этот вирус соз-
дает новую копию вируса. Т.е. после первого запуска сущест-
вуют уже две версии, одна из которых является оригиналом.
Каждая из этих двух программ при запуске также создает но-
вую копию вируса. Таким образом, в системе, инфицированной
этим вирусом, имеется столько вирусов, сколько раз запуска-
лись инфицированные программы.
Вычислительная система с к программами + программа-вирус
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
В этом случае теоретически необходимо инициировать (к+1)
различных процессов запуска, чтобы вирус наверняка запус-
тился один раз; статистическая вероятность равна 1/(к+1).
После запуска (к+1) различных программ в системе нахо-
дится два вируса; теперь необходимо лишь к+1-1 различных
процессов запуска, и статистическая вероятность возрастает
до 2/(к+1). Это означает, что теперь после к+1 различных
процессов запуска в системе будет не менее четырех вирусов,
и вероятность запуска инфицированной программы равна теперь
4/(к+1).
Эти вычисления относятся к "идеальной" системе, в ко-
торой все имеющиеся программы обрабатываются одинаково,
т.е. вызываются одинаково часто. Конечно, такие системы
встречаются редко.
Программист вируса всегда стремится обеспечить опти-
мальное вхождение в систему своему вирусу. Вирус может,
например, стремиться сначала внедриться в часто используе-
- 51 -
мые программы. Другая возможность заключается в том, чтобы
многократно друг за другом запускать инфицированные прог-
раммы, чтобы повысить таким образом степень заражения. В
этом случае, однако, необходим непосредственный доступ к
ЭВМ.
Конечно, вирусу не обязательно довольствоваться лишь
одним инфицированием при вызове. Если вирус запрограммиро-
ван так, чтобы при вызове инфицировать ровно четыре прог-
раммы, расчеты будут выглядеть несколько иначе.
Вычислительная система с к программами + программа-ви-
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
рус (создает четыре копии)
ДДДДДДДДДДДДДДДДДДДДДДДДДД
Здесь также теоретически необходимо инициировать (к+1)
различных процессов запуска, чтобы вирус наверняка запус-
тился один раз; статистическая вероятность равна 1/(к+1).
После запуска (к+1) различных программ теперь в систе-
ме будет уже пять вирусов (оригинал и четыре копии), теперь
необходимы лишь (к+1-4) различных процессов запуска, и
статистическая вероятность увеличится до 5/(к+1). Это озна-
чает, что теперь после (к+1) различных процессов запуска в
системе будет не менее 25 вирусов, а вероятность запуска
инфицированной программы будет не менее 25/(к+1). Фактичес-
ки вероятность увеличивается еще больше. Решающей является
также последовательность, в которой программы запускаются.
Если в качестве первой программы запущен вирус, вероятность
вызова инфицированной программы при следующем вызове су-
щественно выше, так как уже созданы новые четыре вируса.
График для вируса с простым размножением выглядит сле-
дующим образом:
Ъ¬
¦А¬
¦ АД¬
- 52 -
¦ АДДДДД¬
¦ АДДДДДДДДДДДДДДДДД¬
¦ АДДДДДДДДДДДДДДДДДД¬
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
Для вируса с четырехкратным размножением все происхо-
дит значительно быстрее:
Ъ¬
¦АДДДД¬
¦ АДДДДДДДДДДДДДДДДДДДДДДД¬