Зараженным является диск. Способы распространения и структура. Признаках проявления вирусов

Зараженным является диск. Способы распространения и структура. Признаках проявления вирусов

Бывают моменты при работе с компьютером, когда нужно выключить антивирус Касперского по тем или иным причинам. Например, вам срочно понадобилось использовать ПО, которое блокирует антивирус Касперского, и вы знаете, что это не вирус. Или же вы хотите обновить версию Касперского до более новой, полностью удалив старую версию антивируса. Рассмотрим оба эти варианта.

Чтобы выгрузить антивирус Касперского из рабочего состояния в загруженной ОС, необходимо просто закрыть программу, как это часто делается с другими программами. Найдите в трее ОС значок Касперского. Треем зовется рабочая область рабочего стола в правом нижнем углу экрана. Нажмите на значок правую кнопку мыши и нажмите самую нижнюю кнопку под названием «Выход».

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

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

Для этого нужно полностью удалить саму программу ее собственным деинсталлятором, как и было сказано выше. Не забудьте нажать все галочки в графе «Полное удаление». Это удалит ключи, все скачанные базы и некоторые другие файлы. Теперь перезагрузите компьютер.

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

Теперь антивирус Касперского полностью выгружен из вашей операционной системы.


26.11.2014

КОМПЬЮТЕРНЫЕ ВИРУСЫ


И спорченные и зараженные файлы
Классификация вирусов ПРОФИЛАКТИКА И БОРЬБА С КОМПЬЮТЕРНЫМИ ВИРУСАМИ

ВВЕДЕНИЕ

В настоящее время очень многие области деятельности человека связаны с применением компьютеров. Почему же эти электронные машины так плотно внедряются в нашу жизнь? Все довольно тривиально. Они выполняют рутинную расчетную и оформительскую работу, освобождая наш мозг для более необходимых и ответственных задач. В результате утомляемость резко снижается, и мы начинаем работать гораздо производительнее, нежели без применения компьютера.
Возможности современных компьютеров поражают самое богатое воображение. Они способны параллельно выполнять несколько задач, сложность которых довольно велика. По этому некоторые производители задумываются над созданием искусственного интеллекта. Да и сейчас работа компьютера напоминает работу интеллектуального электронного помощника человека.
Но кто бы мог подумать, что этому электронному чуду техники свойственны болезни похожие на человеческие. Он, так же как и человек может подвергнуться атаке "вируса" но компьютерного. И если не принять мер, компьютер скоро "заболеет" т.е. начнет выполнять неправильные действия или вообще "умрет" т.е. повреждения нанесенные "вирусом" окажутся очень серьезными. О том что такое компьютерные вирусы и как с ними бороться пойдет речь далее.

КОМПЬЮТЕРНЫЕ ВИРУСЫ

Что такое компьютерный вирус?

На сегодняшний день можно выделить несколько основных типов вредоносных программ:
- класический компьютерный вирус;
- "троян" или троянский конь (troj);
- червь (worm);
- шпион или spy, keyloger
- rootkick;
- bot или zombie.

В свое время наибольшую распостраненность имели именно класические вирусы - но их создатели редко задавались конкретной целью навредить конечному пользователю, а скорее создавались из позновательных целей. Нынешние же вирусописатели преследуют абсолютно четкие и понятные цели - деньги, и их "детища" стали куда опаснее своих предшественников. Итак позвольте представить самых опасных хищников сегодняшнего информационного пространства - это Трояны и Черви.
Троян или troj получил свое название благодаря сходству между методом заражения и знаменитым тактическим ходом при осаде Трои. Пример заражения трояном - вам приходит письмо от некой "знакомой" с текстом: - "Привет! Я только вернулась с моря - так клево отдохнула! Вот мои фотки - посмотри.", и вложенными фаилами с расширением ".JPG". Вот эти самые фаилы это и есть троянский конь в недрах которого спрятан вредоносный код. Наиболее часто встречающиеся источники заражения - электронная почта, сайты знакомств, сайты с музыкой, сайты с бесплатным ПО. Что делает "троян"? Как правило его задача открыть путь для остальных вирусов, выступить первым плацдармом. Как избежать заражения "трояном" ? Здесь все как в жизни - предохраняйтесь и избешайте случайных связей =). Это правило справедливо для любых вирусов и другого вредоносного ПО. Если вам прислали электронное письмо - прежде чем смотреть вложенные фаилы проверьте отправителя, сохраните вложение на компьютер и проверьте его антивирусом, и только после этого открывайте.

Червь или Worm - особенность этих программ в эволюции и автономности. Червь попадая на компьютер как правило атакует почтовые программы и интернет пейджеры. После получения доступа к почте или пейджеру он начинает рассылать письма/сообщения содержащие видоизмененную версию самого себя. После чего либо самоликвидируется, либо заражает запускаемые фаилы (EXE, COM, BAT). Поскольку вирус самоизменяется то до момента определения его в базе вашего антивируса он неуязвим. Вот почему сегодня лицензионный антивирус это насущная потребность любого владельца ПК.

