Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Классификация вирусов.docx
Скачиваний:
80
Добавлен:
01.06.2015
Размер:
264.33 Кб
Скачать

Компьютерные вирусы

3.1 Общие понятия, структура и классификация

3.1.1 Когда появились компьютерные вирусы?

Официально считают, что впервые термин "компьютерные вирусы" был употреблен на 7-й конференции по безопасности информации, проходившей в США в 1984 году.

Доктор Фредерик Коэн (Dr. Frederic Cohen), сотрудник университета г.Цинциннати (штат Огайо) в течение ряда лет работал над проблемой защиты программного обеспечения от нелегального копирования. Он написал небольшую программу, которая обладала способностью к самовоспроизведению и совершению различных деструктивных функций: стиранию важной информации на системном диске, уничтожению файлов, изменению системных переменных в оперативной памяти ЭВМ и т.д. Эта программа активизировалась в случае незаконного копирования исходной авторской программы, как бы в отместку тем, кто пытался воспользоваться результатами чужого труда.

После публикации материалов 7-й конференции по безопасности информации, работа Фредерика Коэна, естественно, привлекла широкое внимание специалистов.

Теперь, конечно, нельзя с уверенностью сказать, что эта публикация стала толчком к распространению программ-вирусов, но именно с этого момента компьютерные вирусы стали широко распространяться по странам Западной Европы и США.

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

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

Достаточно серьезное математическое исследование вирусов было опубликовано в материалах конференции CRYPTO-88. Это исследование провел научный руководитель Фредерика Коэна доктор Леонард Адлеман (Dr. Leonard M. Adleman). Он построил формальную модель компьютерных вирусов на основе теории рекурсивных функций и геделевских нумераций.

Вирусы распространялись, появлялись все новые и новые. Необходимо было, чтобы информация о вирусах становилась известной широкому кругу специалистов. В Великобритании в 1989 году был основан первый журнал о компьютерных вирусах, который назывался "Virus Bulletin". В том же году появился и первый вирус на территории бывшего СССР.

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

3.1.2 Вредоносные программы

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

Рис. 3.1 Классификация вредоносных программ

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

ЛЮК или лазейка, — это секретная точка входа в программу, позволяющая тому, кто знает о существовании люка, получить доступ в обход стандартных процедур защиты. Люки уже много лет совершенно законно используются в программистской практике для ускорения отладки и тестирования программ. Эта возможность обычно применяется программистом при создании приложе­ ния, в состав которого входит процедура аутентификации или слишком долгая программа установки, требующая от пользователя ввода множества различных параметров для запуска программы. Чтобы ускорить процесс отладки, разработ чик может воспользоваться специальным уровнем привилегий или обойти про цедуру установки или аутентификации. Для программиста удобно иметь возможность запустить программу тогда, когда по причине каких-то неполадок встроенная процедура аутентификации не позволяет этого сделать. Люк пред ставляет собой программный код, реагирующий на специальную последователь ность введенных с клавиатуры символов, либо активизирующийся в ответ ввод определенного идентификатора пользователя или последовательность каких-то маловероятных событий. Люки представляют собой угрозу, когда они позволяют недобросовестным программистам получить несанкционированный доступ.

ЛОГИЧЕСКИЕ БОМБЫ – представляют собой программный код, внедренный в какую-то полезную программу, который должен "взорваться" при выполнении определенных условий.Примером условий, которые запускают логическую бомбу, могут быть присутствие или от сутствие каких-то файлов, наступление определенного дня недели или определен­ной даты, имя конкретного пользователя, инициировавшего запуск приложения. После запуска бомба может изменять или удалять данные файлов, вызывать зависание машины или выполнять какие-то другие раз­рушительные действия.

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

ВИРУСЫ - представляют собой программу, которая может "инфицировать" другие программы путем их модификации. В модифицированный код включается код вируса, с помощью которого вирус может "заразить" другие программы. Биологические вирусы являются небольшими фрагментами генетического кода — ДНК или РНК, — использующими механизм жизнедеятельности живой клетки для создания тысяч абсолютных копий оригинального вируса. Подобно своему биологическому двойнику, компьютерный вирус несет в своем программном коде рецепт создания совершенных копий самого себя. Внесенный в компьютерную систему, типичный вирус временно захватывает управление дисковой операционной системой компьютера.Затем при каждом контакте зараженного компьютера с незараженным программным обеспечением очередная копия вируса помещается в новую программу. Таким образом, инфекция может передаваться от компьютера к компьютеру ничего не подозревающими пользователями, обменивающимися содержимым магнитных дисков или пересылающими программы по сети.

"ЧЕРВИ" - используют сетевые соединения для распространения от одной системы к другой.Во время работы на отдельном компьютере сетевой "червь" может вести себя как компьютерный вирус или "бактерия", внедрять "троянских коней", или же выполнять какие-то другие разрушительные или подрывные действия. Для размножения сетевой "червь" использует сетевые средства доставки информации. Сетевой "червь" во многом подобен компьютерному вирусу — у него тоже есть инкубационный период, фаза распространения, фаза активизации и фаза выполнения. В фазе распространения обычно выполняются следующие функции:

  • поиск других подходящих для заражения систем путем проверки списков известных данному компьютеру узлов или других подобных объектов, хранящих информацию об адресах удаленных систем;

  • установка соединения с удаленной системой;

  • копирование своего кода в удаленную систему и инициирование ее запуска там.

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

БАКТЕРИИ являются программами, не повреждающими сами по себе никаких файлов. Единственной целью "бактерии" является воспроизведение себе подобных. Типичная "бактерия" может просто запустить две собственные копии в многозадачной среде или создать два новых файла, содержащих по копии оригинальной программы - "бактерии". Затем каждая из копий может создать еще две копии и т.д. Скорость размножения "бактерий" растет экспоненциально, что в конце концов приводит к быстрому захвату всех ресурсов процессора, памяти или дискового пространства, а результатом является отказ пользователям в доступе к этим ресурсам.