Андрей Bat Зубков
Существует
огромное количество мнений по поводу даты рождения первого компьютерного вируса.
Однако большинство сходится на том, что как таковые вирусы впервые появились в
1986 г. Не стану спорить, но не рассказать о том, что предшествовало 1986 году,
не могу. Итак, предыстория.
Исторически
возникновение вирусов связано с идеей создания самовоспроизводящихся программ -
концепции, уходящей своими корнями в пятидесятые годы. Идея
самовоспроизводящихся механизмов исследовалась еще Джоном фон Нейманом, который
в 1951 г. предложил метод создания таких механизмов.
Таким образом,
предшественниками вирусов были различного рода программы (некоторые из них в
виде игр), принцип работы которых заключался в способности саморазмножаться. Уже
в начале 60-х появилась "Игра для полуночников", в которой несколько
ассемблерных программ, названных "организмами", загружались в память компьютера.
Организмы, созданные одним игроком (т.е. принадлежащие к одному виду), должны
были уничтожать представителей другого вида и захватывать жизненное
пространство. Победителем считался тот игрок, чьи организмы захватывали всю
память или набирали наибольшее количество очков. И уже тогда в описании игры
термин "вирус" применялся к одному из видов организмов.
Приблизительно
в 1970 г. была создана саморазмножающаяся программа для одной из первых
компьютерных сетей - APRAnet. Программа Creeper путешествовала по сети,
обнаруживая свое появление сообщением: "I'M THE CREEPER ... CATCH ME IF YOU CAN".
Затем была
написана программа Rabbit, которая размножалась на трех соединенных между собой
машинах IBM, причем появление новых подзадач вызывало замедление работы, а затем
и полное зависание машин.
Другим
примером вирусоподобных программ была довольно известная игра Animal,
разработанная для
Univac 1108. Суть этой игры состояла в том, что человек задумывал
некоторое животное, и программа, задавая вопросы, пыталась определить, какое
животное загадал человек. Автор предусмотрел в ней возможность саморазмножения.
Когда программа угадывала неправильно, она просила пользователя предложить
вопрос, который позволил бы улучшить ее способности к отгадыванию данного
животного. Запомнив этот вопрос, программа не только модифицировала себя, но и
пыталась переписать свою обновленную (улучшенную) копию в другой каталог. Если
там уже была программа Animal, то она стиралась. В противном случае создавалась
новая копия. Оказалось, что через некоторое время все каталоги файловой системы
содержали копию Animal. Более того, если пользователь переходил с машины на
машину, то он переносил и свой каталог, и в результате во всех каталогах этой
ЭВМ также появлялась Animal. При этом совокупность копий Animal занимала
значительное файловое пространство, что в те времена воспринималось как
проблема.
Все это
происходило на фоне выхода в свет научно-фантастических романов "околовирусного"
толка. Наибольшей популярностью пользовались романы "The Shockware Rider"
Дж.Бруннера (он описал "червей", программы, распространяющиеся по сети, очень
похожие на
вирус Морриса),
"The Adolescence of P-1" Т.Риана (автором был создан образ достаточно жуткого
разумного вируса, занимающегося сбором информации), "Neuromancer" В.Гибсона (где
впервые было введено понятие "киберпространства").
В начале 80-х
уже были написаны труды, посвященные проблемам вирусов, в частности, первая и
весьма примечательная европейская работа "Самовоспроизводящиеся программы"
Й.Крауса. Ее автор - сотрудник кафедры информатики Дортмундского университета -
не только дал достаточно точное определение компьютерных вирусов, но и привел
примеры их листингов.
Вскоре
появился первый, получивший некоторое распространение, бутовый вирус на ПЭВМ
Apple II. Этот вирус, названный Elk Cloner, обнаруживал свое присутствие
сообщением, содержавшим даже небольшое стихотворение. Поскольку винчестеров
тогда еще не было, борьба с ним состояла в использовании защитных наклеек на
дискетах.
В 1982 г., не
без влияния упоминавшегося выше романа Бруннера, сотрудниками исследовательского
центра фирмы
Xerox
была создана программа-червь и проведен ряд экспериментов. Идея, которой
руководствовались авторы, состояла в том, что программа, требующая значительных
вычислительных мощностей, захватывала все простаивающие, но подключенные к сети
ЭВМ, с тем, чтобы, например, ночью использовать максимум ресурсов, а утром,
когда пользователи начинают работать, освобождать их, сохраняя промежуточные
результаты вычислений. Днем программа "перебивалась" бы одной-двумя машинами, а
ночью опять захватывала все свободные вычислительные мощности. В связи с этой
способностью к ночному распространению такую программу правильнее было бы
назвать не червяком, а вампиром. При проведении эксперимента по запуску червяка
в сеть наблюдалось его неконтролируемое распространение и зависание части
зараженных червяком машин. Поскольку эксперимент проводился в локальной сети
Ethernet и некоторые комнаты с включенными машинами следующим утром оказались
закрытыми, копии червя на этих машинах заражали другие машины. К счастью, авторы
предусмотрели такую возможность и послали по сети команду самоуничтожения всем
копиям червяка.
В сентябре
1984 г. публикуется статья
Фреда Коэна, в которой
автор исследует разновидность файлового вируса. Это было фактически второе
"академическое" исследование проблемы вирусов. Статья содержала полезное, хотя и
недостаточно строгое формальное определение вируса и ряд важных соображений о
большой потенциальной опасности компьютерных вирусов, а также относительно того,
что для своего размножения вирусу достаточно обычных операций, реализуемых
файловой системой любой ОС. Коэн описал ряд экспериментов, проделанных на
системе VAX 11/750, работающей под управлением ОС Unix. Вирус был имплантирован
в начало утилиты VD, которая позволяла графически отображать структуру каталогов
диска. В ходе пяти экспериментов пользователю зараженной программы в течение
определенного времени (от 5 до 30 мин.) предоставлялся статус "суперюзера".
Эксперимент показал достаточно высокую скорость размножения вируса (полсекунды
на заражение) и большое количество зараженных файлов. По следам этой статьи в
1984 г. в немецком журнале "Шпигель" появился материал под названием "Тайная
инструкция", вызвавший оживленную дискуссию о целесообразности публикаций по
данной тематике, в которой принял участие и сам Ф.Коэн. Скажем, Джером Лоубел,
советник по безопасности компьютеров фирмы "Honeywell Informations Systems",
возражал против публичного обсуждения данного вопроса. В свою защиту Коэн привел
следующие соображения: "Суть дела заключается в том, что если придумать что-либо
в этом роде под силу мне, то это может также сделать и кто-то другой, а этот
другой может оказаться скверным парнем".
Вот так. Это
лишь то немногое, что происходило до 1986 года |