На чем основан принцип работы антивирусных мониторов

Обновлено: 20.05.2024

Анализ существующих вариантов решения задачи и выбор наиболее приемлемого.

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

К достоинствам мониторов относится их способность обнаруживать и блокировать вирус на самой ранней стадии его размножения, что, кстати, бывает очень полезно в случаях, когда давно известный вирус постоянно "выползает неизвестно откуда". К недостаткам относятся существование путей обхода защиты монитора и большое количество ложных срабатываний, что, видимо, и послужило причиной для практически полного отказа пользователей от подобного рода антивирусных программ (мне, например, неизвестно ни об одном мониторе для Windows 95/NT — нет спроса, нет и предложения).

Необходимо также отметить такое направление антивирусных средств, как антивирусные мониторы, выполненные в виде аппаратных компонентов компьютера ("железа"). Наиболее распространенной является встроенная в BIOS защита от записи в MBR винчестера. Однако, как и в случае с программными мониторами, такую защиту легко обойти прямой записью в порты контроллера диска, а запуск DOS-утилиты FDISK немедленно вызывает ложное срабатывание защиты.

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

Обнаружение загрузочного вируса

В загрузочных секторах дисков расположены, как правило, небольшие программы, назначение которых состоит в определении размеров и границ логических дисков (для MBR винчестера) или загрузке ОС (для загрузочного сектора).

Вначале следует проверить содержимое сектора, подозрительного на наличие вируса. Для этой цели удобно использовать DISKEDIT из "Нортоновских утилит" или AVPUTIL из профессионального комплекта AVP.

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

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

Существуют также вирусы, использующие более сложные приемы заражения, например, изменяющие при инфицировании MBR всего 3 байта Disk Partition Table, соответствующие адресу активного загрузочного сектора. Для идентификации такого вируса придется провести более детальное исследование кодов загрузочного сектора вплоть до полного анализа алгоритма работы его кода.

Приведенные рассуждения основываются на том, что стандартные загрузчики (программы, записываемые операционной системой в загрузочные сектора) реализуют стандартные алгоритмы загрузки ОС и оформляются в соответствии с ее стандартами. Если же диски отформатированы утилитами, не входящими в состав DOS (например, Disk Manager), то для обнаружения в них вируса следует проанализировать алгоритм работы и оформление загрузчиков, создаваемых такой утилитой.

Обнаружение файлового вируса.

Все вирусы делятся на резидентные и нерезидентные.

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

Можно также просмотреть дамп выполняемых файлов. В некоторых случаях можно сразу обнаружить присутствие вируса по наличию в его коде текстовых строк. Многие вирусы, например, содержат строки: ".СОМ", "*.СОМ", ".ЕХЕ", "*.ЕХЕ", "*.*", "MZ", "COMMAND" и т. д. Эти строки часто встречаются в начале или в конце зараженных файлов.

Существует и еще один способ визуального определения зараженного вирусом файла. Он основан на том, что выполняемые файлы, исходный текст которых написан на языке высокого уровня, имеют вполне определенную структуру. В случае Borland или Microsoft C/C++ сегмент кода программы находится в начале файла, а сразу за ним — сегмент данных, причем в начале этого сегмента стоит строка-копирайт фирмы — изготовителя компилятора. Если в дампе такого файла за сегментом данных следует еще один участок кода, то вполне вероятно, что файл заражен вирусом.

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

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

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

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

Выбор методов построения антивирусного монитора.

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

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

Постановка задачи на проектирование.

Метод ведения мониторинга вирусоподобных ситуаций.

С:\trap3.exe (37,5 Kb)

C:\Windows\trap1.exe (631 Kb)

При первом запуске антивирусного монитора, создаётся вышеизложенное подмножество файлов-ловушек. После этого, контроль над ними осуществляется регулярно – каждые 10 секунд. В случае изменения или удаления одного из элементов подмножества, пользователь системы получает соответствующее уведомление о действиях произведённых над файлом, и монитор восстанавливает исходный файл.

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