Компьютерный вирус - это специально написанная небольшая по размерам програmmа, которая может "приписывать" себя к другим програmmам (т.е. "заражать" их), а также выполнять различные нежелательные действия на компьютере. Программа, внутри которой находится вирус, называется зараженной. Когда такая програmmа начинает работу, то сначала управление получает вирус. Вирус находит и "заражает" другие программы, а также выполняет какие-нибудь вредные действия (например, портит файлы или таблицу размещения файлов (FAT) на диске, "засоряет" оперативную память и т.д.). Для маскировки вируса действия по заражению других программ и нанесению вреда могут выполняться не всегда, а скажем, при выполнении определенных условий. После того как вирус выполнит нужные ему действия, он передает управление той програmmе, в которой он находится, и она работает как обычно. Тем самым внешне работа зараженной програmmы выглядит так же, как и незараженной.
Многие разновидности вирусов устроены так, что при запуске зараженной програmmы вирус остается в памяти компьютера и время от времени заражае тпрограmmы и выполняет нежелательные действия на компьютере.
Все действия вируса могут выполняться очень быстро и без выдачи каких либо сообщений, по этому пользователю очень трудно, практически невозможно, определить, что в компьютере происходит что-то необычное.
Пока на компьютере заражено относительно мало програmm, наличие вируса может быть практически незаметным. Однако по прошествии некоторого времени на компьютере начинает твориться что-то странное, например:
- некоторыепрограmmы перестают работать или начинают работать неправильно;
- на экран выводятся посторонние сообщения, символы и т.д.;
- работа на компьютере существенно замедляется;
- некоторые файлы оказываются испорченными и т.д.
К этому моменту, как правило, уже достаточно много (или даже большинство) техпрограmm, с которыми вы работаете, являются зараженными вирусом, а некоторые файлы и диски - испорченными. Более того, зараженныепрограmmы с Вашего компьютера могли быть уже перенесены с помощью дискет или локальной сети на компьютеры ваших коллег и друзей.
Некоторые вирусы ведут себя очень коварно. Они вначале незаметно заражают большое числопрограmm и дисков, а затем наносят очень серьезные повреждения, например, форматируют весь жесткий диск на компьютере, естественно после этого восстановить данные бывает просто невозможно. А бывают вирусы, которые ведут себя очень скрытно, и портят понемногу данные на жестком диске или сдвигают таблицу размещения файлов (FAT).
Таким образом, если не принимать мер по защите от вируса, то последствия заражения могут быть очень серьезными. Например, в начале 1989г. вирусом, написанным американским студентом Моррисом, были заражены и выведены из строя тысячи компьютеров, в том числе принадлежащих министерству обороны США. Автор вируса был приговорен судом к трем месяцам тюрьмы и штрафу в 270 тыс. дол. Наказание могло быть и более строгим, но суд учел, что вирус не портил данные, а только размножался.
Для того, чтобыпрограmmа-вирус была незаметной, она должна иметь небольшие размеры. По этому вирусы пишут обычно на низкоуровневых языках Ассемблер или низкоуровневыми командами языка СИ.
Вирусы пишутся опытнымипрограmmистами или студентами просто из любопытства или для отместки кому-либо или предприятию, которое обошлось с ними недостойным образом или в коммерческих целях или в целях направленного вредительства. Какие бы цели не преследовал автор, вирус может оказаться на вашем компьютере и постарается произвести те же вредные действия, что и у того, для кого он был создан.
Следует заметить, что написание вируса - не такая уж сложная задача, вполне доступная изучающему програmmирование студенту. Поэтому еженедельно в мире появляются все новые и новые вирусы. И многие из них сделаны в нашей стране.

Испорченные и зараженные файлы

Компьютерный вирус может испортить, т.е. изменить ненадлежащим образом, любой файл на имеющихся в компьютере дисках. Но некоторые виды файлов вирус может "заразить". Это означает, что вирус может "внедриться" в эти файлы, т.е. изменить их так, что они будут содержать вирус, который при некоторых обстоятельствах может начать свою работу.
Следует заметить, что тексты програmm и документов, информационные файлы баз данных, таблицы табличных процессоров и другие аналогичные файлы не могут быть заражены обычным вирусом, он может их только испортить. Заражение подобных файлов делается только Макро-вирусами. Эти вирусы могут заразить даже ваши документы.
Загрузчик операционной системы и главная загрузочная запись жесткого диска. Вирусы, поражающие эти области, называются загрузочными или BOOT-вирусами. Такой вирус начинает свою работу при начальной загрузке компьютера и становится резидентными, т.е. постоянно находится в памяти компьютера. Механизм распространения – заражение загрузочных записей вставляемых в компьютер дискет. Часто такие вирусы состоят из двух частей, поскольку загрузочная запись имеет небольшие размеры и в них трудно разместить целикомпрограmmу вируса. Часть вируса располагается в другом участке диска, например в конце корневого каталога диска или в кластере в области данных диска (обычно такой кластер объявляется дефектным, чтобы исключить затирание вируса при записи данных).
Драйверы устройств Файлы, указываемые в предложении DEVICE файла CONFIG.SYS. Вирус, находящийся в них начинает свою работу при каждом обращении к соответствующему устройству. Вирусы, заражающие драйверы устройств, очень мало распространены, поскольку драйверы редко переписывают с одного компьютера на другой. То же относится и к системным файлам DOS (MSDOS.SYS и IO.SYS) – их заражение также теоретически возможно, но для распространения вируса малоэффективно.

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

Классификация вирусов

Вирусы можно делить на классы по разным признакам. Вот, например, по признаку вероломности:

Вирусы, моментально поражающие компьютер, форматируют жесткий диск, портят таблицу размещения файлов, портят загрузочные сектора, стирают так называемое Flash-ПЗУ (где находится BIOS) компьютера (вирус "Чернобыль"), другими словами, как можно быстрее наносят непоправимый урон компьютеру. Сюда же можно отнести и результаты обид програmmистов, пишущих вирусы, на антивирусные програmmы. Имеются в виду так называемые аллергии на определенные антивирусныепрограmmы. Эти вирусы достаточно вероломны. Вот, например, аллергия на Dr.Weber при вызове этой программы, не долго думая, блокирует антивирус, портит все, что находится в директории с антивирусом и C:WINDOWS. В результате приходится переустанавливать операционную систему и затем бороться с вирусом другими средствами.
- вирусы, рассчитанные на продолжительную жизнь в компьютере. Они постепенно и осторожно заражают программу за программой, не афишируя, свое присутствие и производят подмену стартовых областей программ на ссылки к месту, где расположено тело вируса. Кроме этого они производят незаметное для пользователя изменение структуры диска, что даст о себе знать, только когда некоторые данные уже будут безнадежно утеряны (например, вирус "OneHalf-3544","Yankey-2C").
По признаку способов передачи и размножения тоже можно провести разделение.
Раньше вирусы в основном поражали только исполняемые файлы (с расширениями.com и.exe). Действительно, ведь вирус это программа и она должна выполняться.
Теперь вирусы отправляют электронной почтой как демонстрационные программки или как картинки, например, если по электронной почте пришел файл "PicturesForYou.jpg", не спешите его смотреть, тем более что он пришел неизвестно откуда. Если посмотреть на название повнимательнее, то окажется, что оно имеет еще 42 пробела и действительное расширение.exe. То есть реально полное имя файла будет таким:
"PicturesForYou.jpg .exe". Теперь любому понятно, что на самом деле несет в себе эта картинка. Это не файл рисунка, который при активизации вызывает просмотрщик рисунков, а наглый чуточку завуалированный вирус, который только и ждет когда его активизируют щелчком мыши или нажатием клавиши. Такой вирус вы сами загружаете себе на компьютер, под оболочкой какой-нибудь картинки, как "Троянского коня". Отсюда и жаргонное название таких вирусов как "Трояны".
На данный момент существуют такие оболочки информационных каналов как Internet Explorer, Outlook Express, Microsoft Office. Сейчас появились немногочисленные классы так называемых "Макро-вирусов". Они содержат скрытые команды для данных оболочек, которые нежелательны для рядового пользователя. И этот код уже не является кодом для компьютера, то есть это уже не программа, а текст программы, выполняемый оболочкой. Таким образом, он может быть записан в любом необходимом формате: .html, .htm - для Internet Explorer, .doc, .xls, .xlw, .txt, .prt, или любой другой - для Microsoft Office и т. д.. Такие вирусы наносят вред только определенного характера, ведь оболочка не имеет команд, к примеру, для форматирования жесткого диска. Но все же этот вид вирусов заслуживает внимания, ведь с помощью скрытых гиперссылок он способен самостоятельно загрузить из Интернета на ваш компьютер тело вируса, а некоторые вирусы способны обновляться и загружаться по частям через Интернет с определенных серверов. Вот, например, одним из японских студентов разработан именно такой вирус, который подключает небольшой "загрузчик" к любому формату входных данных из Интернета. Далее этот загрузчик самостоятельно скачивает из Интернета с сервера с IP-адресом Babilon5 тела вируса. Этих тел четыре. Каждая из них способна самостоятельно разрушать ваш компьютер, но имеет определенное назначение. Этот вирус по типу является гибридом между макро-вирусами и обычными вирусами. Но надо отметить, что именно гибриды являются наиболее живучими, хитрыми, опасными и многочисленными среди вирусов. Совсем недавно нашумел скандал о программисте, который, как утверждают эксперты, создал и начал распространение макро-вируса, заражавшего текстовые файлы для Microsoft Word. Его вычислили по дате и времени создания исходного документа, которое хранится в невидимых частях.doc файлов. Возможно, что файл был создан другим человеком до того, как к нему был приделан вирус, тогда вопрос о злоумышленнике остается открытым. Но эксперты утверждают, что это именно он.
Например, вирус Win32.HLLM.Klez. один из разновидностей опасного сетевого червя распространяется путем рассылки своих копий по электронной почте. Кроме того, этот червь может распространяться по локальной сети, заражая компьютеры, диски которых являются разделяемыми сетевыми ресурсами, доступными для записи. Попадая в систему, червь рассылает себя по адресам, найденным в адресной книге Windows, в базе данных ICQ и в локальных файлах. Зараженные письма, рассылаемые данным червем, используют одну из сравнительно давно известных ошибок в системе безопасности Internet Explorer, которая позволяет вложенному в письмо программному файлу (с вирусом) автоматически запуститься при простом просмотре почты в программах Outlook и Outlook Express.
Попробуем рассмотреть способы маскировок и защит, применяемых вирусами против нас рядовых пользователей и антивирусных программ.
Вероломность- это основной и самый быстрый способ сделать пакость до обнаружения. Вирус "Чернобыль", например, полностью стирает BIOS (стартовую программу, расположенную в микросхеме ПЗУ, обеспечивающую работу компьютера). После такого компьютер вообще ничего не сможет выдать на экран. Но его работа легко блокируется, если внутри компьютера установлен переключатель, запрещающий писать в область ПЗУ. По этому это был первый, но и, как я думаю, последний представитель аппаратных вирусов.
Регенеративные вирусы делят свое тело на несколько частей и сохраняют их в разных местах жесткого диска. Соответственно эти части способна самостоятельно находить друг друга и собираться для регенерации тела вируса. Программа - антивирус обнаруживает и убивает лишь тело вируса, а части этого тела не заложены в антивирусной базе, так как являются измененными. От таких вирусов помогает целенаправленное низкоуровневое форматирование жесткого диска. Предварительно необходимо принять осторожные меры по сохранению информации.
Хитрые вирусы прячутся не только от нас, но и от антивирусных программ. Эти "хамелеоны" изменяют сами себя с помощью самых хитрых и запутанных операций, применяя и текущие данные (время создания файла) и используя чуть ли не половину всего набора команд процессора. В определенный момент они, конечно же, по хитрому алгоритму превращаются в подлый вирус и начинают заниматься нашим компьютером. Это самый трудно обнаруживаемый тип вирусов, но некоторые антивирусные программы, такие как "Dr.Weber", способны с помощью так называемого эвристического анализа обнаруживать и обезвреживать и подобные вирусы.
"Невидимые" вирусы чтобы предотвратить свое обнаружение применяют так называемый метод "Stelth". Он заключается в том, что вирус, находящийся в памяти резидентно, перехватывает обращения DOS (и тем самым прикладных программ) к зараженным файлам и областям диска и выдает их в исходном (незараженном) виде. Разумеется этот эффект наблюдается только на зараженном компьютере - на "чистом" компьютере изменения в файлах и загрузочных областях диска можно легко обнаружить. Но некоторые антивирусные программы могут обнаруживать вирусы - "невидимки" даже на зараженных компьютерах.
Сетевой червь «Randon» появился в марте 2003 года. Распространятся по IRC-каналам и ресурсам локальных сетей и заражает компьютеры под управлением операционных систем Windows2000 и Windows XP. Для проникновения на компьютер он подключается к локальной сети или IRC-серверу, сканирует находящийся на нем пользователей, устанавливает с ними соединение по порту 445 и пытается подобрать пароль из встроенного списка наиболее часто используемых фраз. В случае успешного взлома системы «Random» пересылает на нее троянскую программу «Apher», которая, в свою очередь, загружает с удаленного Web-сайта остальные компоненты червя. После этого «Randon» устанавливает свои компоненты в системном каталоге Windows, регистрирует свой основной файл. Для сокрытия присутствия в памяти использует специальную утилиту «HideWindows», которая также является компонентом червя. Благодаря ей он оказывается невидимым для пользователя, так что активный процесс «Randon» можно обнаруживать только в диспетчере задач Windows. Его побочные эффекты – создание на зараженной машине большого объема избыточного трафика и переполнение IRC-каналов.
По данным «Лаборатории Касперского», одним из ведущих разработчиков антивирусных программ, представляет обзор вирусной активности за март 2003г.(табл.2 и рис.1)

