Компьютерные вирусы как особый класс разрушающих программных воздействий.

Понятие вирусов было сформулировано в 1904 г. американским исследователем Ф.Коэном. Принято под вирусом понимать программный код, обладающий следующими свойствами:

1) Способность к созданию собственных копий, необязательно совпадающих с оригиналом, но обладающих свойствами оригинала.

2) Наличие механизма, обеспечивающего внедрение создаваемых копий в исполняемые объекты вычислительной системы.

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

¨ среде обитания

¨ способу заражения среды обитания

¨ воздействию

¨ особенностям алгоритма

В зависимости от среды обитания вирусы можно разделить на сетевые, файловые, загрузочные и файлово-загрузочные. Сетевые вирусы распространяются по различным компьютерным сетям. Файловые вирусы внедряются главным образом в исполняемые модули, т. е. В файлы, имеющие расширения COM и EXE. Файловые вирусы могут внедряться и в другие типы файлов, но, как правило, записанные в таких файлах, они никогда не получают управление и, следовательно, теряют способность к размножению. Загрузочные вирусы внедряются в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий программу загрузки системного диска (Master Boot Re-

cord). Файлово-загрузочные вирусы заражают как файлы, так и загрузочные сектора дисков.

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

По степени воздействия вирусы можно разделить на следующие виды:

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

* опасные вирусы, которые могут привести к различным нарушениям в работе компьютера

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

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

Классификация вирусов по типам объектов вычислительной системы, в которых внедряются:

1)Программные файлы операционной системы - это файловые вирусы.

2)Системные области компьютеров, в частности области начальной загрузки операционной системы. Соответствующие вирусы получили название загрузочных или бутовых.

3)Макропрограммы и файлы документов современных систем обработки информации. такие вирусы называются макровирусами.

ЖЦ вирусов

Стадии:

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

2)Исполнение состоит из 5 этапов:

а) загрузка вируса в память

б) поиск жертвы

в) заражение найденной жертвы

г) выполнение деструктивных функций

д) передача управления программе-носителю вируса

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

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

б) объект и вирус располагаются в едином адресном пространстве. После завершения работы объекта, объект выгружается из оперативной памяти и при этом выгружается вирус, переходя в пассивную стадию хранения. Однако некоторые типы вирусов способны сохраняться в памяти и оставаться активными после окончания работы вируса носителя. Такие вирусы называются резидентными.

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

-закрепление в памяти

-перехват системных функций

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

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

а) осуществляющие активный поиск с использованием функций операционной системы. Например: файловые вирусы, использующие механизм поиска используемых файлов в текущем каталоге.

б) реализующие пассивный механизм поиска. Это вирусы, расставляющие «ловушки» для программных файлов. Например: файловые вирусы устраивают «ловушки» для перехвата функции exe операционной системы. А макровирусы с помощью перехвата команд типа save as из меню файла.

return false">ссылка скрыта

Заражение найденной жертвы в простейшем случае заражение представляет собой самокопирование кода вируса выбранной в качестве жертвы объект. По способу инфицирования жертвы вирусы можно разделить на классы:

1) вирусы, которые не внедряют свой код непосредственно в программный файл, а изменяют имя файла и создают код старым именем новый, содержащий тело вируса.

2) Вирусы, внедряющиеся непосредственно в файлы жертвы. Они характеризуются местом внедрения в файл:

а) в начало файла. При внедрении производится объединение собственного кода программы. Либо переписывается начальный фрагмент файлов в конец, освобождая место для себя.

б) внедрение в конец файла. Передача управления вирусу обеспечивается модификацией первых команд программы (com) либо заголовков программы (exe)

в) внедрение в середину файла. Используется для файлов с заранее известной структурой, либо к файлам, содержащим последовательность байтов.