Простота реализации. Программно, способ достаточно лёгок и прозрачен.

Достоверность. В отличие от остальных антивирусных мониторов ошибка второго рода исключена.

Универсальность. Данный антивирусный монитор способен выявлять действия как Windows-вирусов, так и DOS-вирусов, ввиду своей не привязанности к особенностям операционной системы.

Сложности при создании оптимального подмножества файлов-ловушек

Метод защиты файлов от несанкционированного использования, изменения и модификации – «Эксклюзив».

Объектами защиты «Эксклюзива» могут быть любые файлы локального компьютера, попавшие в «поле зрения» приложения(программы), использующего данный метод. Множество указанных объектов защиты изначально определяется пользователем и в любой момент времени может быть изменено.

«Эксклюзив» представляет собой способ защиты объектов(файлов) и, как следствие, информации находящейся в указанных объектах, от порчи, подмены или даже от ознакомления с нею злоумышленника.

Суть данного метода заключается в следующем. Выбранные защищаемые файлы, помечаются системой как открытые на эксклюзивное использование приложением, использующим «Эксклюзив». Т.е. в файловой системе указывается служебная информация о непосредственном владельце файла(пользовательском приложении). В зависимости от цели, пользователь выбирает способ доступа к файлам других процессов, определённый на некотором подмножестве(полный доступ, закрыт для любых операций, закрыт для чтения, закрыт для записи). Тем самым, владельцем программы, обеспечивается эксклюзивное право владения и определение способа доступа к защищаемым объектам других процессов.

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

Минимальные требования к аппаратным ресурсам

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

Не ограниченное множество объектов защиты

Предельно простая реализация на уровне приложения

Методы построения системы защиты от несанкционированного копирования и использования приложения.

Метод фиксации аппаратной платформы.

В дистрибутиве программного пакета, помимо исполняемого файла самого антивирусного монитора «Amonit.exe», содержится файл «Creator.exe», который после первого запуска приложения удаляется. Но перед своим удалением, он создаёт новый «ini-файл», в котором содержится всего одно слово – загаммированная дата производства BIOS компьютера-носителя. Этот файл не доступен при активированном приложении, но открыт в противном случае. Если этот файл был случайно удалён, то без переустановки программы, открыть её не удастся.

Метод шифровки ключевой информации.

В предложенном варианте антивирусного монитора предусмотрена защита от несанкционированного снятия программы с выполнения - пароль. Он хранится на инсталляционной дискете в файле «pif.ini» в загаммированном виде. Легальный пользователь может всегда задать или изменить этот пароль при помощи специальной программной опции.

Изменить пароль без использования программной опции, т.е. методом непосредственного изменения файла затруднительно, поскольку от этого предусмотрена небольшая защита. Дело в том, что пустой файл «pif.ini» не означает пустой пароль.

Программа антивирусного монитора – это .exe файл для Windows, поэтому запуск его на выполнение порождает в системе процесс и он естественно должен фиксироваться в списке процессов Windows. Но это обстоятельство делает программу очень уязвимой в плане того, что её можно снять с выполнения. Для этого в программе предусмотрен способ обхода системной регистрации процесса и другой пользователь не в силах снять этот процесс не прибегая к сторонним разработкам.

Метод защиты файлов от несанкционированного использования, изменения и модификации – «Эксклюзив».

Объектами защиты «Эксклюзива» могут быть любые файлы локального компьютера, попавшие в «поле зрения» приложения(программы), использующего данный метод. Множество указанных объектов защиты изначально определяется пользователем и в любой момент времени может быть изменено.

«Эксклюзив» представляет собой способ защиты объектов(файлов) и, как следствие, информации находящейся в указанных объектах, от порчи, подмены или даже от ознакомления с нею злоумышленника.