Двадцатка наиболее распространенных вредоносных программ

Табл. 2
Название Доля в общем числе вирусных инцидентов (%)
1. I-Worm.Klez 37,60%
2. I-Worm.Sobig 10,75%
3. I-Worm.Lentin 9,03%
4. I-Worm.Avron 3,30%
5. Macro.Word97.Thus 2,62%
6. I-Worm.Tanatos 1,38%
7. Macro. Word97.Marker 1,21%
8. Worm.Win32.Opasoft 1,13%
9. I-Worm.Hybris 1,04%
10. Win95.CIH 0,69%
11. Worm.Win32.Randon 0,58%
12. VBS.Redlof 0,57%
13. Backdoor.Death 0,51%
14. Win95.Spaces 0,51%
15. I-Worm.Roron 0,49%
16.Trojan.PSW.Gip 0,49%
17. Backdoor.NetDevil 0,48%
18. Win32.HLLP.Hantaner 0,45%
19. TrojanDropper.Win32.Delf 0,42%
20. TrojanDropper.Win32.Yabinder 0,41%
Другие вредоносные программы* 26,33%

*не вошедшие в 20 наиболее распространенных

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

Основные методы защиты от компьютерных вирусов

Для защиты от вирусов можно использовать:
- Общие средства защиты информации, которые полезны также как страховка от физической порчи дисков, неправильно работающих программ или ошибочных действий пользователей;
- профилактические меры, позволяющие уменьшить вероятность заражения компьютерным вирусом;
- специализированные программы для защиты от вирусов.
-Общие средства защиты информации полезны не только для защиты от вирусов. Имеются две основные разновидности этих средств:
копирование информации - создание копий файлов и системных областей дисков;
разграничение доступа предотвращает несанкционированное использование информации, в частности, защиту от изменений программ и данных вирусами, неправильно работающими программами и ошибочными действиями пользователей.
Несмотря на то, что общие средства защиты информации очень важны для защиты от компьюторных вирусов, все же их одних недостаточно. Необходимо применять специализированные программы для защиты от компьютерных вирусов. Эти программы можно разделить на несколько видов:
Программы - детекторы позволяют обнаруживать файлы, зараженные одним из нескольких известных вирусов.
Программы - доктора, или фаги, "лечат вирусы " зараженные программы или диски, "выкусывая" из зараженных программ тело вируса, т.е. восстанавливая программу в том состоянии, в котором она находилась до заражения вирусом.
Программы - ревизоры сначала запоминают сведения о состоянии программ и системных областей дисков, а затем сравнивают их состояние с исходным. При выявлении несоответствий, об этом сообщается пользователю.
Доктора - ревизоры - это гибриды ревизоров и докторов, т.е. программы, которые не только обнаруживают изменения в файлах и системных областях дисков, но и могут автоматически вернуть их в исходное состояние.
Программы - фильтры располагаются резидентно в оперативной памяти компьютера и перехватывают те обращения к операционной системе, которые используются вирусами для размножения и нанесения вреда, и сообщают о них пользователю. Пользователь может разрешить или запретить выполнение соответствующей операции.
Программы - вакцины, или иммунизаторы, модифицируют программы и диски таким образом, что это не отражается на работе программ, но вирус, от которого производится вакцинация, считает эти программы и диски уже зараженными. Эти программы крайне неэффективны и далее не рассматриваются.
Ни один тип антивирусных программ по отдельности не дает, к сожалению, полной защиты от компюторных вирусов. По этому наилучшей стратегией защиты от вирусов является многоуровневая, "эшелонная" оборона. Опишем структуру этой обороны.
Средствам разведки в "обороне" от вирусов соответствуют программы - детекторы, позволяющие проверять вновь полученное программное обеспечение на наличие вирусов.
На переднем крае обороны находятся программы-фильтры (резидентные программы для защиты от вируса). Эти программы могут первыми сообщить о вирусной атаке и предотвратить заражение программ и диска.
Второй эшелон обороны составляют программы-ревизоры, программы-доктора и доктора-ревизоры. Ревизоры обнаруживают нападение даже тогда, когда вирус сумел "просочиться" через передний край обороны. Программы-доктора применяются для восстановления зараженных программ, если ее копий нет в архиве. Но они не всегда проводят лечение правильно. Доктора-ревизоры обнаруживают нападение вируса и лечат вирусы - зараженные файлы, причем контролируют правильность лечения вирусов, а в случае невозможности лечения вирусов обязательно рекомендуют удаление вирусов (зараженных фаилов).
Самый глубокий эшелон обороны - это средства разграничения доступа. Они не позволяют вирусам и неверно работающим программам, даже если они проникли в компьютер, испортить важные данные.
И, наконец, в "стратегическом резерве" находятся архивные копии информации и "эталонные" дискеты с программными продуктами. Они позволяют восстановить информацию при ее повреждении на жестком диске.

Программы – детекторы и доктора

