Чтение онлайн

ЖАНРЫ

Записки исследователя компьютерных вирусов

Касперски Крис

Шрифт:

И подавляющее большинство моделей оптических накопителей также подвержены угрозе затирания прошивки, команды записи которой, кстати говоря, стандартизованы, а не варьируются от одного производителя к другому, как это происходит со всеми вышеперечисленными устройствам. Проектирование троянской компоненты вируса при этом существенно упрощается, а масштабы поражения многократно возрастают. Записывающие накопители (они же «писцы» или «резцы») в большинстве своем закладываются на импульсную работу лазера, выжигающего последовательность точек («питов»), разделенных одним или несколькими «лендами». Зная принцип кодирования данных, можно подготовить последовательность, практически начисто лишенную лендов и состоящую преимущественно из длинных «питовых»

цепочек. Существует далеко не нулевая вероятность, что при записи такого образа лазер перегреется, и либо сгорит, либо (в лучшем случае) существенно ухудшит свои эксплутационные характеристики (подробнее об этом рассказывается в книге Криса Касперски «Техника защиты лазерных дисков»).

ПРИМЕЧАНИЕ

Кстати говоря, многие приводы (в частности, мой PHILIPS CDRW2412, относящийся к весьма недешевому классу «продвинутых» приводов) механически выходят из строя при считывании оглавления некорректно «размеченного» диска.

Так же могут быть «перепрограммированы» и многие другие устройства (например, модемы), разрушение прошивки которых сделает их неработоспособными, причем уничтожение модема осуществляется даже на минимальном уровне привилегий.

Короче говоря, современный компьютер со всей своей периферией представляет собой достаточно уязвимое устройство, легко выводимое из строя на программном уровне. Отсутствие массовых «выгораний» комплектующих объясняется тем, что создатели вирусов совсем не лишены чувства сострадания и движет ими отнюдь не жажда вселенской мести и разрушений планетарного масштаба. Если бы LoveSan или любой другой из расплодившихся в последнее время вирусов хотя бы частично выводил компьютеры из строя, мы с вами сейчас грелись у костра, сидя на медвежьих шкурах, а компьютеры использовали в качестве декоративного украшения, напоминающего о былых временах…

КЛАССИФИКАЦИЯ КОМПЬЮТЕРНЫХ ВИРУСОВ

Существует по меньшей мере два типа компьютерных вирусов – те, что вы еще не поймали, и те, которые вам еще предстоит поймать. Предложенная классификация ничем не хуже любой другой, претендующей на академическую серьезность и отточенность формулировок. Знаете, когда этот академический презерватив натягиваешь на торчащую полуось вируса, раздается громкий хлопок и… в руках теоретика ничего не остается.

Вирусы вообще очень неохотно подчиняются попыткам их классифицировать, образуя многочисленные межвидовые гибриды, и поэтому один и тот же вирус приходится относить к нескольким категориям сразу, в результате чего классификация теряет стройность, привлекательность и смысл.

В настоящей книге мы будем придерживается следующей терминологии, заранее оговаривая ее условность. К локальным вирусам автор относит все вирусоподобные программы, не способные к самостоятельному распространению и поддерживающие свою жизнедеятельность исключительно за счет активности пользователя, запускающего различные исполняемые объекты (на которых и паразитирует вирус), как-то: двоичные файлы, скрипты, загрузочные сектора и т. д. Вирусы, паразитирующие на файлах, называются файловыми, а вирусы, поражающие загрузочные сектора, – загрузочными.

Программы, способные к самостоятельному размножению, протекающему без участия пользователя, принято называть червями. Подавляющее большинство червей – это сетевые вирусы, распространяющиеся сквозь дыры в программном обеспечении и полностью автоматизирующие процесс поиска и заражения жертв, не закладываясь на человеческий фактор. Фактически черви являются высоко автономными роботами и предъявляют к своему создателю ничуть не менее жесткие требования, чем космические станции, посылаемые на Марс. Во всяком случае, дефекты проектирования червей наносят мировому сообществу урон, вполне сопоставимый со стоимостью космической станции.



