Первые самовоспроизводящиеся программы Основы теории самовоспроизводящихся механизмов заложил американец венгерского происхождения Джон фон Нейман, который в 1951 году предложил метод создания таких механизмов. Первой публикацией, посвящённой созданию самовоспроизводящихся систем, является статья Л. С. Пенроуз в соавторстве со своим отцом, нобелевским лауреатом по физике Р. Пенроузом, о самовоспроизводящихся механических структурах, опубликованная в 1957 году американским журналом NaturePenrose L. S., Penrose R. A Self-reproducing Analogue Nature, 4571, p. 1183, . В этой статье, наряду с примерами чисто механических конструкций, была приведена некая двумерная модель подобных структур, способных к активации, захвату и освобождению. По материалам этой статьи Ф. Ж. Шталь (F. G. Stahl) запрограммировал на машинном языке ЭВМ IBM 650 биокибернетическую модель, в которой существа двигались, питаясь ненулевыми словами. При поедании некоторого числа символов существо размножалось, причём дочерние механизмы могли мутировать. Если кибернетическое существо двигалось определённое время без питания, оно погибало.

В 1961 году В. А. Высотский, Дуглас Макилрой и из фирмы Bell Labs (США) изобрели необычную игру «Дарвин», в которой несколько ассемблерных программ, названных «организмами», загружались в память компьютера. Организмы, созданные одним игроком (то есть принадлежащие к одному виду), должны были уничтожать представителей другого вида и захватывать жизненное пространство. Победителем считался тот игрок, чьи организмы захватывали всю память или набирали наибольшее количество очковMcIlroy et al. Darwin, a Game of Survival of the Fittest among Programs .

В феврале 1980 года студент Дортмундского университета Юрген Краус подготовил дипломную работу по теме «Самовоспроизводящиеся программы»Selbstreproduktion bei programmen , в которой помимо теории приводились так же и листинги строго самовоспроизводящихся программ (которые вирусами на самом деле не являются) для компьютера Siemens.

Первые вирусы Появление первых компьютерных вирусов зачастую ошибочно относят к 1970-м и даже 1960-м годам. Обычно упоминаются как «вирусы» такие программы, как ANIMAL, Creeper, Cookie Monster и Xerox worm.

ELK CLONER

В 1981 году Ричард Скрента написал один из первых загрузочных вирусов для ПЭВМ Apple II — ELK CLONER. Он обнаруживал своё присутствие сообщением, содержащим небольшое стихотворение: ELK CLONER: THE PROGRAM WITH A PERSONALITY IT WILL GET ON ALL YOUR DISKS IT WILL INFILTRATE YOUR CHIPS YES, IT'S CLONER IT WILL STICK TO YOU LIKE GLUE IT WILL MODIFY RAM, TOO SEND IN THE CLONER!

Джо Деллинджер Другие вирусы для Apple II были созданы студентом Техасского университета A&M Джо Деллинджером в 1981 году. Они были рассчитаны на операционную систему Apple DOS 3.3 для этой ПЭВМ. Вторая версия этого вируса «ускользнула» от автора и начала распространяться по университету. Ошибка в вирусе вызывала подавление графики популярной игры под названием CONGO, и в течение нескольких недель все («пиратские») копии этой игры перестали работать. Для исправления ситуации автор запустил новый, исправленный вирус, предназначенный для «замещения» предыдущей версии. Обнаружить вирус можно было по наличию в памяти счётчика заражений: «(GEN 0000000 TAMU)», по смещению $B6E8, или в конце нулевого сектора заражённого диска.

Статья Фреда Коэна В сентябре 1984 года была опубликована статья Ф. Коэна«Computer Viruses — Theory and Experiments» , в которой автор исследовал разновидность файлового вируса. Это первое академическое исследование проблемы вирусов. Термин «вирус» был предложен научным руководителем Коэна Леном Эдлманом, однако именно Коэна принято считать автором термина «компьютерный вирус».

Грязная дюжина В 1985 году Том Нефф () начал распространять по различным BBS список «Грязная дюжина — список опасных загружаемых программ» (), в котором были перечислены известные на тот момент программы-вандалы. В дальнейшем этот список, включающий большинство выявленных троянских программ и «взломанные» или переименованные копии коммерческого программного обеспечения для MS-DOS, стал широко известен под кратким названием «грязная дюжина» ().

Первые антивирусы Первые антивирусные утилиты появились зимой 1984 года. Энди Хопкинс () написал программы CHK4BOMB и BOMBSQAD. CHK4BOMB позволяла проанализировать текст загрузочного модуля и выявляла все текстовые сообщения и «подозрительные» участки кода (команды прямой записи на диск и др.). Благодаря своей простоте (фактически использовался только контекстный поиск) и эффективности CHK4BOMB получила значительную популярность. Программа BOMBSQAD.COM перехватывает операции записи и форматирования, выполняемые через BIOS. При выявлении запрещённой операции можно разрешить её выполнение.

Первые вирусные эпидемии Очередным этапом развития вирусов считается 1987 год. К этому моменту получили широкое распространение сравнительно дешёвые компьютеры IBM PC, что привело к резкому увеличению масштаба заражения компьютерными вирусами. Именно в 1987 вспыхнули сразу три крупные эпидемии компьютерных вирусов.

Brain и Jerusalem

Первая эпидемия 1987 года была вызвана вирусом Brain (от англ. «мозг»), который был разработан братьями Амджатом и Базитом Алви в 1986 и был обнаружен летом 1987. По данным McAfee, вирус заразил только в США более 18 тысяч компьютеров. Программа должна была наказать местных пиратов, ворующих программное обеспечение у их фирмы. В программе значились имена, адрес и телефоны братьев. Однако неожиданно для всех The Brain вышел за границы Пакистана и заразил тысячи компьютеров по всему миру. Вирус Brain являлся также и первым стелс-вирусом — при попытке чтения заражённого сектора он «подставлял» его незаражённый оригинал.

В пятницу 13 мая 1988 сразу несколько фирм и университетов нескольких стран мира «познакомились» с вирусом Jerusalem — в этот день вирус уничтожал файлы при их запуске. Это, пожалуй, один из первых MS-DOS-вирусов, ставший причиной настоящей пандемии — сообщения о заражённых компьютерах поступали из Европы, Америки и Ближнего Востока.

Червь Морриса

В 1988 году Робертом Моррисом-младшим был создан первый массовый сетевой червь. 60 000-байтная программа разрабатывалась с расчётом на поражение операционных систем UNIX Berkeley 4.3. Вирус изначально разрабатывался как безвредный и имел целью лишь скрытно проникнуть в вычислительные системы, связанные сетью ARPANET, и остаться там необнаруженным. Вирусная программа включала компоненты, позволяющие раскрывать пароли, имеющиеся в инфицированной системе, что, в свою очередь, позволяло программе маскироваться под задачу легальных пользователей системы, на самом деле занимаясь размножением и рассылкой копий. Вирус не остался скрытым и полностью безопасным, как задумывал автор, в силу незначительных ошибок, допущенных при разработке, которые привели к стремительному неуправляемому саморазмножению вируса.

По самым скромным оценкам инцидент с червём Морриса стоил свыше 8 миллионов часов потери доступа и свыше миллиона часов прямых потерь на восстановление работоспособности систем. Общая стоимость этих затрат оценивается в 96 миллионов долларов (в эту сумму, также, не совсем обосновано, включены затраты по доработке операционной системы). Ущерб был бы гораздо больше, если бы вирус изначально создавался с разрушительными целями.

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

4 мая 1990 года суд присяжных признал Морриса виновным. Он был приговорён к условному заключению сроком на три года, 400 часам общественных работ и штрафу размером 10 тыс. долларов.

DATACRIME и AIDS