В большинстве случаев для обнаружения вируса, заразившего компьютер, можно найти уже разработанные программы-детекторы. Эти программы проверяют, имеется ли в файлах на указанном пользователем диске специфическая для данного вируса комбинация байтов. При ее обнаружении в каком-либо файле на экран выводится соответствующее сообщение. Многие детекторы имеют режим лечения вирусов или удаления вирусов.
Следует отметить, программа - детектор может обнаруживать только те вирусы, которые ей известны (т.е. занесены в антивирусную базу данных этой программы).
Одной из таких программ является KIS Касперского.
Все в ней отличается удобным и понятным интерфейсом. Программа выполнена для операционной системы Windows XP и Windows Vista, что позволяет ей работать параллельно с другими приложениями. «Лаборатория Касперского» является российским лидером в области разработки систем антивирусной безопасности.
Также существует AVAST.
Это проверенные в работе защитники вашего компьютера - лечение большинства вирусов и удаление вирусов в случае их критической угрозы или неизлечимости.
Большинство программ - детекторов имеют также и функцию "доктора", т.е. они пытаются вернуть зараженные файлы и области диска в их исходное состояние - лечить вирусы. Те файлы, которые не удалось лечить, как правило, делаются неработоспособными или удаляются.

Профилактика против заражения вирусом

Рассмотрим некоторые меры, которые позволяют уменьшить вероятность заражения компьютера вирусом, а также свести к минимуму ущерб от заражения вирусом, если оно все-таки произойдет.
1. Неплохо бы иметь и при необходимости обновлять архивные и эталонные копии используемых пакетов программ и данных. Перед архивацией данных целесообразно проверить их на наличие вируса.
2. Целесообразно так же скопировать на дискеты служебную информацию вашего диска (FAT, загрузочные сектора) и CMOS (энергонезависимая память компьютера). Копирование и восстановление подобной информации можно выполнить с помощью программы Rescue программного комплекса Norton Utilities.
3. Следует устанавливать защиту от записи на архивных дискетах.
4. Не следует заниматься нелицензионным и нелегальным копированием программного обеспечения с других компьютеров. На них может быть вирус.
5. Все данные, поступающие извне, стоит проверять на вирусы, особенно файлы, "скачанные" из Интернета.
6. Надо заблаговременно подготовить восстанавливающий пакет на дискетах с защитой от записи.
7. На время обычной работы, не связанной с восстановлением компьютера, стоит отключить загрузку с дискеты. Это предотвратит заражение загрузочным вирусом.
8. Используйте программы - фильтры для раннего обнаружения вирусов.
9. Периодически проверяйте диск программами -детекторами или докторами - детекторами или ревизорами для обнаружения возможных провалов в обороне.
10. Обновляйте базу антивирусных программ.
11. Не допускайте к компьютеру сомнительных пользователей.

ЗАКЛЮЧЕНИЕ

В заключение хотелось бы предостеречь от слишком рьяной борьбы с компьютерными вирусами. Ежедневный запуск полного сканирования жесткого диска на наличие вирусов так же не блестящий шаг в профилактике заражений. Единственный цивилизованный способ защиты от вирусов я вижу в соблюдении профилактических мер предосторожности при работе на компьютере. А так же нужно прибегать к помощи специалистов для борьбы с компьютерным вирусом. Кроме того, даже если вирус все-таки проник на компьютер, это не повод для паники.
Нередко главной бедой Интернета являются не вирусы и хакеры, а такое распространенное явление, как компьютерная безграмотность. Пользуясь аналогией Касперского, незнание правил дорожного движения. Люди, недавно научившиеся принимать и отправлять почту, демонизируют компьютерные вирусы, чуть ли не представляя их себе в виде невидимых черных червячков, ползающих по проводам. Вот несколько простых правил, соблюдая которые можно постараться избежать заражение вирусами. Первое: не боятся компьютерных вирусов, все они лечатся. Второе: перевести Microsoft Outlook в режим функционирования в зоне ограниченных узлов, что запретит ей автоматическое выполнение некоторых программ – основной принцип размножения компьютерных вирусов. Третье: не открывайте письма от подозрительных адресатов. Четвертое: использовать свежий, и что еще важнее, ЛИЦЕНЗИОННЫЙ антивирус.

Алгоритм работы файлового вируса

Получив управление, вирус совершает следующие действия (приведен список наиболее общих действий вируса при его выполнении; для конкретного вируса список может быть дополнен, пункты могут поменяться местами и значительно расшириться):

 резидентный вирус проверяет оперативную память на наличие своей копии и инфицирует память компьютера, если копия вируса не найдена. Нерезидентный вирус ищет незараженные файлы в текущем и (или) корневом оглавлении, в оглавлениях, отмеченных командой PATH, сканирует дерево каталогов логических дисков, а затем заражает обнаруженные файлы;

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

Метод восстановления программы в первоначальном виде зависит от способа заражения файла. Если вирус внедряется в начало файла, то он либо сдвигает коды зараженной программы на число байт, равное длине вируса, либо перемещает часть кода программы из ее конца в начало, либо восстанавливает файл на диске, а затем запускает его. Если вирус записался в конец файла, то при восстановлении программы он использует информацию, сохраненную в своем теле при заражении файла. Это может быть длина файла, несколько байт начала файла в случае COM-файла или несколько байтов заголовка в случае EXE-файла. Если же вирус записывается в середину файла специальным образом, то при восстановлении файла он использует еще и специальные алгоритмы.

Загрузочные вирусы

Загрузочные вирусы заражают загрузочный (boot) сектор флоппи-диска и boot-сектор или Master Boot Record (MBR) винчестера. Принцип действия загрузочных вирусов основан на алгоритмах запуска операционной системы при включении или перезагрузке компьютера - после необходимых тестов установленного оборудования (памяти, дисков и т.д.) программа системной загрузки считывает первый физический сектор загрузочного диска (A:, C: или CD-ROM в зависимости от параметров, установленных в BIOS Setup) и передает на него управление.

В случае дискеты или компакт-диска управление получает boot-сектор, который анализирует таблицу параметров диска (BPB - BIOS Parameter Block) высчитывает адреса системных файлов операционной системы, считывает их в память и запускает на выполнение. Если же на загрузочном диске отсутствуют файлы операционной системы, программа, расположенная в boot-секторе диска выдает сообщение об ошибке и предлагает заменить загрузочный диск.

В случае винчестера управление получает программа, расположенная в MBR винчестера. Эта программа анализирует таблицу разбиения диска (Disk Partition Table), вычисляет адрес активного boot-сектора (обычно этим сектором является boot-сектор диска C:), загружает его в память и передает на него управление. Получив управление, активный boot-сектор винчестера проделывает те же действия, что и boot-сектор внешнего носителя.

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

