Классификация вирусовНаверняка ваши самые неприятные воспоминания о сети Интернет и компьютерах связаны с так называемыми компьютерными вирусами. Эти вирусы, похоже, стали неотъемлемой частью нашей компьютерной жизни. Сегодня о вирусах знают все, даже те, кто никогда не путешествовал по Сети, более того, кто никакого отношения к компьютерам не имеет - сообщения о нашествии "I Love You" прошли по всем телевизионным каналам. В наступающую эпоху тотальной компьютеризации и повсеместного использования Интернет распространение всевозможных "червей" вызывает серьезнейшие опасения. Защита корпоративных сетей становится настолько актуальной, что борьба с вирусами приравнивается к борьбе с терроризмом. Для начала немного истории. Первое упоминание о компьютерных вирусах было зафиксировано еще в конце 60-х. На мейнфреймах того времени периодически появлялись программы, которые получили название "кролик" (the rabbit). Эти программы клонировали себя, занимали системные ресурсы и таким образом снижали производительность системы. Скорее всего "кролики" не передавались от системы к системе и являлись сугубо местными явлениями - ошибками или шалостями системных программистов, обслуживавших компьютер. Первый же инцидент, который смело можно назвать эпидемией "компьютерного вируса", произошел в системе Univax 1108. Вирус, получивший название "Pervading Animal", дописывал себя к выполняемым файлам, т.е. во многом делал то же самое, что и тысячи современных компьютерных вирусов. Далее события разворачивались стремительно: каждый год появлялись все новые вирусы и новые алгоритмы их написания. Первая революция в мире вирусов произошла в начале 1970 года, когда под операционную систему Tenex был создан вирус "The Creeper", использовавший для своего распространения глобальные компьютерные сети. Вирус был в состоянии самостоятельно войти в сеть через модем и передать свою копию удаленной системе. Для борьбы с этим вирусом была создана программа "The Reeper" - первая известная антивирусная программа. Самым же интересным является то, что вплоть до конца 80-х большинство пользователей компьютеров отказывались верить в существование вирусов. Показателен тот факт, что даже компьютерный гуру - человек-легенда Питер Нортон - высказывался против существования вирусов. Он объявил их несуществующим мифом и сравнил со сказками о крокодилах, живущих в канализации Нью-Йорка. Этот казус, однако, не помешал фирме Symantec через некоторое время начать собственный антивирусный проект - Norton Anti-Virus, который и сейчас пользуется огромной популярностью пользователей всего мира. Подробную хронологию событий развития вирусов и антивирусного софта можно прочитать по адресу http://www.viruslist.com/ (сайт поддерживает два языка - русский и английский). Также о событиях в мире компьютерных вирусов можно узнать на сайте http://www.virusbtn.com/, а о программах троянцев на http://www.trojan.ru/. Что касается точного определения компьютерного вируса, то сформулировать его очень сложно, потому как некоторые отличительные черты вируса, такие, как внедрение в другие объекты, скрытность, потенциальная опасность и прочее, либо присущи другим программам, которые никоим образом вирусами не являются, либо отсутствуют в самих вирусах. Основная же особенность компьютерных вирусов - возможность их самопроизвольного внедрения в различные объекты операционной системы - присуща многим программам, которые вирусами не являются. Хотя определение вирусов вывести достаточно затруднительно, их типологию проследить можно. Вирусы делятся на виды (загрузочные, файловые, макровирусы, полиморфик-вирусы, стелс-вирусы, резидентные, прочие вредные программы, IRC-черви и сетевые) и классы (среда обитания, операционная система (OC), особенности алгоритма работы, деструктивные возможности). По СРЕДЕ ОБИТАНИЯ вирусы можно разделить на:
Заражаемая ОПЕРАЦИОННАЯ СИСТЕМА (вернее, ОС, объекты которой подвержены заражению) является вторым уровнем деления вирусов на классы. Каждый файловый или сетевой вирус заражает файлы какой-либо одной или нескольких OS - DOS, Windows, Win95/NT, OS/2 и т.д. Макровирусы заражают файлы форматов Word, Excel, Office97. Загрузочные вирусы также ориентированы на конкретные форматы расположения системных данных в загрузочных секторах дисков. Среди ОСОБЕННОСТЕЙ АЛГОРИТМА РАБОТЫ вирусов выделяются следующие пункты:
По ДЕСТРУКТИВНЫМ ВОЗМОЖНОСТЯМ вирусы можно разделить на:
Но даже если в алгоритме вируса не найдено ветвей, наносящих ущерб системе, этот вирус нельзя с полной уверенностью назвать безвредным, так как проникновение его в компьютер может вызвать непредсказуемые и порой катастрофические последствия. Ведь вирус, как и всякая программа, имеет ошибки, в результате которых могут быть испорчены как файлы, так и секторы дисков (например, вполне безобидный, на первый взгляд, вирус "DenZuk" довольно корректно работает с 360K дискетами, но может уничтожить информацию на дискетах большего объема). Рассмотрим каждый вид вирусов подробнее: Загрузочные вирусы заражают загрузочный (boot) сектор флоппи-диска и boot-сектор или Master Boot Record (MBR) винчестера. Принцип действия загрузочных вирусов основан на алгоритмах запуска операционной системы при включении или перезагрузке компьютера - после необходимых тестов установленного оборудования (памяти, дисков и т.д.) программа системной загрузки считывает первый физический сектор загрузочного диска (A:, C: или CD-ROM в зависимости от параметров, установленных в BIOS Setup) и передает на него управление. При заражении дисков загрузочные вирусы "подставляют" свой код вместо какой-либо программы, получающей управление при загрузке системы. Принцип заражения, таким образом, одинаков ко всем носителям: вирус "заставляет" систему при ее перезапуске считать в память и отдать управление не оригинальному коду загрузчика, но коду вируса. Файловые вирусы. К данной группе относятся вирусы, которые при своем размножении тем или иным способом используют файловую систему какой-либо (или каких-либо) ОС. Внедрение файлового вируса возможно практически во все исполняемые файлы всех популярных ОС. На сегодняшний день известны вирусы, поражающие все типы выполняемых объектов стандартной DOS: командные файлы (BAT), загружаемые драйверы (SYS, в том числе специальные файлы IO.SYS и MSDOS.SYS) и выполняемые двоичные файлы (EXE, COM). Существуют вирусы, поражающие исполняемые файлы других операционных систем - Windows 3.x, Windows 95/NT, OS/2, Macintosh, UNIX, включая VxD-драйверы Windows 3.x и Windows 95.Существуют вирусы, заражающие файлы, которые содержат исходные тексты программ, библиотечные или объектные модули. Возможна запись вируса и в файлы данных, но это случается либо в результате ошибки вируса, либо при проявлении его агрессивных свойств. Макровирусы являются программами на языках (макро-языках), встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). Для своего размножения такие вирусы используют возможности макроязыков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие. Наибольшее распространение получили макровирусы для Microsoft Word, Excel и Office97. Существуют также макровирусы, заражающие документы Ami Pro и базы данных Microsoft Access. К полиморфик-вирусам относятся те из них, детектирование которых невозможно (или крайне затруднительно) осуществить при помощи так называемых вирусных масок - участков постоянного кода, специфичных для конкретного вируса. Полиморфизм различной степени сложности встречается в вирусах всех типов - от загрузочных и файловых DOS-вирусов до Windows-вирусов и даже макровирусов. Стелс-вирусы тем или иным способом скрывают факт своего присутствия в системе. Известны стелс-вирусы всех типов, за исключением Windows-вирусов - загрузочные вирусы, файловые DOS-вирусы и даже макровирусы. Появление стелс-вирусов, заражающих файлы Windows, является скорее всего делом времени. Под термином "резидентность" (DOS'овский термин TSR - Terminate and Stay Resident) понимается способность вирусов оставлять свои копии в системной памяти, перехватывать некоторые события (например, обращения к файлам или дискам) и вызывать при этом процедуры заражения обнаруженных объектов (файлов и секторов). Таким образом, резидентные вирусы активны не только в момент работы зараженной программы, но и после того, как программа закончила свою работу. К "вредным программам", помимо вирусов, относятся также "троянские кони" (логические бомбы), хакерские утилиты скрытого администрирования удаленных компьютеров ("backdoor"), программы, "ворующие" пароли доступа к ресурсам Интернет и прочую конфиденциальную информацию; а также "intended" -вирусы, конструкторы вирусов и полиморфик-генераторы. К "троянским коням" относятся программы, наносящие какие-либо разрушительные действия, т.е. в зависимости от каких-либо условий или при каждом запуске уничтожающие информацию на дисках, "завешивающие" систему и т.п. Также к данному типу вирусов можно отнести "дропперы" вирусов - зараженные файлы, код которых подправлен таким образом, что известные версии антивирусов не определяют вируса в файле. Например, файл шифруется каким-либо специальным образом или упаковывается редко используемым архиватором, что не позволяет антивирусу "увидеть" заражение. Следует отметить также "злые шутки" (hoax). К ним относятся программы, которые не причиняют компьютеру какого-либо прямого вреда, однако выводят сообщения о том, что такой вред уже причинен, либо будет причинен при каких-либо условиях, либо предупреждают пользователя о несуществующей опасности. К такой же категории "злых шуток" можно отнести также заведомо ложные сообщения о новых супервирусах. Такие сообщения периодически появляются в электронных конференциях и обычно вызывают панику среди пользователей. Утилиты скрытого администрирования. "Троянские кони" этого класса по своей сути являются достаточно мощными утилитами удаленного администрирования компьютеров в сети. По своей функциональности они во многом напоминают различные системы администрирования, разрабатываемые и распространяемые различными фирмами-производителями программных продуктов. Единственная особенность этих программ заставляет классифицировать их как вредные троянские программы: отсутствие предупреждения об инсталляции и запуске. При запуске троянец устанавливает себя в системе и затем следит за ней, при этом пользователю не выдается никаких сообщений о действиях троянца в системе. Более того, ссылка на троянца может отсутствовать в списке активных приложений. В результате "пользователь" этой троянской программы может и не знать о ее присутствии в системе, в то время как его компьютер открыт для удаленного управления. Будучи установленными на компьютер, утилиты скрытого управления позволяют делать с компьютером все, что в них заложил их автор: принимать/отсылать файлы, запускать и уничтожать их, выводить сообщения, стирать информацию, перезагружать компьютер и т.д. В результате эти троянцы могут быть использованы для обнаружения и передачи конфиденциальной информации, для запуска вирусов, уничтожения данных и т.п. - пораженные компьютеры оказываются открытыми для злоумышленных действий хакеров. Intended-вирусы. К таким вирусам относятся программы, которые на первый взгляд являются стопроцентными вирусами, но не способны размножаться по причине ошибок. Например, вирус, который при заражении "забывает" поместить в начало файлов команду передачи управления на код вируса, либо записывает в нее неверный адрес своего кода, либо неправильно устанавливает адрес перехватываемого прерывания (что в подавляющем большинстве случаев завешивает компьютер) и т.д. К категории "intended" также относятся вирусы, которые, по приведенным выше причинам, размножаются только один раз - из "авторской" копии. Заразив какой-либо файл, они теряют способность к дальнейшему размножению. Появляются intended-вирусы чаще всего при неумелой перекомпиляции какого-либо уже существующего вируса, либо по причине недостаточного знания языка программирования, либо по причине незнания технических тонкостей операционной системы. Конструктор вирусов - это утилита, предназначенная для изготовления новых компьютерных вирусов. Известны конструкторы вирусов для DOS, Windows и макровирусов. Они позволяют генерировать исходные тексты вирусов (ASM-файлы), объектные модули, и/или непосредственно зараженные файлы. Полиморфик-генераторы, как и конструкторы вирусов, не являются вирусами в прямом смысле этого слова, поскольку в их алгоритм не закладываются функции размножения, т.е. открытия, закрытия и записи в файлы, чтения и записи секторов и т.д. Главной функцией подобного рода программ является шифрование тела вируса и генерация соответствующего расшифровщика. Обычно полиморфные генераторы распространяются их авторами без ограничений в виде файла-архива. Основным файлом в архиве любого генератора является объектный модуль, содержащий этот генератор. Во всех встречавшихся генераторах этот модуль содержит внешнюю (external) функцию - вызов программы генератора. Таким образом, автору вируса, если он желает создать настоящий полиморфик-вирус, не приходится корпеть над кодами собственного за/расшифровщика. При желании он может подключить к своему вирусу любой известный полиморфик-генератор и вызывать его из кодов вируса. Физически это достигается следующим образом: объектный файл вируса линкуется с объектным файлом генератора, а в исходный текст вируса перед командами его записи в файл вставляется вызов полиморфик-генератора, который создает коды расшифровщика и шифрует тело вируса. IRC (Internet Relay Chat) - это специальный протокол, разработанный для коммуникации пользователей Интернета в реальном времени. Этот протокол предоставляет возможность Интернет-"разговора" при помощи специально разработанного программного обеспечения. IRC чем-то похож на телефонный разговор, за исключением того, что в нем могут участвовать более двух собеседников, объединяющихся по интересам в различные группы IRC-конференций. Помимо посещения общих (public) конференций пользователи IRC имеют возможность общаться один на один с любым другим пользователем (private), при этом они даже не обязательно должны быть на одном канале. Кроме этого существует довольно большое количество IRC-команд, при помощи которых пользователь может получить информацию о других пользователях и каналах, изменять некоторые установки IRC-клиента и прочее. Существует также возможность передавать и принимать файлы - именно на этой возможности и базируются IRC-черви. К сетевым относятся вирусы, которые для своего распространения активно используют протоколы и возможности локальных и глобальных сетей. Основным принципом работы сетевого вируса является возможность самостоятельно передать свой код на удаленный сервер или рабочую станцию. "Полноценные" сетевые вирусы при этом обладают еще и возможностью запустить на выполнение свой код на удаленном компьютере или, по крайней мере, "подтолкнуть" пользователя к запуску зараженного файла. О том, какие вирусы бывают, можно также узнать на http://rusdoc.ru/viruses.shtml, там же расположен большой справочник по компьютерным вирусам. (Н.Н.Безрукова. "Компьютерная вирусология. Описания и часто задаваемые вопросы по программам-троянам".) Также можно заглянуть на http://www.virus.da.ru/, там вы найдете статьи о классификации вирусов по типам, описание действия загрузочных, файловых, резидентных, полиморфных и др. вирусов, ссылки на сайты о вирусах. Вирусов огромное количество, как же с ними бороться? Антивирусных программ сейчас разработано предостаточно, причем не только иностранного производства, но и российского. Более того, среди российских антивирусных программ есть продукты, признанные во всем мире. Это антивирус Касперского - Antiviral Toolkit Pro. На сайте "Лаборатории Касперского" можно узнать информацию о появлении новых вирусов и как с ними бороться. Там же находится вирусная библиотека. Проводятся различные конкурсы. В отличие от конкурентов, например Doctor Web, AVP предоставляет возможность пополнять антивирусную базу даже тем людям, которые не имеют выхода в Интернет. Существуют официальные BBS, с которых и можно списать последние обновления. Об этих и других программных продуктах можно узнать на http://www.antiviruspro.ru/. Есть также сайт http://www.dialognauka.ru/, на нем вы найдете информацию о фирме. Новости "антивирусного фронта". Обзор программ. Рассказ о новых разработках. Публикации. Проверка на вирусы on-line. Версии антивирусных программ. Обновления вирусных баз DrWeb. Интернет-подписка на коммерческие версии программ. Также можно ознакомиться с другими антивирусными продуктами, например, по адресу www.spbnet.spb.ru/drnet - Сведения о комплекте программных средств для антивирусной защиты пользователей Интернета - DrNet32. Некоторыми программами можно воспользоваться бесплатно. Или вот, например, сайт http://www.adinf.ru/. Здесь можно найти описание антивируса-ревизора, свободно распространяемые версии программы, а также ответы на вопросы пользователей. Вирусов изобретено много, возможно, кому-то доставляет удовольствие портить оборудование совершенно незнакомых людей ради строчки в новостях. Может, в новостях о них и напишут, но вряд ли слова благодарности. Тот, кто говорит, что на сегодняшний день самый верный способ не подхватить вирус - это бдительность, ошибается. Хотя большая часть данного обзора посвящена вирусам, надеемся, что вы нашли достаточно информации и о тех, кто пытается противостоять Интернет-террористам и разрабатывает антивирусные защиты, чтобы вы могли путешествовать по Сети без боязни. Станислав Кноп |
P.S. Лично от Max_Ni.
Меня всегда удивляли люди, которые устанавливали Касперского?!...
Возможно они просто не видели других антивирусов, например Dr.Web. Мне кажется, что любой, увидивший простоту использования,
легкость установки и удаления программы, его эффектиность в обнаружении вирусов... сразу же забудет о Касперском на всю
оставшуюся жизнь! Действительно, для меня, самым лучшим антивирусом являетяс Dr.Web, а Касперского я никогда не ставлю. Однажды попробовал,
увидел какакя это громоздкая штуковина... и все. Тем более было столько нареканий по поводу глюков и несовместимостей.
А Dr.Web за все время, что я им пользуюсь ни разу меня не подвел (а это где-то лет 7). Так что делайте выводы. Главная
задача антивируса - не его раскрученность и "крутость", а его эффективность! Если кто-то ругает Dr.Web, то этот человек
как правило ссылается на то, что программа не раскручена. Не знаю, но среди профессионалов Dr.Web цениться намного баольше,
а над Касперским многие откровенно смеются. Взять хотя бы интерфейс программы или процесс установки. Чтобы понять как же
проверить всего одну папку в Касперском надо хотя бы 10 минут и при установке он у вас пропишется везде где только
можно: в корневом каталоге, в редакторе реестра, в автозагрузке... сами понимаете, у Dr.Web таких проблем нет, может быть
поэтому он и не раскручен?! Ведь чтобы поставить/убрать Dr.Web в автозагрузку достаточно поставить/убрать всего одну
галочку, а чтобы убрать Касперского надо либо самому изучать редактор реестра и многое другое, или вызывать специалистов
;-)