В 1989 году широкое распространение получили вирусы DATACRIME, которые начиная с 13 октября и до конца года разрушали файловую систему, а до этой даты просто размножались. Эта серия компьютерных вирусов начала распространяться в Нидерландах, США и Японии в начале 1989 года и к сентябрю поразила около 100 тысяч ПЭВМ только в Нидерландах (что составило около 10 % от их общего количества в стране). Даже фирма IBM отреагировала на эту угрозу, выпустив свой детектор VIRSCAN, позволяющий искать характерные для того или иного вируса строки (сигнатуры) в файловой системе. Набор сигнатур мог дополняться и изменяться пользователем.

В 1989 году появился первый «троянский конь» AIDSGeorge Smith. The Original Anti-Piracy Hack SecurityFocus, 12 августа 2002. Вирус делал недоступной всю информацию на жёстком диске и высвечивал на экране лишь одну надпись: «Пришлите чек на $189 на такой-то адрес». Автор программы был арестован в момент обналичивания чека и осуждён за вымогательство.

Также был создан первый вирус, противодействующий антивирусному программному обеспечению — The Dark Avenger. Он заражал новые файлы, пока антивирусная программа проверяла жёсткий диск компьютера.

Глобализация проблемы вирусов Начиная с 1990 года проблема вирусов начинает принимать глобальный размах.

В начале года вышел первый полиморфный вирус — Chameleon. Данную технологию быстро взяли на вооружение, что, в сочетании со стелс-технологией (Stealth) и бронированием (Armored), позволило новым вирусам успешно противостоять существующим антивирусным пакетам. Во второй половине 1990 года появились два стелс-вируса — Frodo и Whale. Оба вируса использовали крайне сложные стелс-алгоритмы, а 9-килобайтный Whale к тому же применял несколько уровней шифровки и антиотладочных приёмов.

В Болгарии открылась первая в мире специализированная BBS, с которой каждый желающий мог скачать свежий вирус. Начали открываться конференции Usenet по вопросам написания вирусов. В этом же году вышла «Маленькая чёрная книжка о компьютерных вирусах» Марка Людвига.

На проблему противостояния вирусам были вынуждены обратить внимание крупные компании — вышел Symantec Norton Antivirus.

Начало 1991 года отмечено массовой эпидемией полиморфного загрузочного вируса Tequila. Летом 1991 появился первый link-вирус, который сразу же вызвал эпидемию.

1992 год известен как год появления первых конструкторов вирусов для PC — VCL (для Amiga конструкторы существовали и ранее), а также готовых полиморфных модулей (MtE, DAME и TPE) и модулей шифрования. Начиная с этого момента, каждый программист мог легко добавить функции шифрования к своему вирусу. Кроме того, в конце 1992 появился первый вирус для Windows 3.1 — WinVir.

В 1993 году появилось больше вирусов, использующих необычные способы заражения файлов, проникновения в систему и т. д. Основные примеры: PMBS, работающий в защищённом режиме процессора Intel 80386; Shadowgard и Carbuncle, значительно расширившие диапазон алгоритмов компаньон-вирусов; Cruncher, использовавший принципиально новые приёмы сокрытия своего кода в заражённых файлах.

Выходят новые версии вирусных генераторов, а также появляются новые (PC-MPC и G2). Счёт известных вирусов уже идёт на тысячи. Антивирусные компании разрабатывают ряд эффективных алгоритмов для борьбы с полиморфными вирусами, однако сталкиваются с проблемой ложных срабатываний.

В начале 1994 года в Великобритании появились два крайне сложных полиморфик-вируса — SMEG.Pathogen и SMEG.Queeg. Автор вирусов помещал заражённые файлы на станции BBS, что стало причиной настоящей эпидемии и паники в средствах массовой информации. Автор вируса был арестован. В январе 1994 года появился Shifter — первый вирус, заражающий объектные модули (OBJ-файлы). Весной 1994 был обнаружено SrcVir, семейство вирусов, заражающих исходные тексты программ (C и Pascal). В июне 1994 года началась эпидемия OneHalf.