Заражение дискет производится единственным известным способом - вирус записывает свой код вместо оригинального кода boot-сектора дискеты. Винчестер заражается тремя возможными способами - вирус записывается либо вместо кода MBR, либо вместо кода boot-сектора загрузочного диска (обычно диска C:), либо модифицирует адрес активного boot-сектора в Disk Partition Table, расположенной в MBR винчестера.

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

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

Если продолжение вируса размещается в секторах, которые принадлежат свободным кластерам диска (при поиске этих секторов вирусу приходится анализировать таблицу размещения файлов - FAT), то, как правило, вирус помечает в FAT эти кластеры как сбойные (так называемые псевдосбойные кластеры). Этот способ используется вирусами “Brain”, “Ping-Pong” и некоторыми другими.

В вирусах семейства “Stoned” задействован другой метод. Эти вирусы размещают первоначальный загрузочный сектор в неиспользуемом или редко используемом секторе - в одном из секторов винчестера (если такие есть), расположенных между MBR и первым boot-сектором, а на дискете такой сектор выбирается из последних секторов корневого каталога.

Некоторые вирусы записывают свой код в последние сектора винчестера, поскольку эти сектора используются только тогда, когда винчестер полностью заполнен информацией (что является довольно редким явлением, если учесть размеры современных дисков). Реже используется метод сохранения продолжения вируса за пределами диска. Достигается это двумя способами. Первый сводится к уменьшению размеров логических дисков: вирус вычитает необходимые значения из соответствующих полей BPB boot-сектора и Disk Partition Table винчестера (если заражается винчестер), уменьшает размер логического диска и записывает свой код в “отрезанные” от него сектора.

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

Конечно, существуют и другие методы размещения вируса на диске, например, вирусы семейства “Azusa” содержат в своем теле стандартный загрузчик MBR и при заражении записываются поверх оригинального MBR без его сохранения.

При заражении большинство вирусов копирует в код своего загрузчика системную информацию, хранящуюся в первоначальном загрузчике (для MBR этой информацией является Disk Partition Table, для Boot-сектора дискет - BIOS Parameter Block). В противном случае система окажется неспособной загрузить себя, поскольку дисковые адреса компонент системы высчитываются на основе этой информации. Такие вирусы довольно легко удаляются переписыванием заново кода системного загрузчика в boot-секторе и MBR - для этого необходимо загрузиться с незараженной системной дискеты и использовать команды SYS для обезвреживания дискет и логических дисков винчестера или FDISK/MBR для лечения зараженного MBR-сектора.

Однако некоторые 100%-стелс вирусы не сохраняют эту информацию или даже более того - преднамеренно шифруют ее. При обращении системы или других программ к зараженным секторам вирус подставляет их незараженные оригиналы, и загрузка системы происходит без каких-либо сбоев, однако лечение MBR при помощи FDISK/MBR в случае такого вируса приводит к потере информации о разбиении диска (Disk Partition Table). В этом случае диск нужно переформатировать с потерей всей информации или восставить Disk Partition Table “вручную’, что требует определенной квалификации.

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

Пользователям новых операционных систем загрузочные вирусы также могут доставить неприятности. Несмотря на то, что перечисленные выше системы работают с дисками напрямую (минуя вызовы BIOS), что блокирует вирус и делает невозможным дальнейшее его распространение, код вируса все-таки, хоть и очень редко, получает управление при перезагрузке системы. Поэтому вирус “March6”, например, может годами “жить” в MBR сервера и никак не влиять при этом на работу и производительность компьютерной системы. Однако при случайной перезагрузке 6-го марта этот вирус полностью уничтожит все данные на диске.

Алгоритм работы загрузочного вируса

Практически все загрузочные вирусы резидентны. Они внедряются в память компьютера при загрузке с инфицированного диска. При этом системный загрузчик считывает содержимое первого сектора диска, с которого производится загрузка, помещает считанную информацию в память и передает на нее (т.е. на вирус) управление. После этого начинают выполняться инструкции вируса:

 как правило, уменьшает объем свободной памяти, копирует в освободившееся место свой код и считывает с диска свое продолжение (если оно есть). В дальнейшем некоторые вирусы “ждут” загрузки операционной системы и восстанавливают размер памяти в первоначальное значение. В результате они оказываются расположенными не за пределами операционной системы, а как отдельные блоки памяти, выделяемые под систему.

 перехватывает необходимые вектора прерываний (обычно INT 13H), считывает в память оригинальный boot-сектор и передает на него управление.

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

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

Макро-вирусы

Макро-вирусы (macro viruses) являются программами на языках (макро-языках), встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы), анимации и т.д. Для своего размножения такие вирусы используют возможности макро-языков и при их помощи переносят себя из одного зараженного файла (документа) в другие. Наибольшее распространение получили макро-вирусы для Microsoft Word, Excel и Office. Существуют также макро-вирусы, заражающие документы Ami Pro и базы данных Microsoft Access, Flash-анимацию. На сегодняшний день известно множество систем, для которых существуют макро-вирусы. В этих системах вирусы получают управление при открытии или закрытии зараженного файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом идет обращение.

Для существования вирусов в конкретной системе (редакторе) необходимо наличие встроенного в систему макроязыка с возможностями:

 привязки программы на макроязыке к конкретному файлу;

 копирования макропрограмм из одного файла в другой;

 возможность получения управления макро-программой без вмешательства пользователя (автоматические или стандартные макросы).

Данным условиям удовлетворяют редакторы Microsoft Word, Office и AmiPro, а также электронная таблица Excel и база данных Microsoft Access. Эти системы содержат в себе макроязыки: Word, Excel, Access, Office - Visual Basic for Applications. При этом:

 макропрограммы привязаны к конкретному файлу (AmiPro) или находятся внутри файла (Word, Excel, Office);

 макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы и редактируемые файлы (Word, Excel, Office);

 при работе с файлом при определенных условиях (открытие, закрытие и т.д.) вызываются макропрограммы (если таковые есть), которые определены специальным образом (AmiPro) или имеют стандартные имена (Word, Excel, Office).

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