Суть данного метода заключается в следующем. Выбранные защищаемые файлы, помечаются системой как открытые на эксклюзивное использование приложением, использующим «Эксклюзив». Т.е. в файловой системе указывается служебная информация о непосредственном владельце файла(пользовательском приложении). В зависимости от цели, пользователь выбирает способ доступа к файлам других процессов, определённый на некотором подмножестве(полный доступ, закрыт для любых операций, закрыт для чтения, закрыт для записи). Тем самым, владельцем программы, обеспечивается эксклюзивное право владения и определение способа доступа к защищаемым объектам других процессов.

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

Минимальные требования к аппаратным ресурсам

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

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

Тернии классификации

Антивирусные сканеры
Пионеры борьбы с компьютерными вирусами. Появились они практически одновременно с первыми вирусами. В основе работы таких программ стоит простой принцип — поиск в файлах, оперативной памяти, загрузочных секторах знакомых участков вирусного кода (так называемых сигнатур ). Под сигнатурой понимают такую запись о вирусе, которая позволяет однозначно идентифицировать сам вирус, его присутствие в файле, памяти. Чаще всего сигнатурой является именно участок вирусного кода, а иногда и его контрольная сумма (или дайджест).
Антивирусный сканер просматривает сначала оперативную память компьютера, ища вирус там. Существуют так называемые stealth-вирусы, которые перехватывают системные функции и в результате могут контролировать поток данных от периферийного устройства к пользователю. А значит, они, перехватив управление, могут заразить любой открываемый файл в системе. Вирус первым узнает об обращении к периферийному устройству.
Представьте, что у вас в памяти присутствует stealh-вирус, а вы начали антивирусное сканирование без проверки оперативной памяти. Тогда зараженными могут оказаться все файлы. Именно поэтому сначала нужно провести поиск вирусов в оперативной памяти и при обнаружении stealth-вируса удалить его из памяти и потом искать тело в файле. Хочется вас успокоить: в наши дни stealth-вирусы надежно обнаруживаются в памяти и не представляют серьезной угрозы (если, конечно, регулярно проводить антивирусные проверки).
Человеческая мысль не стоит на месте. Вирусы также развиваются. Головной болью разработчиков антивирусного ПО стали "копии" известных вирусов. Дело в том, что существует огромное количество вирусных программ, алгоритм работы которых повторяет алгоритм работы других вредоносных программы. Поскольку код изменился, изменилась и сигнатура.
Каждую неделю появляется огромное количество вирусов. И разработчики просто не успевают внести в базу все сигнатуры. К тому же есть еще и малораспространенные вирусы, которые не попадают в базу. Мало того, существуют еще и полиморфные вирусные программы. Такой вирус изменяется от заражения к заражению. Просто, если в теле вирусной программы раскидать случайным образом ничего не делающие команды (для тех, кто знаком с программированием — NOP; MOV AX,AX;), то алгоритм работы не изменится, а вот тело и сигнатура претерпят значительные изменения.
Еще одной проблемой для борцов с вирусами стали программы, создаваемые вирус-генераторами (имея под рукой такой генератор, можно создать очередную "пакость" буквально за 5 минут). Во всех вышеперечисленных случаях помогает оригинальный алгоритм обнаружения неизвестных вирусов — эвристический анализатор . С его помощью антивирус способен находить аналоги известных вирусов, сообщая об этом пользователю. Принцип работы эвристического анализатора примерно такой. Любые данные он представляет в виде машинных кодов: в компьютере одна и та же информация может быть представлена в виде данных и в виде программы. Анализатор просматривает код, и если программа выполняет некоторые подозрительные (странные) действия, то ей добавляется условный балл. При превышении какого-то количества баллов эвристик делает вывод, что программа содержит вирус. Конечно, вероятность как ложного срабатывания, так и пропуска велика. Однако если правильно использовать данные эвристика, то можно прийти к правильному выводу. Если антивирус указывает, что заражен единичный файл, то это, скорее всего, имело место ложное срабатывание. Если же такое повторяется не один раз, то можно говорить о вирусном заражении вашей системы с большой долей уверенности.

