Для данных, записанных на дискету, компьютер — это такой же рай, который гудит от работы, как и клеточное ядро, где дуплицируется ДНК. Компьютеры и связанные с ними дисководы и устройства для считывания с магнитной ленты спроектированы с расчетом на высокую точность. Как и в случае с молекулами ДНК, намагниченные байты не в буквальном смысле “хотят”, чтобы их точно скопировали. Тем не менее, можно написать компьютерную программу, которая будет осуществлять поэтапную самодупликацию. Причем такая программа может не только дуплицироваться в пределах одного компьютера, но и распространяться на другие компьютеры. Компьютеры хорошо умеют копировать байты информации и так хорошо и точно выполняют инструкции, записанные в этих байтах, что могут стать легкой добычей для самореплицирующихся программ. Они легко подвержены диверсиям со стороны программ-паразитов. Любой циник, знакомый с теорией эгоистичных генов и мемов, понял бы, что современные персональные компьютеры с их беспорядочными связями через дискеты и по электронной почте просто напрашиваются на неприятности. В нынешней эпидемии компьютерных вирусов удивительно только то, что она заставила себя долго ждать.
Компьютерные вирусы: модель для информационной эпидемиологии
Компьютерные вирусы — небольшие программы, которые встраиваются в другие, полезные программы и нарушают их работу. Они могут передаваться при обмене дискетами или по компьютерным сетям. В строгом смысле они отличаются от “червей”, которые представляют собой самостоятельные программы, обычно передающиеся по сетям. Выделяют также “троянских коней” — третью разновидность разрушительных программ, которые сами по себе не способны к само-репликации и полагаются на то, что их будут реплицировать люди в связи с их порнографическим или каким-либо иным привлекательным содержанием. Как вирусы, так и черви — это программы, которые, по сути, говорят компьютерным языком: “Дуплицируйте меня”. И те, и другие могут выполнять и иные функции, кроме демонстрации своего присутствия и, вероятно, удовлетворения тайного тщеславия их авторов. Эти побочные эффекты бывают “юмористическими” (как у вируса, который заставляет встроенный динамик “Макинтоша” повторять: “Не паникуй”, вызывая предсказуемый противоположный эффект), вредоносными (как вирусы, которые стирают все данные на жестком диске после насмешливого объявления на экране о неминуемой катастрофе), политическими (вирусы Spanish Telecom (“Испанские телекоммуникации”) и Beijing (Пекин) были созданы в знак протеста соответственно против высоких телефонных тарифов и убийства студентов-демонстрантов) или просто непредумышленными (если программист не справляется с системными командами низкого уровня, управление которыми требуется для создания эффективного вируса или червя). Знаменитый “Интернет-червь” (Internet Worm), парализовавший значительную часть компьютерных ресурсов Соединенных Штатов 2 ноября 1988 года, не задумывался как (особенно) вредоносный, но вышел из-под контроля и в течение 24 часов засорил память примерно 6 ооо компьютеров экспоненциально размножающимися своими копиями.
Мемы теперь распространяются по миру со скоростью света и реплицируются с такой частотой, что по сравнению с ними даже плодовые мухи и дрожжевые клетки выглядят медлительнее ледников. Они перескакивают без разбора с одного переносчика на другой и с одного носителя на другой и демонстрируют беспомощность едва ли не любых карантинных мер.
Дэниел Деннет
Компьютерные вирусы не ограничиваются электронными носителями, такими как диски и линии передачи данных. На своем пути от одного компьютера к другому вирус может пройти через типографскую краску, свет в человеческих глазах, сигналы зрительного нерва и сокращения мышц пальцев. Журнал для любителей компьютеров, напечатавший, к сведению своих читателей, текст вирусной программы, подвергся остракизму. В самом деле, идея вируса обладает такой привлекательностью для некоторых разновидностей мальчишеской ментальности (мужской пол подразумевается здесь преднамеренно), что публикацию любой информации о методах написания вирусных программ справедливо считают безответственным поступком.
Я не собираюсь публиковать никаких вирусных кодов. Но есть некоторые приемы успешного создания вирусов, которые настолько хорошо известны и даже очевидны, что не будет никакого вреда, если я упомяну их здесь, поскольку это необходимо для развития темы. Все они связаны с тем, что пока вирус распространяется, он не должен быть обнаружен.