Физическое расположение вируса внутри файла зависит от его формата, который в случае продуктов Microsoft чрезвычайно сложен - каждый файл-документ Word или таблица Excel представляют собой последовательность блоков данных (каждый из которых также имеет свой формат), объединенных между собой при помощи большого количества служебных данных. Этот формат носит название OLE2 - Object Linking and Embedding.

Большинство известных вирусов для Word несовместимы с национальными (в том числе с русской) версиями Word, или наоборот - рассчитаны только на локализованные версии Word и не работают под другой языковой версией. Однако вирус в документе все равно остается активным и может заражать другие компьютеры с установленной на них соответствующей версией Word.

Вирусы для Word могут заражать компьютеры любого класса, а не только IBM PC. Заражение возможно в том случае, если на данном компьютере установлен текстовый редактор, полностью совместимый с Microsoft Word.

Следует также отметить, что сложность форматов документов Word, таблиц Excel и особенно Office имеет следующую особенность: в файлах-документах и таблицах присутствуют “лишние” блоки данных, т.е. данные, которые никак не связаны с редактируемым текстом или таблицами, либо являются случайно оказавшимися там копиями прочих данных файла. Причиной возникновения таких блоков данных является кластерная организация данных в OLE2-документах и таблицах - даже если введен всего один символ текста, то под него выделяется один или даже несколько кластеров данных. При сохранении документов и таблиц в кластерах, не заполненных “полезными” данными, остается “мусор”, который попадает в файл вместе с прочими данными.

Следствием этого является тот факт, что при редактировании документа его размер изменяется вне зависимости от производимых с ним действий - при добавлении нового текста размер файла может уменьшиться, а при удалении части текста - увеличиться. То же и с макро-вирусами: при заражении файла его размер может уменьшиться, увеличиться или остаться неизменным.

При работе с документом Word любой версии выполняет различные действия: открывает документ, сохраняет, печатает, закрывает и т.д. При этом Word ищет и выполняет соответствующие “встроенные макросы” - при сохранении файла по команде File/Save вызывается макрос FileSave, при сохранении по команде File/SaveAs - FileSaveAs, при печати документов - FilePrint и т.д., если, конечно, таковые макросы определены.

Существует также несколько “авто-макросов”, автоматически вызываемые при различных условиях. Например, при открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose, при запуске Word вызывается макрос AutoExec, при завершении работы - AutoExit, при создании нового документа - AutoNew.

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

Автоматически (т.е. без участия пользователя) выполняются также макросы/функции, ассоциированные с какой-либо клавишей либо моментом времени или датой, т.е. Word/Excel вызывают макрос/функцию при нажатии на какую-либо конкретную клавишу (или комбинацию клавиш) либо при достижении какого-либо момента времени. В Office возможности по перехвату событий несколько расширены, но принцип используется тот же.

Макро-вирусы, поражающие файлы Word, Excel или Office, как правило, пользуются одним из трех перечисленных выше приемов - в вирусе либо присутствует авто-макрос (авто-функция), либо переопределен один из стандартных системных макросов (ассоциированный с каким-либо пунктом меню), либо макрос вируса вызывается автоматически при нажатии на какую-либо клавишу или комбинацию клавиш. Существуют также полувирусы, которые не используют всех этих приемов и размножаются, только когда пользователь самостоятельно запускает их на выполнение.

Таким образом, если документ заражен, при открытии документа Word вызывает зараженный автоматический макрос AutoOpen (или AutoClose при закрытии документа) и, таким образом, запускает код вируса, если это не запрещено системной переменной DisableAutoMacros. Если вирус содержит макросы со стандартными именами, они получают управление при вызове соответствующего пункта меню (File/Open, File/Close, File/SaveAs). Если же переопределен какой-либо символ клавиатуры, то вирус активизируется только после нажатия на соответствующую клавишу.

Большинство макро-вирусов содержат все свои функции в виде стандартных макросов Word/Excel/Office. Существуют, однако, вирусы, использующие приемы скрытия своего кода и хранящие свой код в виде не-макросов. Известно три подобных приема, все они используют возможность макросов создавать, редактировать и исполнять другие макросы. Как правило, подобные вирусы имеют небольшой (иногда - полиморфный) макрос-загрузчик вируса, который вызывает встроенный редактор макросов, создает новый макрос, заполняет его основным кодом вируса, выполняет и затем, как правило, уничтожает (чтобы скрыть следы присутствия вируса). Основной код таких вирусов присутствует либо в самом макросе вируса в виде текстовых строк (иногда - зашифрованных), либо хранится в области переменных документа или в области Auto-text.

Алгоритм работы Word макро-вирусов

Большинство известных Word-вирусов при запуске переносят свой код (макросы) в область глобальных макросов документа (“общие” макросы), для этого они используют команды копирования макросов MacroCopy, OrganizerCopy либо при помощи редактора макросов - вирус вызывает его, создает новый макрос, вставляет в него свой код, который и сохраняет в документе.

При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, при следующем запуске редактора MS-Word вирус активизируется в тот момент, когда WinWord грузит глобальные макросы, т.е. сразу.

Затем вирус переопределяет (или уже содержит в себе) один или несколько стандартных макросов (например, FileOpen, FileSave, FileSaveAs, FilePrint) и перехватывает, таким образом, команды работы с файлами. При вызове этих команд вирус заражает файл, к которому идет обращение. Для этого вирус конвертирует файл в формат Template (что делает невозможной дальнейшие изменения формата файла, т.е. конвертирование в какой-либо не-Template формат) и записывает в файл свои макросы, включая Auto-макрос.

Таким образом, если вирус перехватывает макрос FileSaveAs, то заражается каждый DOC-файл, сохраняемый через перехваченный вирусом макрос. Если перехвачен макрос FileOpen, то вирус записывается в файл при его считывании с диска.

Второй способ внедрения вируса в систему используется значительно реже - он базируется на так называемых “Add-in” файлах, т.е. файлах, являющихся служебными дополнениями к Word. В этом случае NORMAL.DOT не изменяется, а Word при запуске загружает макросы вируса из файла (или файлов), определенного как “Add-in”. Этот способ практически полностью повторяет заражение глобальных макросов за тем исключением, что макросы вируса хранятся не в NORMAL.DOT, а в каком-либо другом файле.