Антивирусные мониторы
Антивирусные мониторы по своей сути — это лишь некая разновидность сканеров. Но! Антивирусный монитор постоянно присутствует в оперативной памяти компьютера и в фоновом режиме проверяет все открываемые и загружаемые файлы. Почти каждый современный антивирус имеет в своем составе такой монитор.

Ревизоры изменений
Ревизоры — это антивирусные программы, которые следят за изменениями файлов. Ревизоры сохраняют в своих базах данных контрольные суммы файлов. И потом просто сравнивают сохраненные значения с текущими (ведь вирусы изменяют файлы). Результаты работы сообщаются пользователю, поскольку пользователь также может изменять файлы.
У ревизоров есть свои недостатки. Во-первых, крайне важно, чтобы ревизор первые несколько раз запускался на "чистой" машине. Во-вторых, ревизоры не способны поймать вирус в момент его появления в системе, а находят его уже после распространения. В-третьих, они не могут найти вирус в новых файлах (полученных по e-mail, скачанных с BBS, Internet и прочее), поскольку в базах данных информация по таким файлам отсутствует. Именно этим недостатком пользуются некоторые вирусы, заражая только новые файлы.

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

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

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


Цель: дать понятие компьютерному вирусу, рассмотреть классификацию компьютерных вирусов, виды антивирусных программ; развивать умение использовать антивирусные программы, логическое мышление, память, внимание, речь; воспитывать информационную культуру самоконтроль.

Оборудование: ПЭВМ, медиапроектор.

Повторительно – обучающая работа.

Индивидуальный устный опрос.

Понятие компьютерного вируса.

Деструктивные действия компьютерных вирусов

Симптомы вирусного заражения ЭВМ

Подведение итогов этапа.

Работа по осмыслению и усвоению нового материала.

Первичное восприятие нового материала.

Понятие антивирусной программы.

Виды антивирусных программ

Основные меры по защите ЭВМ от заражения вирусами.

1. Понятие антивирусной программы.

Для борьбы с вирусами разрабатываются антивирусные программы. Говоря меди­цинским языком, эти программы могут выявлять (диагностировать), лечить (уничто­жать) вирусы и делать прививку «здоровым» программам.

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

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

2. Виды антивирусных программ

Различают следующие виды антивирусных программ:

Программы – детекторы (сканеры);

Программы – доктора (или фаги, дезинфекторы);

Программы – фильтры (сторожа, мониторы);

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

Следует подчеркнуть, что программы – детекторы могут обнаружить только те вирусы, которые ей “известны”, то есть, сигнатуры этих вирусов заранее помещены в библиотеку антивирусных программ.

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

Для устранения этого недостатка программы – детекторы стали снабжаться блоками эвристического анализа программ. В этом режиме делается попытка обнаружить новые или неизвестные вирусы по характерным для всех вирусов кодовым последовательностям. Наиболее развитые эвристические механизмы позволяют с вероятностью около 80% обнаружить новый вирус.

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

В России получили широкое распространение программы – детекторы, одновременно выполняющие и функции программ – докторов. Наиболее известные представители этого класса – AVP (Antiviral Toolkit Pro, автор – Е. Касперский), Aidstest (автор – Д. Лозинский) и Doctor Web (авторы – И. Данилов, В. Лутовин, Д. Белоусов).

Полифаги. Самыми популярными и эффективными анти­вирусными программами являются антивирусные програм­мы полифаги (например, Kaspersky Anti-Virus, Dr.Web). Прин­цип работы полифагов основан на проверке файлов, загрузочных секторов дисков и оперативной памяти и поиске в них известных и новых (неизвестных полифагу) вирусов. Антивирусные программы полифаги, которые в свою очередь подразделяются на два вида: сканеры и мониторы. Рассмотрим принципы работы и недостатки каждого из них, и опишем достоинства антивирусных программ полифагов в целом.

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

вирусных сигнатур, т.е. уникального программного кода вредоносной программы.

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

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

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

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

Ревизо́р (от лат. revisor — пересматривающий; ср. лат. revisio — пересмотр) — компьютерная программа, запоминающая состояние компьютера, следящая за изменениями файловой системы и сообщающая о важных или подозрительных изменениях пользователю.

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

Принцип работы ревизоров

Программа-ревизор следит за изменениями файлов на компьютере. Для этого не обязательно делать копии всех файлов. Достаточно запомнить названия файлов и папок, размеры файлов и их контрольные суммы (либо специальные хеш-функции). Эта информация занимает немного места на диске, но позволяет заметить изменение любого файла. Периодически (по расписанию) или по приказу пользователя ревизор проверяет текущее состояние файловой системы и сравнивает с прежним. О подозрительных изменениях немедленно сообщается, об остальных пользователь может узнать при желании. При последующем запуске ревизоры сверяют данные, со­держащиеся в базе данных, с реально подсчитанными значе­ниями. Если информация о файле, записанная в базе дан­ных, не совпадает с реальными значениями, то ревизоры сигнализируют о том, что файл был изменен или заражен вирусом. Программы-ревизоры изначально предназначались для использования в качестве антивирусов. Любой вирус каким-либо образом изменяет систему данных на диске. Например, могут появиться новые исполняемые файлы, измениться уже существующие, может появиться сектор на диске, не связанный с каким-либо файлом и т. д. При обнаружении подозрительных изменений ревизор бьёт тревогу.

Достоинствами ревизоров как антивирусов являются:

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

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

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

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

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

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

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

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

Обновление программных файлов и системной области диска;

Резидентное размещение программ в ОЗУ.

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

Блокировщики. Антивирусные блокировщики — это про­граммы, перехватывающие «вирусоопасные» ситуации и со­общающие об этом пользователю. К таким ситуациям отно­сится, например, запись в загрузочный сектор диска. Эта запись происходит при установке на компьютер новой опера­ционной системы или при заражении загрузочным вирусом.

Наибольшее распространение получили антивирусные блокировщики в BIOS компьютера. С помощью программы BIOS Setup можно провести настройку BIOS таким образом, что будет запрещена (заблокирована) любая запись в загру­зочный сектор диска и компьютер будет защищен от зара­жения загрузочными вирусами.

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

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

3. Основные меры по защите ЭВМ от заражения вирусами.

Необходимо оснастить ЭВМ современными антивирусными программами и постоянно обновлять их версии.

При работе в глобальной сети обязательно должна быть установлена программа – фильтр (сторож, монитор).

Перед считыванием с дискет информации, записанной на других ЭВМ, следует всегда проверять эти дискеты на наличие вирусов.

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

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

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

Не следует оставлять дискету в дисководе при включении или перезагрузке ЭВМ, так как это может привести к заражению загрузочными вирусами.

Антивирусную проверку желательно проводить в “чистой” операционной системе, то есть после ее загрузки с отдельной системной дискеты.

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

Получив электронное письмо, к которому приложен исполняемый файл, не следует запускать этот файл без предварительной проверки. По электронной почте часто распространяются “троянские кони”.

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

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

Последняя – не совсем серьезная мера. Если Вы хотите полностью исключить вероятность попадания вирусов в Ваш компьютер, то не набирайте на клавиатуре непонятных для Вас программ, не используйте дискеты, лазерные диски для ввода программ и документов. Отключитесь от локальной и глобальной сетей. Не включайте питание, так как возможно, что вирус уже зашит в ПЗУ.

Фронтальная (обобщающая ) беседа.

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

- Перечислите классификацию компьютерных вирусов.

- Дайте понятие антивирусной программе.

Задавание на дом.

Могилёв, с.197-200, опорный конспект


-80%

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

Эта серия статей предназначена разъяснить основы и действительную функциональность наиболее распространенных опций современных пакетов безопасности для ОС Windows. Мы собираемся описать, что вы можете ожидать от конкретного решения, будь то инструментарий для защиты от вредоносного ПО, безопасного серфинга по сети или предотвращения нежелательного вторжения. Используя собранную в статьях информацию, вы сможете сравнить предлагаемые наборы функции продуктов различных вендоров и лучше понимать, как работают пакеты безопасности.

В первой части серии статей, мы обсудим наиболее основные компоненты: антивирусный движок и фаервол (брандмауэр).

Содержание

Антивирусный движок (Anti-virus Engine)

Также называют: антивирусная защита реального времени, защита реального времени, мониторинг файлов, защита от вредоносного ПО

Антивирусный движок

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

Методы определения

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

Метод эвристического анализа (heuristic-based detection) служит для выявления даже тех вирусов, для которых не существует образцов в базе антивирусной программы. Существует множество различных методов эвристического анализа. Основной принцип – идентифицировать программный код, который является крайне нежелательным для безопасных программных продуктов. Как бы то ни было, этот метод неточен и может вызвать множество ложных тревог. Хороший эвристический анализ отлично сбалансирован и вызывает минимальное количество ложных тревог при большой доле обнаружения вредоносного ПО. Чувствительность эвристики может быть настроена.

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

Одно из новейших достижений антивирусного инструментария – облачное сканирование (scanning in the cloud). Этот метод основан на том, что ПК ограничены в своих вычислительных способностях, в то время как антивирусные вендоры имеют возможность создания крупных систем с огромной производительностью. Компьютерная мощность необходима для выполнения сложного эвристического анализа, а также анализа с использованием виртуальных машин. Сервера вендоров могут работать с гораздо более объемными базами данных образцов вирусов по сравнению с ПК в режиме реального времени. При выполнении облачного сканирования единственным требованием является наличие быстрого и стабильного интернет подключения. Когда клиентской машине необходимо отсканировать файл, этот файл отправляется на сервер вендора посредством сетевого соединения и ожидается ответ. Тем временем, клиентская машина может выполнять свое собственное сканирование.

Типы сканирования и настройки

С точки зрения пользователя, существует несколько типов антивирусного сканирования, Которые зависят от событий, которые вызвали запуск процесса сканирования:

- Сканирование при доступе (On access scan) – сканирование, которое происходит, когда ресурс становится доступен. Например, когда файл копируется на жесткий диск или когда запускается исполняемый файл (запуск процесса сканирования в этом случае иногда называется сканирование при запуске). Только ресурс, к которому появляется доступ, подвергается сканированию в этом случае.

- Сканирование по требованию (On demand scan) провоцируется конечным пользователем – например, когда пользователь вызывает сканирование соответствующей командой меню в проводнике Windows. Такое сканирование также называется ручным. Только выбранные папки и файлы сканируются при этом способе.

- Сканирование по расписанию (Scheduled scan) является обычно повторяемым действием, которое обеспечивает постоянную проверку системы на предмет вредоносного ПО. Пользователь может настраивать время и частоту сканирования. Это сканирование обычно применяется для полного сканирования системы.

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

Большинство продуктов позволяет пользователям настраивать каждый вид сканирования раздельно. Ниже собраны одни из самых основных параметров антивирусного сканирования:

- Расширения файлов для сканирования – сканировать все файлы или только исполняемые (.exe, .dll, .vbs, .cmd и другие.);
- Максимальный размер файлов – файлы свыше этого параметра не подвергаются сканированию;
- Сканирование файлов в архивах – сканировать ли файлы в архивах, таких как .zip, .rar, .7z и другие;
- Использование эвристического анализа – настройка использования эвристики и, опционально, настройка чувствительности;
- Типы программ, о которых сообщить тревогой – существует множество программ которые могут быть неточно определены как вредоносные. Обычно вендоры используются такие термины, как Потенциально нежелательное ПО или программа с некоторым риском угрозы;
- Типы носителей для сканирования – сканировать ли файлы на сетевых хранилищах или переносных устройствах хранения данных;
- Действие, которое нужно предпринять, когда угроза обнаружена - попытка излечить образец если возможно, удаление образца, помещение в карантин (специальная папка, из которой вредоносный код не может исполняться, а может быть отправлен для дальнейшего исследования непосредственно вендору), заблокировать доступ или спросить о действии у пользователя.

Множество этих параметров могут влиять на скорость сканирования. Набор автоматических правил сканирования для быстрого, но в тоже время эффективного сканирования называется Интеллектуальное сканирование (Smart Scan) или Быстрое сканирование (Quick Scan). В противном случае, сканирование называется полным (Full Scan) или глубоким (Deep Scan). Мы также можем встретить сканирование переносных устройств, которое применяется для проверки оптических дисков, флоппи дисков, USB накопителей, флэш карт и схожих устройств. Пользовательское сканирование (Custom Scan) также доступно и является полностью настраиваемым конечным пользователем.

Специализированные сканеры

Руткит-сканирование (или антируткит-сканирование) это опция, которую предлагают некоторые антивирусные вендоры всвоих продуктах, т.к. руткиты стали чрезвычайно распространенными за последнее десятилетие. Руткит – особенный тип вредоносного ПО, который использует хитрые приемы для того, чтобы оставаться невидимым для пользователя и основных методов детектирования вируса. Он применяет внутренние механизмы ОС для того чтобы сделать себя недосягаемым. Борьба с руткитами требует от разработчиков антивирусного ПО создания особых способов обнаружения. Руткит-сканирование пытается найти расхождения в работе ОС, которые могут служить доказательством наличия руткита в системе. Некоторые реализации проверок на наличие руткитов основываются на постоянном мониторинге системе, в то время как другие реализации антируткитного инструментария могут вызываться по требованию.

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

Дополнительные связанные опции

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

Фаервол (Firewall)

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

Фаервол

Основная роль фаервола – контролировать доступ к ПК со стороны внешней сети, т.е. входящий трафик и, наоборот, контролировать доступ с ПК в сеть, т.е. исходящий трафик.

Фильтрация сетевого трафика может происходить на нескольких уровнях. Большинство фаерволов, включенных в комплекты безопасности для ПК имеют набор правил по крайней мере для двух уровней – нижний интернет уровень, контролируемый IP правилами и верхний уровень приложения. Говоря про верхний уровень, фаервол содержит набор правил для того чтобы допустить или запретить доступ конкретного приложения в сеть. Такие термины, как сетевые правила (Network Rules), экспертные правила (Expert Rules) или настройки правил IP (IP Rule Setting) используются на нижнем уровне правил. На верхнем уровне мы встречаемся с терминами Контроль программ (Program Control) или правила приложений (Application Rules).

Множество современных продуктов позволяют пользователю настраивать уровень доверия ко всем сетям, подключенных к компьютеру. Даже если существует только одно физическое подключение, ПК может быть подключен к нескольким сетям – например, когда ПК подключен к локальной сети, имеющей шлюзы для выхода в интернет. Антивирусный комплекс будет раздельно управлять локальным и интернет трафиком. Каждая из найденных сетей может быть либо доверенной, либо недоверенной и различные системные сервисы, такие как общий доступ для файлов или принтеров могут быть разрешены или запрещены. По умолчанию, только компьютеры из доверенных сетей (trusted networks) могут иметь доступ к защищаемому компьютер. Подключения, регистрируемые с недоверенных сетей (untrusted networks) обычно блокируются, если соответствующая опция не разрешает доступ. Вот почему интернет соединение обычно помечается как недоверенное. Как бы то ни было, некоторые продукты не различают сети в рамках одного пользовательского интерфейса и настройки доверенных/недоверенных сетей могут быть раздельно указаны для каждого интерфейса. Термин Сетевая зона (Network Zone) или просто зона (Zone) обычно используется вместо логической сети.

Обнаружение и предотвращение вторжения(Intrusion Detection/Prevention)

Также называют: Обнаружение атаки, Система обнаружения вторжения, IP блокировка, вредоносные порты.

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

Черный список IP (IP Blacklist)

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

Блокирование всего трафика (Block All Traffic)

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

Контроль программ (Program Control)

Также называют: контроль приложений, инспектор приложений

Фильтрация сетевого трафика на программном уровне позволяет программам безопасности раздельно контролировать доступ в сеть каждого приложения на ПК. Антивирусный продукт содержит базу данных свойств приложений, которая определяет доступна ли сеть для программы или нет. Эти свойства различаются между клиентскими программами, которые инициализируют подключение с локальной машины на удаленные сервера (исходящее направление) и серверными программами, которые сканируют сетевой порт и принимают соединения с удаленных компьютеров (входящее направление). Современные антивирусные решения позволяют пользователю определять детальные правила для каждого конкретного приложения.

В общем, поведение контроля программ зависит от политики безопасности (Firewall Policy), выбранной в фаерволе и может включать следующие режимы поведения:

- Тихий режим (автоматический режим) работает без вмешательства пользователя. Все решения принимаются автоматически с использованием базы данных антивирусного продукта. В случае если не существует явного правила для программы, которая хочет получить доступ в сеть, этот доступ может быть либо всегда разрешен (режим полного разрешения - Allow All mode), либо всегда заблокирован (режим полного блокирования - Block All mode), либо специальный эвристический анализ используется для определения дальнейшего действия. Алгоритм выработки решения может быть очень сложным и может зависеть от дополнительных условий, таких как рекомендации сетевого сообщества. Как бы то ни было, некоторые продукты используют термины: режим полного разрешения/блокирования в обход существующим в базе данных наборам правил и просто разрешают, или блокируют доступ любому приложению в системе.

- Пользовательский режим (Настраиваемый режим - Advanced mode, Custom mode) предназначается для продвинутых пользователей, которые хотят контролировать каждое действие. В этом режиме продукт автоматически справляется только с теми ситуациями, для которых существуют исключительные правила в базе данных. В случае любых других действий пользователю предлагается принять решение. Некоторые антивирусные решения предлагают определить политику поведения, когда невозможно спросить пользователя – например при загрузке компьютера, завершении работы, когда графический интерфейс программы недоступен или во время особенных условий – запуске игры во весь экран, когда пользователь не хочет отвлекаться (иногда называется Игровой режим – Gaming mode). Обычно всего две опции доступны в этих случаях: режим полного разрешения и режим полного блокирования.

- Нормальный режим (безопасный режим - Normal mode, Safe mode) позволяет антивирусному продукту самому справляться с большинством ситуаций. Даже когда не существует явных правил в базе данных, действие программы разрешено, если программа считается безопасной. Аналогично автоматическому режиму решение может приниматься на основании эвристического анализа. В случае, когда программа безопасности не может определить безопасно ли приложение или нет, она выводит оповещение, как в пользовательском режиме.

- Режим обучения (режим тренировки, режим установки - Learning mode, Training mode, Installation mode) в основном используется сразу после установки антивирусного продукта или в случаях, когда пользователь устанавливает новое ПО на компьютер. В этом режиме антивирусный продукт позволяет все действия, для которых нет записей в базе данных наборов правил и добавляет новые правила, которые будут позволять соответствующие действия в будущем после смена режима безопасности. Использование режима обучения позволяет снизить количество тревожных оповещений после установки нового ПО.

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

Читайте также: