Юный техник, 2003 № 12
Шрифт:
РАССКАЖИТЕ, ОЧЕНЬ ИНТЕРЕСНО!
Как создать компьютерный вирус
«Все время слышу, что в Интернете появляются новые вирусы, которые, проникая в компьютеры, клонируют себя и рассылают по всем адресам, хранящимся в адресной книге, а то и выводят из строя все программы. Вирус, как я понимаю, — файл очень малого объема. Кок же удается запрограммировать в нем столько всяких задач?
Максим Беляков, Москва».
Ответ
Итак, ты решил в дополнение к не одной сотне вирусов, портящих нервы, файлы и компьютеры по всему миру, написать свой собственный вирус и теперь ждешь от меня советов.
Перво-наперво подумай: серьезны ли твои намерения?
Ведь сочинение вирусов — дело подсудное. Несколько моих коллег, отличившихся на этом поприще, уже за решеткой [1] . Впрочем, знание принципов написания и работы вирусов может быть полезно и для того, чтобы от них защищаться. Не зря же, например, в канадском Университете Калгари студентам преподают теперь новый курс под названием «Вирусы, черви и трояны». При этом дело, говорят, одной только теорией не ограничивается.
1
В России таких прецедентов пока не наблюдалось, однако соответствующая статья 273 «Создание, использование и распространение вредоносных программ для ЭВМ» в УК РФ тоже предусмотрена. Карается это деяние сроком от 3 до 7 лет с конфискацией «средств производства» вирусов, то есть принадлежащих «вирусописателю» компьютеров. — Прим. пер.
Всем студентам предстоит разрабатывать собственные версии нашумевших вирусов «I LOVE YOU» и «BUGBEAR», а может быть, и других, не менее вредных.
Кроме того, руководство университета обещает, что занятия будут проводиться в специальных секретных лабораториях, отключенных от Интернета и сотовых сетей, а также собирается принять все необходимые меры, дабы не допустить распространения «учебных» вирусов за пределы университета.
Так что будем пока считать, что у тебя, дорогой читатель, интерес к написанию вирусов тоже «теоретический». Если же не так, не обижайся, что я привожу в своей книге мало готовых листингов. В Интернете и так много подобных рекомендаций. Есть даже готовые «генераторы вирусов». Скачав себе такую программку, ты можешь запустить ее и выбрать в меню желаемые эффекты — от невинного «осыпания» символов на экране до форматирования винчестера, и новый вирус готов.
Учти только, что сами эти программы тоже частенько бывают уже зараженными, так что твой компьютер пострадает первым.
Так что пока — общие сведения о «жизнедеятельности» вирусов, а дальше действуй сам по собственному усмотрению и на свою ответственность, договорились?
Один из сайтов, на котором можно найти антивирусные программы.
Это, как всем известно, маленькая программа, которая умеет тайком создавать собственные копии в других файлах или на дискетах и расползаться по другим компьютерам, когда кто-то по незнанию копирует туда зараженные файлы (или передаваться по сети). А кроме того, в вирусы закладываются и некоторые другие действия, обычно выполняемые после некоторого числа заражений, — иногда безвредные, «в шутку», но чаще разрушительные, например, стирание каких-то файлов. Откуда такие программы берутся?
Все без исключения вирусы первоначально были кем-то написаны, а потом выпущены «на свободу». Зачем — вопрос особый. Одни их пишут для самоутверждения, считая писание вирусов высшим пилотажем хакерства. Другие — чтобы насолить обидчику (хотя вирус потом достанется и всем тем, кто ни в чем не повинен). Третьи — из чисто абстрактного хулиганства, с желанием напакостить всем окружающим. Случаев же самопроизвольного появления вирусов пока не было. По крайней мере, я о таком ни разу не слышал.
Как вирус умудряется заразить компьютер, да еще сделать это незаметно для пользователя? Очень просто: обычно пользователь сам дает ему такую возможность — запускает на выполнение зараженный файл, открывает зараженное электронное письмо, документ в Word'e и т. д.
Обычно программа вируса сделана так, что при этом она первой получает управление и начинает выполняться. Например, для этого достаточно, чтобы в зараженном файле первой стояла команда безусловного перехода на дописанный в конце этого файла «кусок» программного кода вируса. Дальше вирус должен сделать две простые вещи:
— разместиться в оперативной памяти на все время работы компьютера, пока он включен (такие программы называются резидентными и могут постоянно контролировать некоторые процессы работы компьютера, например, запуск всех файлов);
— скопировать себя на жесткий диск, чтобы переждать время от выключения питания компьютера (когда, как известно, все содержимое оперативной памяти стирается) до его следующего включения, а когда это произойдет — опять-таки получить возможность запуска.
Обычно для этого вирус копируется в какую-либо программу (заражает ее), которая всегда запускается в ходе стартовой загрузки компьютера (например, в какую-нибудь программу операционной системы Windows), либо запуск вируса встраивается в загрузочный сектор системного диска, где прописаны команды, которые компьютер должен выполнять после включения питания.
Вот и все! Теперь та часть вируса, которая находится в оперативной памяти резидентно, будет отслеживать все случаи, когда пользователь запускает на выполнение или копирует на дискеты любые исполняемые программы, и дописывать себя в них (например, добавлять свою копию в конце такой программы, а в самом ее начале записывать команду перехода на свой код), — это и есть заражение.
Листинг вируса нетрудно найти в Интернете.