Все методы обнаружения вирусов на компьютере
Все методы обнаружения вирусов на компьютере
Методы обнаружения вирусов
Методы и технологии борьбы с компьютерными вирусами
Массовое распространение вирусов, серьезность последствий их воздействия на ресурсы КС вызвали необходимость разработки и использования специальных антивирусных средств и методов их применения. Антивирусные средства применяются для решения следующих задач:
* обнаружение вирусов в КС;
* блокирование работы программ-вирусов;
* устранение последствий воздействия вирусов.
Обнаружение вирусов желательно осуществлять на стадии их внедрения или, по крайней мере, до начала осуществления деструктивных функций вирусов. Не существует антивирусных средств, гарантирующих обнаружение всех возможных вирусов.
При обнаружении вируса необходимо сразу же прекратить работу программы-вируса, чтобы минимизировать ущерб от его воздействия на систему.
Устранение последствий воздействия вирусов ведется в двух направлениях:
* восстановление (при необходимости) файлов, областей памяти.
Технология восстановления системы зависит от типа вируса, а также от момента времени обнаружения вируса по отношению к началу вредительских действий. Восстановление информации без использования дублирующей информации может быть невыполнимым, если вирусы при внедрении не сохраняют информацию, на место которой они помещаются в память, а также, если деструктивные действия уже начались, и они предусматривают изменения информации.
Для борьбы с вирусами используются программные и аппаратно-программные средства, которые применяются в определенной последовательности и комбинации, образуя методы борьбы с вирусами: методы обнаружения вирусов и методы удаления вирусов.
Известны следующие методы обнаружения вирусов:
1. Сканирование — один из самых простых методов обнаружения вирусов. Сканирование осуществляется программой-сканером, которая просматривает файлы в поисках опознавательной части вируса — сигнатуры. Программа фиксирует наличие уже известных вирусов, за исключением полиморфных вирусов, которые применяют шифрование тела вируса, изменяя при этом каждый раз и сигнатуру. Программы-сканеры могут хранить не сигнатуры известных вирусов, а их контрольные суммы. Программы-сканеры часто могут удалять обнаруженные вирусы. Такие программы называются полифагами.
Метод сканирования применим для обнаружения вирусов, сигнатуры которых уже выделены и являются постоянными. Для эффективного использования метода необходимо регулярное обновление сведений о новых вирусах.
Метод обнаружения изменений базируется на использовании программ-ревизоров. Эти программы определяют и запоминают хаpaктеристики всех областей на дисках, в которых обычно размещаются вирусы. При периодическом выполнении программ-ревизоров сравниваются хранящиеся хаpaктеристики и хаpaктеристики, получаемые при контроле областей дисков. По результатам ревизии программа выдает сведения о предположительном наличии вирусов.
Обычно программы-ревизоры запоминают в специальных файлах образы главной загрузочной записи, загрузочных секторов логических дисков, хаpaктеристики всех контролируемых файлов, каталогов и номера дефектных кластеров. Могут контролироваться также объем установленной оперативной памяти, количество подключенных к компьютеру дисков и их параметры.
Главным достоинством метода является возможность обнаружения вирусов всех типов, а также новых неизвестных вирусов. Совершенные программы-ревизоры обнаруживают даже «стелс»-вирусы.
Имеются у этого метода и недостатки. С помощью программ-ревизоров невозможно определить вирус в файлах, которые поступают в систему уже зараженными. Вирусы будут обнаружены только после размножения в системе. Программы-ревизоры непригодны для обнаружения заражения макровирусами, так как документы и таблицы очень часто изменяются.
2. Эвристический анализ сравнительно недавно начал использоваться для обнаружения вирусов. Как и метод обнаружения изменений, данный метод позволяет определять неизвестные вирусы, но не требует предварительного сбора, обработки и хранения информации о файловой системе.
Сущность эвристического анализа заключается в проверке возможных сред обитания вирусов и выявление в них комaнд (групп комaнд), хаpaктерных для вирусов. Такими комaндами могут быть комaнды создания резидентных модулей в оперативной памяти, комaнды прямого обращения к дискам, минуя ОС. Эвристические анализаторы при обнаружении «подозрительных» комaнд в файлах или загрузочных секторах выдают сообщение о возможном заражении. После получения таких сообщений необходимо тщательно проверить предположительно зараженные файлы и загрузочные сектора всеми имеющимися антивирусными средствами. Эвристический анализатор имеется, например, в антивирусной программе Doctor Web.
3. Метод использования резидентных сторожей основан на применении программ, которые постоянно находятся в ОП ЭВМ и отслеживают все действия остальных программ.
Технологический процесс их применения осуществляется в следующей последовательности: в случае выполнения какой-либо программой подозрительных действий (обращение для записи в загрузочные сектора, помещение в ОП резидентных модулей, попытки перехвата прерываний и т. п.) резидентный сторож выдает сообщение пользователю. Программа-сторож может загружать на выполнение другие антивирусные программы для проверки «подозрительных» программ, а также для контроля всех поступающих извне файлов (со сменных дисков, по сети).
Существенным недостатком данного метода является значительный процент ложных тревог, что мешает работе пользователя, вызывает раздражение и желание отказаться от использования резидентных сторожей.
4. Под вакцинацией программ понимается создание специального модуля для контроля ее целостности. В качестве хаpaктеристики целостности файла обычно используется контрольная сумма. При заражении вакцинированного файла, модуль контроля обнаруживает изменение контрольной суммы и сообщает об этом пользователю. Метод позволяет обнаруживать все вирусы, в том числе и незнакомые, за исключением «стеле»- вирусов.
5. Самым надежным методом защиты от вирусов является использование аппаратно-программных антивирусных средств. В настоящее время для защиты ПЭВМ используются специальные контроллеры и их программное обеспечение. Контроллер устанавливается в разъем расширения и имеет доступ к общей шине. Это позволяет ему контролировать все обращения к дисковой системе.
В программном обеспечении контроллера запоминаются области на дисках, изменение которых в обычных режимах работы не допускается. Таким образом, можно установить защиту на изменение главной загрузочной записи, загрузочных секторов, файлов конфигурации, исполняемых файлов и др.
При выполнении запретных действий любой программой контроллер выдает соответствующее сообщение пользователю и блокирует работу ПЭВМ.
Аппаратно-программные антивирусные средства обладают рядом достоинств перед программными:
* обнаруживают все вирусы, независимо от механизма их действия;
* блокируют неразрешенные действия, являющиеся результатом работы вируса или неквалифицированного пользователя.
Недостаток у этих средств один — зависимость от аппаратных средств ПЭВМ. Изменение последних ведет к необходимости замены контроллера.
93.79.221.197 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.
Отключите adBlock!
и обновите страницу (F5)
очень нужно
Все методы обнаружения вирусов на компьютере
Интернет является неотъемлемой часть жизни современного человека. С другой стороны, он становится источником опасных вирусов, некоторые из которых следует удалять на начальных этапах «инфицирования». Но как выявить вирусы в компьютере? Какие самые распространенные симптомы заражения? Об этом и не только – в моей очередной статье.
Конечно же, подхватить «заразу» можно и без подключения к интернету. К примеру, если Вы вставляете в USB порт «вредоносную» флешку. Об этом я писал в статье как вирус блокирует USB порт. Или обмениваетесь файлами внутри рабочей сети.
Но есть множество способов обнаружить вирус даже без специального ПО. Сейчас я расскажу о них, но сначала мы рассмотрим основные признаки «заболевания».
Как узнать о заражении?
Хакеры, которые разpaбатывают вредоносные скрипты, довольно хитрые особи, которые умело маскируют угрозу под безопасную программу. В любом случае, не нужно паниковать и видеть во всем опасность. Необходимо внимательно проанализировать ситуацию.
Начинать волноваться можно, когда:
- Во время запуска Windows появляется окно блокировки, которое содержит текст наподобие «Вы нарушили такие-то статьи криминального кодекса и дело будет передано в суд. Чтобы избежать этого, отправьте СМС / пополните счет и т.д.». Помните, не так давно я рассказывал об этом вирусе?
- Вы не можете зайти на сайты социальных сетей или поисковых систем. Опять же, появляется окно с предложением заплатить денег. Подробно об этом я писал в тематической статье.
- Система не слишком быстро реагирует на Ваши комaнды, медленно открываются приложения, процедypa копирования / перемещения файлов длится слишком долго.
- Загрузка ОС занимает больше времени, чем раньше. Стоит учесть, что данный признак актуален, если Вы не инсталлировали сторонних приложений, которые могли прописаться в автозагрузке.
- Во время запуска ПК самостоятельно открывается браузер, его начальная страница изменена, постоянно расходуется сетевой трафик (хотя Вы ничего не делаете).
- От Вашего имени начинает рассылаться спам (через e-mail и аккаунты соцсетей).
- Перестает работать двойной щелчок мыши при открытии файлов (при условии, что манипулятор рабочий).
- Начинают бесследно пропадать документы, установленные приложения и прочие файлы.
- ПО не запускается или выполняется с ошибками, которых ранее не было.
Если имеют место быть какие-либо из перечисленных признаков, есть вероятность заражения. Но не стоит паниковать, ведь я всегда готов подсказать, как удалить вирусы.
Способы обнаружения
Я не буду рассказывать, как выявить вредоносный код (файл) с помощью антивирусного софта. Уверен, с этим справится каждый. Достаточно запустить полную проверку с помощью встроенного / стороннего ПО (Kaspersky, Dr.Web Cure It!).
Хочу подробнее рассказать о случае, когда система работает без антивируса (или от последнего нет никакой пользы).
Проверяем диспетчер процессов
Это первое, что приходит мне в голову, когда возникают подозрения. Зачастую, троян маскируется под безопасный процесс и делает свое темное дело. Как обнаружить?
- Открываем перечень запущенных служб и приложений с помощью комбинации « Ctrl — Shift — Esc ».
- Следует сразу же исключить системные.
- Внимательно просмотрите Ваш перечень. «Шпионы» и прочие вредоносные программы могут скрываться под такими же названиями с разницей в одну-две буквы. Вот, присмотритесь:
- Если список содержит названия, состоящие из бессмысленного набора букв и цифр, стоит задуматься:
- Если в чём-то сомневаетесь, то лучше «забейте» название процесса в поисковой системе, чтобы узнать о нём побольше.
Одним из таких является вирус Recycler я рассказывал о как можно от него избавиться.
Анализируем автозагрузку
Большинство вирусов запускаются вместе с системой, блокируя её или активируя свои вредные функции. Хотите узнать, как «вычислить» таких злодеев?
- Вызываем окно «Выполнить» с помощью комбинации Win + R.
- Вводим комaнду «msconfig» для открытия конфигуратора Microsoft.
- На экране появится нечто подобное (только с другими элементами списка «Автозагрузка»):
- Опять же, смотрите на названия, проверяйте их через Google / Яндекс. Если уверены, что самостоятельно не добавляли элемент в автозапуск, и он не связан с установленным приложением, то смело удаляйте его.
- Перезапустите ПК и повторите предыдущие шаги. Если удаленный пункт снова активен, значит это однозначно вирус. Потребуется более доскональное сканирования и лечение.
Вот мы и разобрались с простейшими способами, которые позволят совершенно бесплатно выявить угрозу на начальном этапе. Такой подход максимально эффективен для предотвращения дальнейшего распространения «заразы». Больше материала можно найти в разделе лечение вирусов, там описаны самые распространенные вирусы и методы борьбы с ними.
Если статья оказалась полезной, почему бы не поблагодарить автора (это я о себе) репостами в социальных сетях. Буду очень признателен. И не забывайте, что при любой ситуации можете обращаться ко мне через форму комментирования.
2 Как с ними бороться
Не надо ждать, пока вирусы заразят ваш компьютер и успеют испортить хранимые в нем данные. Чем раньше начнется подготовка к нападению вирусов — тем лучше. Правильно организованная защита позволит сразу обнаружить появившийся вирус и он не сможет нанести программному обеспечению и вашим данным большого урона.
Читать еще: 5 способов повысить иммунитет новорождённому ребёнку: говорит детский докторОсновным средством борьбы с вирусами остаются антивирусные программы. В этой главе мы приведем основные сведения об антивирусных программах, приведем несколько примеров их использования.
Однако даже без применения антивирусных программ можно постараться предотвратить проникновение вирусов в компьютер и постараться уменьшить вред, который они нанесут в случае заражения.
Для тех, кто не смог уберечь свой компьютер от вирусов, мы дадим советы, как предотвратить дальнейшее распространение вируса и удалить его, максимально сохранив свои данные.
Методы обнаружения вирусов
Вы можете пользоваться антивирусным программным обеспечением, не имея представления о том, как оно устроено. Однако, в настоящее время существует очень много антивирусных программ, так что вам так или иначе придется на чем-то остановить свой выбор. Чтобы этот выбор был по возможности обоснован и установленные программы обеспечивали максимальную степень защиты от вирусов, необходимо изучить методики, применяемые этими программами.
Существует несколько основопологающих методик обнаружения и защиты от вирусов. Антивирусные программы могут реализовывать только некоторые методики или их комбинации.
· Аппаратная защита от вирусов
Кроме того, большинство антивирусных программ обеспечивают автоматическое восстановление зараженных программ и загрузочных секторов.
Объекты заражения
В первой главе мы уже рассказали о различных типах вирусов и о способах их распространения. Перед тем как приступить к рассмотрению антивирусных средств, перечислим области файловой системы компьютера, которые подвергаются заражению вирусами и которые необходимо проверять:
· Выполнимые файлы программ, драйверов
· Главная загрузочная запись и загрузочные секторы
· Файлы конфигурации AUTOEXEC.BAT и CONFIG.SYS
· Документы в формате текстового процессора Microsoft Word for Windows
Когда резидентный вирус становится активным, он помещает свой постоянно работающий модуль в оперативной памяти компьютера. Поэтому антивирусные программы должны выполнять проверку оперативной памяти. Так как вирусы могут использовать не только стандартную память, то желательно выполнять проверку верхней памяти. Например, антивирус Doctor Web проверяет первые 1088 Кбайт оперативной памяти.
Сканирование
Самая простая методика поиска вирусов, заключается в том, что антивирусная программа последовательно просматривает проверяемые файлы в поиске сигнатур известных вирусов. Под сигнатурой понимается уникальная последовательность байт, принадлежащая вирусу, и не встречающаяся в других программах.
Определение сигнатуры вируса довольно сложная задача. Сигнатура не должна содержаться в нормальных программах, не зараженных данным вирусом. В противном случае возможны ложные сpaбатывания, когда вирус обнаруживается в совершенно нормальной, не зараженной программе.
Конечно, программам-сканерам не обязательно хранить в себе сигнатуры всех известных вирусов. Они могут, например, хранить только контрольные суммы сигнатур.
Антивирусные программы-сканеры, которые могут удалить обнаруженные вирусы, обычно называются полифагами. Самой известной программой-сканером является Aidstest Дмитрия Лозинского. Aidstest выполняет поиск вирусов по их сигнатурам. Поэтому он обнаруживает только простейшие полиморфные вирусы.
В первой главе мы рассказывали о так называемых шифрующихся и полиморфных вирусах. Полиморфные вирусы полностью изменяют свой код при заражении новой программы или загрузочного сектора. Если вы выделите два экземпляра одного и того же полиморфного вириуса, то они могут не совпадать ни в одном байте. Как следствие, для таких вирусов невозможно определить синатуру. Поэтому простые антивирусные программы-сканеры не могут обнаружить полиморфные вирусы.
Антивирусные программы-сканеры могут обнаружить только уже известные вирусы, которые были предварительно изучены и для которых была определена сигнатура. Таким образом, использование программ-сканеров не защищает ваш компьютер от проникновения новых вирусов.
Для эффективного использования антивирусных программ, реализующих метод сканирования, необходимо постоянно обновлять их, получая самые последние версии.
Эвристический анализ
Эвристический анализ является относительно новым методом в обнаружении вирусов. Он позволяет обнаруживать ранее неизвестные вирусы, причем для этого не надо предварительно собирать данные о файловой системе, как этого требует метод обнаружения изменений.
Антивирусные программы, реализующие метод эвристического анализа, проверяют программы и загрузочные секторы дисков и дискет, пытаясь обнаружить в них код, хаpaктерный для вирусов. Так например, эвристический анализатор может обнаружить, что в проверяемой программе присутствует код, устанавливающий резидентный модуль в памяти.
Антивирусная программа Doctor Web, входящая в состав комплекта AO “ДиалогНаука”, имеет мощный эвристический анализатор, позволяющий обнаружить большое количество новых вирусов.
Если эвристический анализатор сообщает, что файл или загрузочный сектор возможно заражен вирусом, вы должны отнестись к этому с большим вниманием. Желательно исследовать такие файлы с помощью самых последних версий антивирусных программ или направить их для детального изучения в АО “ДиалогНаука”.
В комплект IBM AntiVirus входит специальный модуль, ориентированный на обнаружение вирусов в загрузочных секторах. Этот модуль использует запатентованную технологию (patent-pending neural network technology from IBM) эвристического анализа и позволяет определить, заражен ли загрузочный сектор вирусом.
Обнаружение изменений
Когда вирус заражает компьютер, он обязательно делает изменения на жестком диске, например, дописывает свой код в выполнимый файл, добавляет вызов программы-вируса в файл AUTOEXEC.BAT, изменяет загрузочный сектор, создает файл-спутник.
Антивирусные программы могут предварительно запомнить хаpaктеристики всех областей диска, которые подвергаются нападению вируса, а затем периодически проверять их (отсюда происходит их название программы-ревизоры). Если будет обнаружено изменение, тогда возможно что на компьютер напал вирус.
Обычно программы-ревизоры запоминают в специальных файлах образы главной загрузочной записи, загрузочных секторов логических дисков, параметры всех контролируемых файлов, а также информацию о структуре каталогов и номера плохих кластеров диска. Могут проверяться и другие хаpaктеристики компьютера — объем установленной оперативной памяти, количество подключенных к компьютеру дисков и их параметры.
Программы-ревизоры могут обнаружить большинство вирусов, деже тех, которые ранее не были известны. Вирусы, заражающие файлы программ только при их копировании, ревизоры как правило обнаружить не могут, так как они не знают параметров файла, которые были до копирования.
Однако следует учитывать, что не все изменения вызваны вторжением вирусов. Так, загрузочная запись может изменится при обновлении версии операционной системы, а некоторые программы записывают внутри своего выполнимого файла данные. Комaндные файлы изменяются еще чаще, например, файл AUTOEXEC.BAT обычно изменяется во время установки нового программного обеспечения.
Программы-ревизоры не помогут и в том случае, когда вы записали в компьютер новый файл, зараженный вирусом. Правда, если вирус заразит другие программы, уже учтенные ревизором, он будет обнаружен.
Простейшая программа-ревизор Microsoft Anti-Virus (MSAV) входит в состав операционной системы MS-DOS. Основным, и возможно единственным ее достоинством является то, что на нее не нужно дополнительно тратить деньги.
Значительно более развитые средства контроля предоставляет программа-ревизор Advanced Diskinfoscope (ADinf), входящая в состав антивирусного комплекта АО “ДиалогНаука”. Более подробно мы рассмотрим эти средства в следующем разделе, а сейчас только заметим, что вместе с ADinf вы можете использовать лечащий модуль ADinf Cure Module (ADinfExt). ADinf Cure Module использует собранную ранее информацию о файлах для восстановления их после поражения неизвестными вирусами.
Конечно, не все вирусы могут быть удалены ADinf Cure Module и другими программными средствами, основанными на контроле и периодической проверке компьютера. Например, если новый вирус шифрует диск, как это делает вирус OneHalf, тогда его удаление без расшифровки диска скорее всего приведет к потере информации. Вирусы такого типа могут быть удалены только после внимательного изучения специалистами и включения модулей для борьбы с ними в обычные полифаги — Aidstest или Doctor Web.
Известные нам на момент написания книги антивирусные программы-ревизоры непригодны для обнаружения вирусов в файлах документов, так как они по своей сути постоянно изменяются. Ряд программ после внедрения в них кода вакцины перестают работать. Поэтому для контроля за ними следует использовать программы-сканеры или эвристический анализ.
Резидентные мониторы
Существует еще целый класс антивирусных программ, которые постоянно находятся в оперативной памяти компьютера, и отслеживают все подозрительные действия, выполняемые другими программами. Такие программы носят название резидентных мониторов или сторожей.
Резидентный монитор сообщит пользователю, если какая-либо программа попытается изменить загрузочный сектор жесткого диска или дискеты, выполнимый файл. Резидентный монитор сообщит вам, что программа пытается оставить в оперативной памяти резидентный модуль и т. д.
Большинство резидентных мониторов позволяют автоматически проверять все запускаемые программы на заражение известными вирусами, тоесть выполняют функции сканера. Такая проверка будет занимать некторое время и процесс загрузки программы замедлится, но зато вы будете уверены, что известные вирусы не смогут активизироваться на вашем компьютере.
К сожалению, резидентные мониторы имеют очень много недостатков, которые делают этот класс программ малопригодными для использования.
Многие программы, даже не содержащие вирусов, могут выполнять действия, на которые реагируют резидентные мониторы. Например, обычная комaнда LABEL изменяет данные в загрузочном секторе и вызывает сpaбатывание монитора.
Поэтому работа пользователя будет постоянно прерываться раздражающими сообщениями антивируса. Кроме того, пользователь должен будет каждый раз решать, вызвано ли это сpaбатывание вирусом или нет. Как показывает пpaктика, рано или поздно пользователь отключает резидентный монитор.
И наконец, самый маленький недостаток резидентных мониторов заключается в том, что они должны быть постоянно загружены в оперативную память и, следовательно, уменьшают объем памяти, доступной другим программам.
В составе операционной системы MS-DOS уже есть резидентный антивирусный монитор VSafe.
Вакцинирование программ
Для того, чтобы человек смог избежать некоторых заболеваний, ему делают прививку. Существует способ защиты программ от вирусов, при котором к защищаемой программе присоединяется специальный модуль контроля, следящий за ее целостностью. При этом может проверяться контрольная сумма программы или какие-либо другие хаpaктеристики. Когда вирус заражает вакцинированный файл, модуль контроля обнаруживает изменение контрольной суммы файла и сообщает об этом пользователю.
Увы, в отличие от прививок человеку, вакцинирование программ во многих случаях не спасает их от заражения. Стелс-вирусы легко обманывают вакцину. Зараженные файлы работают также как обычно, вакцина не обнаруживает заражения. Поэтому мы не станем останавливаться на вакцинах и продолжим рассмотрение других средств защиты.
Аппаратная защита от вирусов
На сегодняшний день одним из самых надежных спсобов защиты компьютеров от нападений вирусов являются аппаратно-программные средства. Обычно они представляют собой специальный контроллер, вставляемый в один из разъемов расширения компьютера и программное обеспечение, управляющее работой этого контроллера.
Благодаря тому, что контроллер аппаратной защиты подключен к системной шине компьютера, он получает полный контроль над всеми обращениями к дисковой подсистеме компьютера. Программное обеспечение аппаратной защиты позволяет указать области файловой системы, которые нельзя изменять. Вы можете защитить главную загрузочную запись, загрузочные сектора, выполнимые файлы, файлы конфигурации и т. д.
Если аппаратно-программный комплекс обнаружит, что какая-либо программа пытается нарушить установленную защиту, он может сообщить об этом пользователю и заблокировать дальнейшею работу компьютера.
Аппаратный уровень контроля за дисковой подсистемой компьютера не позволяет вирусам замаскировать себя. Как только вирус проявит себя, он сразу будет обнаружен. При этом совершенно безразлично, как работает вирус и какие средства он использует для доступа к дискам и дискетам.
Читать еще: Крема для лечения экземы на рукахАппаратно-программные средства защиты позволяют не только защитить компьютер от вирусов, но также вовремя пресечь работу троянских программ, нацеленных на разрушение файловой системы компьютера. Кроме того аппаратно-программные средства позволяют защитить компьютер от неквалифицированного пользователя и злоумышленника, они не дадут ему удалить важную информацию, отформативать диск, изменить файлы конфигурации.
В настоящее время в России серийно производится только аппаратно-программный комплекс Sheriff. Он надежно предотвратит заражение компьютера, позволит пользователю тратить значительно меньше времени на антивирусный контроль компьютера обычными программными средствами.
За рубежом производится намного больше средств аппаратно-программной защиты, но их цена занчительно выше, чем у Sheriff и составляет несколько сотен американских долларов. Вот несколько названий таких комплексов:
Все методы обнаружения вирусов на компьютере
В настоящее время существует множество антивирусных программных средств, но их можно разделить на группы по методам поиска вирусов, которые они реализовывают.
Рассмотрим эти методы.
Это самый простой метод поиска вируса. Он основан на последовательном просмотре памяти компьютера, загрузочных секторов и проверяемых файлов в поиске так называемых сигнатур (масок) известных вирусов.
Сигнатура вируса — это уникальная последовательность байтов, принадлежащая вирусу и не встречающаяся в других программах.
Определение сигнатуры вируса очень сложная задача. Необходимо тщательно изучить принцип работы вируса и сравнить программы, зараженные данным вирусом, и незараженные. Кроме того, сигнатура не должна содержаться в других программах, иначе возможны ложные сpaбатывания.
Надежность принципа поиска по маске ограниченной длины не очень высока. Вирус легко модифицировать, чем и занимаются многие авторы вирусов. Достаточно изменить строковую константу, текст выдаваемого сообщения или одну из первых комaнд, чтобы вирус стал совсем новым.
Надежность увеличивается при приведении вируса к каноническому виду: то есть обнулении всех байтов, приходящихся на переменные и константы.
Хранение сигнатур канонических форм всех известных вирусов (вспомните, что на сегодняшний день их число огромно) требует неоправданно много памяти. Достаточно хранить только контрольную сумму сигнатур вирусов.
При подозрении на вирус необходимо привести подозреваемый код к каноническому виду, подсчитать контрольную сумму и сравнить с эталоном.
Часто в качестве сигнатуры берется хаpaктерный для этого вируса фрагмент кода, например, фрагмент обработчика прерывания. Не все вирусы имеют сигнатуры в виде строк байт, для некоторых удается в качестве сигнатур использовать регулярные выражения, а некоторые вирусы могут вообще не иметь сигнатур, например, полиморфные.
2. Обнаружение изменений, или контроль целостности.
Контроль целостности основан на выполнении двух процедур:
· постановка на учет;
· контроль поставленного на учет.
При внедрении вируса в компьютерную систему обязательно происходят изменения в системе (которые некоторые вирусы успешно маскируют). Это и изменение объема доступной оперативной памяти, и изменение загрузочных секторов дисков, и изменения самих файлов.
Достаточно запомнить хаpaктеристики, которые подвергаются изменениям в результате внедрения вируса, а затем периодически сравнивать эти эталонные хаpaктеристики с действующими.
3. Эвристический анализ.
Метод, который стал использоваться для обнаружения вирусов сравнительно недавно. Он предназначен для обнаружения новых неизвестных вирусов. Программы, реализующие этот метод, тоже проверяют загрузочные секторы дисков и файлы, только уже пытаются обнаружить в них код, хаpaктерный для вирусов. Например, таким может быть код, устанавливающий резидентный модуль в памяти и т.п.
4. Метод резидентного сторожа.
Этот метод направлен на выявление «подозрительных» действий пользовательских программ, например, таких, как запись на диск по абсолютному адресу, форматирование диска, изменение загрузочного сектора, изменение или переименование выполняемых программ, появление новых резидентных программ, изменение системных областей DOS и других. При обнаружении «подозрительного» действия необходимо «спросить разрешение» у пользователя на выполнение такого действия.
5. Вакцинирование программ.
Этот метод заключается в дописывании к исполняемому файлу дополнительной подпрограммы, которая первой получает управление при запуске файла, выполняет проверку целостности программы. Проверяться могут любые изменения, например, контрольная сумма файла или другие хаpaктеристики.
Что такое ложные тревоги?
Задача любого антивирусного средства — обнаружить вирус в системе с максимальной степенью надежности, то есть не вызывая при этом ложные тревоги.
Ложные тревоги делят на два типа:
· ложная позитивная (положительная) ;
· ложная негативная (отрицательная).
Ложная позитивная тревога — это когда антивирусное средство сообщает о наличии вируса, а на самом деле его нет.
Ложная негативная тревога — это когда антивирусное средство говорит, что вируса нет, а на самом деле он есть.
Некоторые специалисты ложные тревоги называют ошибками антивирусов, причем ложные негативные тревоги (несpaбатывания) называются ошибками первого рода, а ложные позитивные тревоги — ошибками второго рода.
В идеале антивирус должен обнаруживать все возможные вирусы и не должен вызывать ложных тревог.
Типы антивирусных средств
1. Программы-детекторы, или программы-сканеры.
Это наиболее известный и наиболее распространенный вид антивирусных программ. Они осуществляют поиск известных версий вирусов методом сканирования, т.е. поиском сигнатур вирусов. Поэтому программы-сканеры могут обнаружить только уже известные вирусы, которые были предварительно изучены, и для которых была определена сигнатура.
Использование программ-сканеров не защищает компьютер от новых вирусов. Кроме того, такие программы не могут обнаружить большинство полиморфных вирусов, так как для таких вирусов невозможно определить сигнатуру.
Для эффективного использования программ-детекторов, реализующих метод простого сканирования, рекомендуется постоянно обновлять их, получая самые последние версии, так как в них уже будут включены новые типы вирусов.
В последнее время программы-детекторы поставляются со специальными базами данных — сигнатурами вирусов, которые может пополнять сам пользователь. Некоторые сканеры позволяют подключать к своей базе данных внешние файлы — дополнения, содержащие сведения о новых вирусах. В таких случаях достаточно приобретать новые файлы-дополнения к базе для обновления антивирусной программы.
Для компьютеров, подключенных к Internet , существует возможность автоматического пополнения базы сигнатур вирусов новыми сигнатурами, конечно же, при использовании соответствующих антивирусных программ.
Программы-сканеры пpaктически не вызывают ложные позитивные тревоги. Если программа сообщила о заражении, то можно быть уверенным, что это действительно так. (Ранние версии иногда ошибались, например, объявляли зараженными файлы других антивирусных программ, находя в них сигнатуры вирусов.)
Но если сканер не обнаружил вирусы в системе, это означает только то, что в системе нет вирусов, на которые он рассчитан.
Антивирусные программы-сканеры, которые могут удалить обнаруженный вирус, называются полифагами.
В последнее время распространяются полифаги, которые кроме простого сканирования в поисках сигнатур вирусов, содержащихся в их вирусной базе, используют еще и эвристический анализ проверяемых объектов на наличие неизвестных вирусов. Они изучают код проверяемых файлов и содержимое загрузочных секторов и пытаются обнаружить в них участки, выполняющие хаpaктерные для вирусов действия. Сканеры, использующие эвристический поиск, уже способны обнаружить многие полиморфные и автоматические вирусы, а также некоторые новые неизвестные вирусы (неизвестные самому антивирусу).
2. Программы-мониторы, или резидентные сторожа.
Это целый класс антивирусов, которые постоянно находятся в оперативной памяти компьютера и отслеживают все подозрительные действия, выполняемые другими программами. С помо щ ью монитора можно остановить распостранение вируса на самой ранней стадии.
Их цель — не пропустить вирус на компьютер. И поэтому они контролируют обращение к дискам. При обнаружении «подозрительного» действия программа-монитор либо блокирует выполнение такого действия до специального разрешения пользователя, либо просто выдаёт на экран предупреждающее сообщение, либо совершает другие специальные действия.
Рассмотрим наиболее опасные из «подозрительных» действий :
· низкоуровневое форматирование диска ;
Это очень опасная операция . Вызывает потерю всех данных на диске. Если монитор обнаружит попытку выполнения такой операции, то пользователю необходимо отменить её и проверить компьютер на наличие вирусов;
· запись данных в загрузочные секторы жёсткого диска;
Если пользователь не форматировал диски, не изменял метку диска и не устанавливал новую версию ОС, то необходимо отменить операцию и проверить компьютер на наличие вирусов;
· запись данных в загрузочный сектор дискеты;
Если пользователь не форматировал дискету, не изменял её метку (комaнда LABEL ), не записывал на дискету ОС (комaндой SYS или другим способом), необходимо отменить операцию и проверить компьютер на наличие вирусов;
· запись данных в исполняемый файл;
В случае, когда монитор сообщает о такой попытке, необходимо обратить внимание на файл , в который выполняется запись. Если это неизменяемый файл, и пользователь уверен в этом, то необходимо отменить операцию и проверить компьютер на наличие вирусов. Но некоторые программы действительно могут записывать в свой выполнимый файл различную информацию, например, свою конфигурацию.
. Пользователь должен быть знаком с программным обеспечением своего компьютера.
· Изменение атрибута файла;
Скорее всего это действие вируса. В этом случае пользователь должен проанализировать ситуацию.
Невысокая популярность программ-мониторов объясняется психологическим фактором. Многие программы могут выполнять действия, на которые реагируют мониторы. Большое число запросов мешает пользователю работать. Монитор может «замучить» пользователя, и он его отключит. Мониторы отнимают время на проверку программ во время их запуска, и процесс загрузки программы замедлится. Ещё одним недостатком программ-мониторов является то, что они уменьшают объём памяти, доступной программам пользователей, ведь он должен резидентно находится в памяти.
Поэтому мониторы необходимо применять в следующих случаях:
· запуск новых программ неизвестного происхождения;
· во время подозрения на вирус;
· некоторое время после удаления вируса для исключения его появления вновь.
В настоящее время фирмы-производители антивирусных средств поставляют, как правило, целые антивирусные комплексы, а не отдельные программы. В состав многих таких комплексов входят резидентные мониторы. Например, вместе с антивирусным пакетом Antiviral Toolkid Pro ( AVP ) , солзданным фирмой КАМИ (Е. Касперский) поставляется резидентрый монитор Antiviral Monitor . Он позволяет обнаружить и сообщить обо всех проявлениях, которые могут быть вызваны компьютерными вирусами. В комплект Microsoft Anti — Virus входит резидентный монитор Vsafe , позволяющий постоянно контролировать работу компьютера. В состав комплекта Norton AntiVirus for Windows 9 x входит приложение Norton AntiVirus Auto — Protect . Кроме проверки запускаемых файлов Norton AntiVirus Auto — Protect выполняет все функции обычного резидентного монитора, позволяя при этом пользователям сделать установки случаев, в которых необходимо сообщать о подозрительном действии.
Большинство распространённых ныне мониторов предназначены для контроля за подключаемыми к компьютеру дисками. Такие мониторы освобождают пользователя от необходимости помнить об обязательном сканировании каждого нового диска или дискеты. Монитор открывает доступ к диску, лишь убедившись в его «чистоте». Так работает, например, монитор McAfee VShield (щит от вирусов) пакета McAfee VirusScan for Windows 9 x ( VirusScan 95). Он также выполняет контроль исполняемых программ и копируемых файлов.
В пакет антивирусной защиты Dr Solomon ’ s AntiVirus Toolkit входит монитор WinGuard , в обязанности которого входит контроль за подключением внешних дисков, выполнением операций с файлами и поведением исполняемых файлов (сканирование файлов при записи).
2. Программы — ревизоры.
Читать еще: Декарис как иммуномодулятор: аналоги, отзывыПрограммы-ревизоры первоначально запоминают в специальных файлах образы главной загрузочной записи, загрузочных секторов логических дисков, параметры всех контролируемых файлов (иногда только контрольную сумму файлов), информацию о структуре каталогов, номера плохих кластеров диска, иногда — объем установленной оперативной памяти, количество подключенных к компьютеру дисков и их параметры и многое другое.
Для определения наличия вируса в системе программы-ревизоры проверяют созданные ими образы и производят сравнение с текущим состоянием. Если обнаружено изменение — вполне вероятно, что эти изменения произведены вирусом.
Ревизоры могут обнаружить любые вирусы, даже ранее неизвестные. Но для этого необходимо «поставить на учет” заведомо чистые от вирусов возможные объекты нападения. Кроме этого, ревизор не обнаружит вирус, который попал с новым зараженным уже файлом, так как он «не знает” параметров этого файла до заражения вирусом. Вот когда новый вирус уже заразит другие файлы или загрузочный сектор, он будет обнаружен ревизором. Не сможет ревизор обнаружить вирус, заражающий файлы только при копировании, опять же не имея возможности сравнить параметры файлов. Ревизоры неэффективно использовать для обнаружения вирусов в файлах документов, так как эти файлы очень часто изменяются. Кроме того, следует учитывать, что ревизоры только обнаруживают изменения, но не все изменения связаны с внедрением вируса. Загрузочная запись может измениться при обновлении версии операционной системы, могут измениться комaндные файлы, некоторые программы могут записывать в свои исполняемые файлы данные, что тоже приводит к изменению файлов, в конце концов, пользователь может просто перекомпилировать свою программу.
Антивирусная программа
Антивирусная программа (антивирус) — изначально программа для обнаружения и лечения вредоносных объектов или инфицированных файлов, а также для профилактики — предотвращения заражения файла или операционной системы вредоносным кодом.
Многие современные антивирусы позволяют обнаруживать и удалять также троянские программы и прочие вредоносные программы. Так же существуют программы — файрволы, которые получают функции, роднящие их с антивирусами.
Первые наиболее простые антивирусные программы появились почти сразу после появления вирусов. Сейчас разработкой антивирусов занимаются крупные компании. Как и у создателей вирусов, в этой сфере также сформировались оригинальные приёмы — но уже для поиска и борьбы с вирусами. Современные антивирусные программы могут обнаруживать сотни тысяч вирусов, но ни одна из них не даст 100% защиты.
Антивирусное программное обеспечение состоит из подпрограмм, которые пытаются обнаружить, предотвратить размножение и удалить компьютерные вирусы и другие вредоносные программы.
Евгений Касперский использовал следующую классификацию антивирусов в зависимости от их принципа действия (определяющего функциональность):
· Сканеры (устаревший вариант — «полифаги») — определяют наличие вируса по базе сигнатур, хранящей сигнатуры (или их контрольные суммы) вирусов. Их эффективность определяется актуальностью вирусной базы и наличием эвристического анализатора (см.: Эвристическое сканирование).
· Ревизоры (класс, близкий к IDS) — запоминают состояние файловой системы, что делает в дальнейшем возможным анализ изменений.
· Сторожа (мониторы) — отслеживают потенциально опасные операции, выдавая пользователю соответствующий запрос на разрешение/запрещение операции.
· Вакцины — изменяют прививаемый файл таким образом, чтобы вирус, против которого делается прививка, уже считал файл заражённым. В современных (2007 год) условиях, когда количество возможных вирусов измеряется сотнями тысяч, этот подход неприменим.
Современные антивирусы сочетают все вышесказанные функции.
Антивирусы так же можно разделить на:
· Продукты для домашних пользователей:
· Комбинированные продукты (например, к классическому антивирусу добавлен антиспам, файрвол, антируткит и т. д.) ;
· Антивирусы на рабочих станциях («endpoint»).
Методы обнаружения вирусов
Антивирусное программное обеспечение обычно использует два отличных друг от друга метода для выполнения своих задач:
· Сканирование файлов для поиска известных вирусов, соответствующих определению в антивирусных базах
· Обнаружение подозрительного поведения любой из программ, похожего на поведение заражённой программы.
Метод соответствия определению вирусов в словаре
Это метод, когда антивирусная программа, просматривая файл, обращается к антивирусным базам, которые составлены производителем программы-антивируса. В случае соответствия какого либо участка кода просматриваемой программы известному коду (сигнатуре) вируса в базах, программа-антивирус может по запросу выполнить одно из следующих действий:
1) Удалить инфицированный файл.
2) Заблокировать доступ к инфицированному файлу.
3) Отправить файл в карантин (то есть сделать его недоступным для выполнения с целью недопущения дальнейшего распространения вируса).
4) Попытаться «вылечить» файл, удалив вирус из тела файла.
5) В случае невозможности лечения/удаления, выполнить эту процедуру при следующей перезагрузке операционной системы.
Для того, чтобы такая антивирусная программа успешно работала на протяжении долгого времени, в базу сигнатур вирусов нужно периодически загружать (обычно, через Интернет) данные о новых вирусах. Если бдительные и имеющие склонность к технике пользователи определят вирус по горячим следам, они могут послать зараженные файлы разработчикам антивирусной программы, а те затем добавляют информацию о новых вирусах в свои базы.
Для многих антивирусных программ с базой сигнатур хаpaктерна проверка файлов в тот момент, когда операционная система создаёт, открывает, закрывает или посылает файлы по почте. Таким образом, программа может обнаружить известный вирус сразу после его получения. При этом системный администратор может установить в антивирусной программе расписание для регулярной проверки (сканирования) всех файлов на жёстком диске компьютера.
Хотя антивирусные программы, созданные на основе поиска сигнатур, при обычных обстоятельствах могут достаточно эффективно препятствовать вспышкам заражения компьютеров, авторы вирусов стараются держаться впереди таких программ-антивирусов, создавая «олигоморфические», «полиморфические» и, самые новые, «метаморфические» вирусы, в которых некоторые части шифруются или искажаются так, чтобы было невозможно обнаружить совпадение с определением в словаре вирусов.
Метод обнаружения странного поведения программ
Антивирусы, использующие метод обнаружения подозрительного поведения программ не пытаются идентифицировать известные вирусы, вместо этого они прослеживают поведение всех программ. Если программа пытается записать какие-то данные в исполняемый файл (.EXE-файл), программа-антивирус может пометить этот файл, предупредить пользователя и спросить что следует сделать.
В настоящее время, подобные превентивные методы обнаружения вредоносного кода, в том или ином виде, широко применяются в качестве модуля антивирусной программы, а не отдельного продукта.
Другие названия: проактивная защита, поведенческий блокиратор, Host Intrusion Prevention System (HIPS).
В отличие от метода поиска соответствия определению вируса в антивирусных базах, метод обнаружения подозрительного поведения даёт защиту от новых вирусов, которых ещё нет в антивирусных базах. Однако следует учитывать, что программы или модули, построенные на этом методе, выдают также большое количество предупреждений (в некоторых режимах работы), что делает пользователя мало восприимчивым ко всем предупреждениям. В последнее время эта проблема ещё более ухудшилась, так как стало появляться всё больше не вредоносных программ, модифицирующих другие exe-файлы, несмотря на существующую проблему ошибочных предупреждений. Несмотря на наличие большого количества предупреждающих диалогов, в современном антивирусном программном обеспечении этот метод используется всё больше и больше. Так, в 2006 году вышло несколько продуктов, впервые реализовавших этот метод: Kaspersky Internet Security, Kaspersky Antivirus, Safe-n-Sec, F-Secure Internet Security, Outpost Firewall Pro, DefenceWall. Многие программы-файрволы издавна имели в своем составе модуль обнаружения странного поведения программ.
Метод обнаружения при помощи эмуляции
Некоторые программы-антивирусы пытаются имитировать начало выполнения кода каждой новой вызываемой на исполнение программы перед тем как передать ей управление. Если программа использует самоизменяющийся код или проявляет себя как вирус (то есть, например, немедленно начинает искать другие .EXE-файлы), такая программа будет считаться вредоносной, способной заразить другие файлы. Однако этот метод тоже изобилует большим количеством ошибочных предупреждений.
безопасность компьютер драйвер антивирусный
Метод «Белого списка»
Общая технология по борьбе с вредоносными программами — это «белый список». Вместо того, чтобы искать только известные вредоносные программы, эта технология предотвращает выполнение всех компьютерных кодов за исключением тех, которые были ранее обозначены системным администратором как безопасные. Выбрав этот параметр отказа по умолчанию, можно избежать ограничений, хаpaктерных для обновления сигнатур вирусов. К тому же, те приложения на компьютере, которые системный администратор не хочет устанавливать, не выполняются, так как их нет в «белом списке». Так как у современных предприятий есть множество надежных приложений, ответственность за ограничения в использовании этой технологии возлагается на системных администраторов и соответствующим образом составленные ими «белые списки» надежных приложений. Работа антивирусных программ с такой технологией включает инструменты для автоматизации перечня и эксплуатации действий с «белым списком».
· Иногда приходится отключать антивирусную защиту при установке обновлений программ, таких, например, как Windows Service Packs. Антивирусная программа, работающая во время установки обновлений, может стать причиной неправильной установки модификаций или полной отмене установки модификаций. Перед обновлением Windows 98, Windows 98 SE или Windows ME на Windows XP лучше отключить защиту от вирусов, в противном случае процесс обновления может завершиться неудачей.
· Некоторые антивирусные программы на самом деле являются шпионским ПО, которое под них маскируется. Лучше несколько раз проверить, что антивирусная программа, которую вы загружаете, действительно является таковой. Ещё лучше использовать ПО известных производителей и загружать дистрибутивы только с сайта разработчика.
· Обучение пользователей может стать эффективным дополнением к антивирусному программному обеспечению. Простое обучение пользователей правилам безопасного использования компьютера (например не загружать и не запускать на выполнение неизвестные программы из Интернета) снизило бы вероятность распространения вирусов и избавило бы от надобности пользоваться многими антивирусными программами.
· Пользователи компьютеров не должны всё время работать с правами администратора. Если бы они пользовались режимом доступа обычного пользователя, то некоторые разновидности вирусов не смогли бы распространяться (или, по крайней мере, ущерб от действия вирусов был бы меньше). Это одна из причин, по которым вирусы в Unix-подобных системах относительно редкое явление.
· Метод обнаружения вирусов по поиску соответствия в словаре не всегда достаточен из-за продолжающегося создания всё новых вирусов, метод подозрительного поведения не работает достаточно хорошо из-за большого числа ошибочных решений о принадлежности к вирусам не заражённых программ.
· Различные методы шифрования и упаковки вредоносных программ делают даже известные вирусы не обнаруживаемыми антивирусным программным обеспечением. Для обнаружения этих «замаскированных» вирусов требуется мощный механизм распаковки, который может дешифровать файлы перед их проверкой. Однако во многих антивирусных программах эта возможность отсутствует и, в связи с этим, часто невозможно обнаружить зашифрованные вирусы.
· Некоторые антивирусные программы могут значительно понизить быстродействие. Пользователи могут запретить антивирусную защиту, чтобы предотвратить потерю быстродействия, в свою очередь, увеличивая риск заражения вирусами. Для максимальной защищённости антивирусное программное обеспечение должно быть подключено всегда, несмотря на потерю быстродействия. Некоторые антивирусные программы (как AVG for Windows) не очень сильно влияют на быстродействие.
· Некоторые из продуктов для лучшего обнаружения используют несколько ядер для поиска и удаления вирусов и программ-шпионов. Например, в разработке NuWave Software используется одновременно пять ядер (три для поисков вирусов и два для поиска программ-шпионов).