Вирусы, рассылающие свое тело через почтовые вложения, классифицируются автором как обыкновенные файловые вирусы, взявшие на вооружение современные коммуникационные технологии. Это – не черви. Это – детский сад на уровне

ясельной группы, когда уже умеешь вставать с горшка, но о его назначении еще не догадываешься.

ОТ ИЗДАТЕЛЬСТВА

Ваши замечания, предложения и вопросы отправляйте по адресу электронной почты comp@piter.com (издательство «Питер», компьютерная редакция).

Мы будем рады узнать ваше мнение!

Все исходные тексты, приведенные в книге, вы можете найти по адресу http://www.piter.com/download.

Подробную информацию о наших книгах вы найдете на веб-сайте издательства: http://www.piter.com.

Часть I
Локальные вирусы

Глава 1

БОРЬБА С WINDOWS – ВИРУСАМИ – ОПЫТ КОНТРТЕРРОРИСТИЧЕСКИХ ОПЕРАЦИЙ,

из которой читатель узнает, чем зараженный файл отличается от незараженного

Глава 2

ВИРУСЫ В UNIX, ИЛИ ГИБЕЛЬ ТИТАНИКА II,

из которой читатель узнает, что в UNIX-системах вирусы не только живут, но даже очень бурно размножаются, пожирая скрипты и демонстрируя с десяток различных способов внедрения Belf/coff/a.out файлы


Локальные вирусы образуют многочисленную и весьма устойчивую популяцию, захватившую практически все стратегические уровни – от старушки MS-DOS, дожившей до наших дней разве что в виде эмуляторов (да и то больше по недоразумению, чем по потребности), до современных операционных систем, базирующихся на последних клонах Windows NT и UNIX.

И хотя правильная политика разграничения доступа сводит активность вирусов к разумному минимуму, хитрый вирус всегда найдет чем поживиться, и локальные очаги инфекции вспыхивают даже в хорошо защищенных системах.

Вирусов, уверенно функционирующих под UNIX и NT, пока немного, но с каждым годом их количество растет, причем чем дальше – тем стремительнее. Действительно, сначала идея приходит в голову кому-то одному – высококвалифицированному и опытному программисту, сочетающему в себе талант разработчика с кучей свободного времени (что встречается, прямо-таки скажем, нечасто) и знающему «задний двор» операционной системы как свои пять пальцев. Затем, по мере размножения вируса, его вылавливают десятки программистов с квалификацией пониже и «потрошат» ключевые алгоритмы дизассемблером, окультуривая ассемблерные листинги разъясняющими комментариями, доступными даже начинающим, а иногда и переводя их на языки высокого уровня… Для особо тупых создаются конструкторы вирусов, полностью автоматизирующие процесс разработки и низводящие свободный полет творческой мысли до простого тыканья мышью куда попало.

Даже поверхностное исследование показывает, что вирусы далеко не исчерпали потенциал техники инфицирования и множество прогрессивных методов внедрения в файл все еще остаются незадействованными и бесхозно пылятся на полке. Прежде всего это относится к UNIX-вирусам, только-только вышедшим из стадии детского творчества, но уже активно осваивающим большой мир. Если верить прогнозам, в ближайшее время произойдет настоящий демографический взрыв, увеличивающий количество UNIX-вирусов в десятки раз. Поэтому автор не только описывает алгоритмы, позаимствованные из живых вирусов, выловленных в дикой природе, но и раскрывает технологии завтрашних дней, полученные из экспериментальных вирусов, искусственно выращенных в лабораторных условиях. Никогда они не выйдут на свободу, если только идея их создания не придет в голову кому-нибудь другому (а в том, что она придет, можно не сомневаться).

Поскольку книга ориентирована преимущественно на людей творческих и думающих, готовые рецепты приготовления вирусов здесь и не ночевали. Вторым Хижняком автор становиться не собирается и ориентируется преимущественно на методики внедрения в файл, а не на конкретные программные реализации.

Здесь вы не найдете ни технологий полиморфизма, ни способов захвата RING0 с пользовательского уровня, ни антиотладочных или stealth-приемов. Каждая из этих тем заслуживает отдельного разговора и отдельной книги. Может быть, как-нибудь в другой раз…

Поделиться с друзьями: