Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебно-методическое пособие .doc
Скачиваний:
23
Добавлен:
14.04.2019
Размер:
2.72 Mб
Скачать

Классификация компьютерных вирусов

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

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

  1. по среде обитания вируса;

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

  3. по деструктивным возможностям

  4. по особенностям алгоритма вируса

    1. По среде обитания вирусы можно разделить на сетевые, файловые и загрузочные. Сетевые вирусы распространяются по компьютерной сети, файловые внедряются в выполняемые файлы, загрузочные - в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий системный загрузчик винчестера (Master Boot Record). Существуют сочетания -например, файлово-загрузочные вирусы, заражающие как файлы, так и загрузочные сектора дисков. Такие вирусы, как правило, имеют довольно сложный алгоритм работы и часто применяют оригинальные методы проникновения в систему.

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

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

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

  • опасные вирусы, которые могут привести к серьезным сбоям в работе: замедление работы операционной системы, некорректная работа программ и др.;

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

    1. По особенностям алгоритма можно выделить следующие группы вирусов:

  • - компаньон-вирусы (companion) - это вирусы, не изменяющие файлы. Алгоритм работы этих вирусов состоит в том, что они создают для ЕХЕ-файлов файлы-спутники, имеющие то же самое имя, но с расширением .СОМ, например, для файла XCOPY.EXE создается файл XCOPY.COM. Вирус записывается в СОМ-файл и никак не изменяет ЕХЕ-файл. При запуске такого файла DOS первым обнаружит и выполнит СОМ-файл, т.е. вирус, который затем запустит и ЕХЕ-файл.

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

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

    • Электронная почта. "Червь" отправляет свою копию по почте в другую систему.

    • Удаленный вызов программ. "Червь" запускает свою копию на выполнение в другой системе.

    • Доступ к удаленной системе. "Червь" входит в удаленную систему как пользователь, а затем использует команду копирования себя из одной системы в другую.

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

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

  • «стелс»-вирусы (вирусы-невидимки, stealth), представляющие собой весьма совершенные программы, которые перехватывают обращения ОС к пораженным файлам или секторам дисков и "подставляют" вместо себя незараженные участки информации. Кроме этого, такие вирусы при обращении к файлам используют достаточно оригинальные алгоритмы, позволяющие "обманывать" резидентные антивирусные мониторы.

  • «полиморфик»-вирусы (самошифрующиеся или вирусы-призраки, polymorphic) - вирус, код которого изменяется при каждом новом заражении, что делает практически невозможным обнаружить его по сигнатуре. Достаточно трудно обнаруживаемые вирусы, не имеющие постоянных сигнатур, т.е. не содержащие ни одного постоянного участка кода. В большинстве случаев два образца одного и того же полиморфик-вируса не будут иметь ни одного совпадения. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика. Полиморфный вирус создает при размножении копии, эквивалентные функциям, но существенно различающиеся по двоичному представлению. Как и в случае с вирусами-невидимками, это делается с целью противостоять программам, обнаруживающим вирусы. Для изменения представления кода вирус может вставлять в свой код генерируемые случайным образом избыточные команды или же изменять порядок следования независимых команд. Более эффективным подходом является шифрование. Часть вируса, называемая механизмом управления мутациями, генерирует случайное значение ключа, с помощью которого шифрует остальной код вируса. Ключ сохраняется вместе с вирусом, а механизм управления мутациями видоизменяется. Во время запуска инфицированной программы вирус с помощью сохраненного ключа расшифровывается. При новом инфицировании генерируется новый ключ.

  • макро-вирусы - вирусы этого семейства используют возможности макро-языков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). В настоящее время наиболее распространены макро-вирусы заражающие текстовые документы редактора Microsoft Word и рабочие листы Microsoft Excel. По сути, макрос представляет собой программу, встроенную в документ текстового процессора или файл какого-то другого типа. Обычно пользователи применяют макросы для того, чтобы автоматизировать выполнение часто повторяемых действий, что позволяет экономить время. Язык макросов чаще всего является каким-нибудь вариантом языка программирования Basic. Пользователь может записать последовательность нажатий клавиш в виде макроса, а затем настроить программу так, чтобы записанный макрос вызывался нажатием функциональной клавиши или какой-то специальной комбинации клавиш. Создание макровирусов оказывается возможным благодаря существованию автоматических макросов. Это макросы, которые выполняются автоматически, без явной активизации их пользователем. Типичными автоматически происходящими событиями являются открытие, закрытие файла, а также запуск приложения. Во время своего выполнения макрос может копировать себя в другой документ, удалять файлы и выполнять любые другие действия, разрушающие систему пользователя. В Microsoft Word существует три типа автоматических макросов:

    • AutoExec. Макрос с зарезервированным именем AutoExec, размещенный в шаблоне normal.dot или в глобальном шаблоне, хранящемся в каталоге запуска Word, и автоматически выполняющийся при запуске Word.

    • Автомакрос. Выполняется, когда происходит определенное событие, например, открытие или закрытие документа, создание нового документа или завершение работы Word.

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

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

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

Люки

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

Люки представляют собой угрозу, когда они позволяют недобросовестным программистам получить несанкционированный доступ. Именно люк был основной причиной угрозы, на которой построен сюжет фильма "Военные игры" (War Games). Еще одним примером является люк, использованный в рамках тестирования системы Multics, проводимого "командой тигров" (командой моделирования действий противника) ВВС США. Одним из решений была отправка на узел, на котором выполнялась Multics, ложного пакета с обновлениями системы. В этом пакете содержался "троянский конь", который активизировался через люк и позволял "тиграм" получить доступ к системе. Угроза была реализована настолько удачно, что разработчики Multics не смогли найти ее даже после того, как были информированы о ее существовании.

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