Возможно также внедрения вируса в файлы, расположенные в каталоге STARTUP, - Word автоматически подгружает файлы-темплейты из этого каталога.

Алгоритм работы Excel макро-вирусов

Методы размножения Excel-вирусов в целом аналогичны методам Word-вирусов. Различия заключаются в командах копирования макросов (например, Sheets.Copy) и в отсутствии NORMAL.DOT - его функцию (в вирусном смысле) выполняют файлы в STARTUP-каталоге Excel.

Полиморфные вирусы

К полиморфным вирусам относятся те из них, детектирование которых невозможно (или крайне затруднительно) осуществить при помощи так называемых вирусных масок - участков постоянного кода, специфичных для конкретного вируса. Достигается это двумя основными способами - шифрованием основного кода вируса с непостоянным ключом и случайным набором команд расшифровщика или изменением самого выполняемого кода вируса. Существуют также другие, достаточно экзотические примеры полиморфизма - DOS-вирус “Bomber”, например, не зашифрован, однако последовательность команд, которая передает управление коду вируса, является полностью полиморфной.

Полиморфизм различной степени сложности встречается в вирусах всех типов - от загрузочных и файловых DOS-вирусов до Windows-вирусов и даже макро-вирусов.

Полиморфные расшифровщики

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

MOV reg_1, count ; reg_1, reg_2, reg_3 выбираются из

MOV reg_2, key ; AX,BX,CX,DX,SI,DI,BP

MOV reg_3, _offset ; count, key, _offset также могут меняться

xxx byte ptr , reg_2 ; xor, add или sub

Более сложные полиморфные вирусы используют значительно более сложные алгоритмы для генерации кода своих расшифровщиков: приведенные выше инструкции (или их эквиваленты) переставляются местами от заражения к заражению, разбавляются ничего не меняющими командами типа NOP, STI, CLI, STC, CLC, DEC неиспользуемый регистр, XCHG неиспользуемые регистры и т.д.

Полноценные же полиморфные вирусы используют еще более сложные алгоритмы, в результате работы которых в расшифровщике вируса могут встретиться операции SUB, ADD, XOR, ROR, ROL и другие в произвольном количестве и порядке. Загрузка и изменение ключей и других параметров шифровки производится также произвольным набором операций, в котором могут встретиться практически все инструкции процессора Intel (ADD, SUB, TEST, XOR, OR, SHR, SHL, ROR, MOV, XCHG, JNZ, PUSH, POP ...) со всеми возможными режимами адресации.

В результате в начале файла, зараженного подобным вирусом, идет набор бессмысленных на первый взгляд инструкций, причем некоторые комбинации, которые вполне работоспособны, не берутся фирменными дизассемблерами (например, сочетание CS:CS: или CS:NOP). И среди этой “каши” из команд и данных изредка проскальзывают MOV, XOR, LOOP, JMP - инструкции, которые действительно являются “рабочими”.

Уровни полиморфизма

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

Уровень 1: вирусы, которые имеют некоторый набор расшифровщиков с постоянным кодом и при заражении выбирают один из них. Такие вирусы являются “полу-полиморфными” и носят также название “олигоморфные” (oligomorphic). Примеры: “Cheeba”, “Slovakia”, “Whale”.

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

Уровень 3: расшифровщик содержит неиспользуемые инструкции – “мусор” типа NOP, CLI, STI и т.д.

Уровень 4: в расшифровщике используются взаимозаменяемые инструкции и изменение порядка следования (перемешивание) инструкций. Алгоритм расшифрования при этом не изменяется.

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

Уровень 6: permutating-вирусы. Изменению подлежит основной код вируса - он делится на блоки, которые при заражении переставляются в произвольном порядке. Вирус при этом остается работоспособным. Подобные вирусы могут быть незашифрованны.

Приведенное выше деление не свободно от недостатков, поскольку производится по единственному критерию - возможность детектировать вирус по коду расшифровщика при помощи стандартного приема вирусных масок:

 Уровень 1: для детектирования вируса достаточно иметь несколько масок.

 Уровень 2: детектирование по маске с использованием “wildcards”.

 Уровень 3: детектирование по маске после удаления инструкций – “мусора”.

 Уровень 4: маска содержит несколько вариантов возможного кода, т.е. становится алгоритмической.

 Уровень 5: невозможность детектирования вируса по маске.

Недостаточность такого деления продемонстрирована в вирусе 3-го уровня полиморфичности, который так и называется – “Level3’. Этот вирус, являясь одним из наиболее сложных полиморфных вирусов, по приведенному выше делению попадает в Уровень 3, поскольку имеет постоянный алгоритм расшифровки, перед которым стоит большое количество команд- “мусора”. Однако в этом вирусе алгоритм генерирования “мусора” доведен до совершенства: в коде расшифровщика могут встретиться практически все инструкции процессора i8086.

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

Изменение выполняемого кода

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

Реже этот способ применяется сложными загрузочными вирусами. Такие вирусы внедряют в загрузочные сектора лишь достаточно короткую процедуру, которая считывает и диска основной код вируса и передает на него управление. Код этой процедуры выбирается из нескольких различных вариантов (которые также могут быть разбавлены “пустыми” командами), команды переставляются между собой и т.д.

Еще реже этот прием встречается у файловых вирусов - ведь им приходится полностью менять свой код, а для этого требуются достаточно сложные алгоритмы. На сегодняшний день известны всего два таких вируса, один из которых (“Ply”) случайным образом перемещает свои команды по своему телу и заменяет их на команды JMP или CALL. Другой вирус (“TMC”) использует более сложный способ - каждый раз при заражении вирус меняет местами блоки своего кода и данных, вставляет “мусор”, в своих ассемблерных инструкциях устанавливает новые значения смещений на данные, меняет константы и т.д. В результате, хотя вирус и не шифрует свой код, он является полиморфным вирусом - в коде не присутствует постоянного набора команд. Более того, при создании своих новых копий вирус меняет свою длину.



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows