Антиви́русная програ́мма (антиви́рус, средство антивирусной защиты, средство обнаружения вредоносных программ) — специализированная программа для обнаружения компьютерных вирусов, а также нежелательных (считающихся вредоносными) программ и восстановления заражённых (модифицированных) такими программами файлов и .
Какие три задачи должна выполнять антивирусная программа?
Антивирусная программа должна выполнять три основные задачи: обнаружение вируса, удаление вируса, превентивная защита.
Что могут делать современные антивирусные программы?
- Сканирование файлов для поиска известных вирусов, соответствующих определению в антивирусных базах .
- Обнаружение подозрительного поведения любой из программ, похожего на поведение заражённой программы
Что защищает антивирус?
Антивирусы проверяют все программы и файлы, которые вы запускаете, на сигнатуры известных вредоносных программ и на наличие подозрительного кода с помощью эвристического анализа.
Огромный пак вирусов vs. Антивирусы | Минус система? | Лучший антивирус | UnderMind
Как устроен антивирус?
Каким образом работают сами антивирусы? Антивирусное программное обеспечение (АПО), устроено так, что анализирует программный код и данные путём сканирования файлов и потоков принимаемых данных в компьютер по сети, потом сравнивает эти данные с сигнатурами из баз данных сигнатур известных вирусов.
Для чего нужны антивирусные программы дайте их классификацию?
Антивирусными называются программы, предназначенные для защиты данных от разрушения, обнаружения и удаления компьютерных вирусов. Различают следующие разновидности антивирусных программ: фильтры, или сторожа; детекторы; доктора, или фаги; ревизоры; иммунизаторы, или вакцины.
Какая информация сохраняется для работы ревизоров в базе данных?
Ревизоры. Принцип работы ревизоров (например, ADinf) основан на подсчете контрольных сумм для присутствующих на диске файлов. Эти контрольные суммы затем сохраняются в базе данных антивируса, как и некоторая другая информация: длины файлов, даты их последней модификации и т.
Как Антивирусные программы выявляют вирусы?
Антивирусы делятся на сканеры и резидентные модули. Сканеры находят файлы на дисках, читают их и делают вывод об инфицировании вирусом. Резидентные антивирусы постоянно работают в оперативной памяти и проверяют каждый новый файл и программу на заражение вирусом.
Что такое антивирус простыми словами?
Антивирус — это средство защиты оборудования с программным обеспечением от вредоносного кода (вирусов). Всё, что делает антивирус, направлено на выявление вирусов, которые модифицируют файлы с целью максимального распространения и нарушения штатной работы операционной системы и приложений.
Как работает антивирус кратко?
Принцип работы антивирусных программ – обнаружение и удаление вредоносного кода с использованием всего комплекса необходимых технологий. Антивирусные технологии развиваются параллельно с эволюцией вредоносных программ, становясь всё более изощренными по мере усложнения угроз.
Нужно ли устанавливать антивирус на Windows 7?
Нужен ли антивирус для Windows 7? . Не стоит полагаться на эти средства — антивирусы для Windows 7 нужны хотя бы потому, что встроенная антивирусная защита рассчитана на обновления от Microsoft, а они выходят достаточно редко, оставляя на это время компьютер беззащитным от новых вирусов.
Как работает антивирус на компьютере?
Антивирусная программа исследует хранящиеся на дисках (или загружаемые из интернета) файлы и сравнивает результаты исследования с сигнатурами, записанными в антивирусной базе. В случае совпадения такой файл считается вредоносным.
Кто создал первый антивирус?
Первые антивирусные программы появились еще зимой 1984 года (первый вирус для персональных компьютеров Apple появился в 1977 году, и только в 1981 году появились вирусы, представляющие какую-либо угрозу) под названиями CHK4BOMB и BOMBSQAD. Их написал американский программист Энди Хопкинс (Andy Hopkins).
Какие антивирусные программы самые надежные?
- BullGuard Internet Security. .
- Avast Premium Security. .
- Ariva Antivirus Pro.
- Microsoft Windows Defender. .
- Bitdefender Internet Security. .
- McAfee LiveSafe. .
- 360 Total Security. .
- Malwarebytes for Windows. Антивирус помогает обнаружить различные угрозы и избавить от них компьютер.
Кто изобрел первый антивирус?
Первые антивирусы
Первые антивирусные утилиты появились зимой 1984 года. Энди Хопкинс (англ. Andy Hopkins) написал программы CHK4BOMB и BOMBSQAD. CHK4BOMB позволяла проанализировать текст загрузочного модуля и выявляла все текстовые сообщения и «подозрительные» участки кода (команды прямой записи на диск и др.).
Источник: chelc.ru
Сканер вирусов изнутри
Последний год я работал над реализацией вирусного сканера для одной антивирусной как ни странно компании.
Пост являет собой выжимку приобретенных знаний, и повествует хабрасообществу о внутреннем устройстве как ни странно антивирусного сканера.
Сканирующий движок или сканер — это фундамент антивирусного пакета. Являет собой бэк-энд антивируса и, как правило представлен в виде dll, так как сканер используется сразу несколькими программами из пакета.
Графическая оболочка в этом случае — лишь красивая обертка для отображения результатов движка. Всю полезную работу, делает движок в бэк-енде.
Локации вирусного ПО
- Сканирование произвольных файлов и папок, вплоть до целых дисков.
- Сканирование памяти. Сканируются все загруженные в память процессы и их dll.
- Сканирование загрузочных записей дисков (Master Boot Records — MBR).
- Сканирование системы на предмет следов вредоносного ПО. Проверка системных папок вроде %APPDATA%, %WINDIR% на предмет определенных файлов и папок. Сканирование реестра, также на предмет следов в автозагрузке и настройках.
Виды сканирования.
Сканирование делится на два основных вида: сигнатурный и эвристический.
Сканирование на основе сигнатур.
Другое название — хэш-скан (hash scan). Сканер проверяет файлы путем сравнения сигнатур файлов со словарем.
Обычно сигнатурой антивируса является MD5-хэш (16 байт) сгенерированный на основе тела известного вируса.
Таким образом, файл считается зараженным, если его хэш найден в базе сигнатур. Для локализации выявления вредоноса, хэш может вычисляться только для exe-файлов на основе PE-заголовка.
Такой вид сканирования позволяет определить вид атаки с высокой долей вероятности, без ложных срабатываний (чем грешит эвристическое сканирование).
К недостаткам хэш-скана относят неспособность выявить новые вирусы, которые отсутствуют в базе. А также беззащитность перед полиморфными или шифрующимися вирусами, в связи с чем требуются регулярные обновления базы сигнатур.
Также слабым местом хэш-скана является скорость проверки. Если бы не закон Мура, ни один современный компьютер уже не смог бы закончить сканирование с такой массой сигнатур в разумное время.
Эвристическое сканирование
Метод, в основе которого положено выявление вируса на основе заранее известных характеристик (эвристик). Например, для выявления загрузочного вируса прописавшегося в MBR, антивирус может считать загрузочную запись двумя путями: функцией WinAPI ReadFile, и с использованием драйвера прямого доступа к диску (direct disk access — DDA driver). А затем сравнить оба буфера. Если буферы различны, то с высокой долей вероятности
можно сказать, что мало того что вирус загрузочный, он еще и подменяет вызовы WinAPI.
Что для руткитов — обычная практика.
Другим примером эвристического скана, может быть поиск следов вируса в реестре и системных директориях. Как правило вирусы создают определенный набор файлов, и/или записей в реестре, по которым можно их выявить.
Перечисленные выше типы локаций вредоносного ПО, а именно сканирование следов, сканирование cookies и проверка загрузочных записей диска, также подпадают под вид эвристического сканирования.
Компоненты и вспомогательные модули сканера
Драйвер прямого доступа к диску
Необходим для обхода руткитов. В зараженной системе, руткиты используются
для заметания следов своего присутствия. Лучшим способом для этого является подмена вызовов API-функций.
В частности для работы с файлами: CreateFile, ReadFile итд. Когда антивирусная программа сканирует систему,
вызывая эти функции, то руткит может возвращать FALSE, когда такой вызов относится к нему. Чтобы обойти это,
сканер содержит в себе модуль непосредственного посекторного считывания с диска, без использования WinAPI.
Черно-Белые списки
Служат для фильтрации обнаружений, которые на самом деле не являются зловредами. Таким образом, антивирус не предупреждает об опасности, в случае ложного срабатывания.
Современные антивирусы, хранят базу в среднем от 5 млн. сигнатур. Причем довольно часто, для одного вируса, может существовать с десяток сигнатур. Возможная ситуация, что из нескольких тысяч системных файлов, найдется подходящий под сигнатуру файл. А это грозит тем, что антивирус удалит его, или переместит в карантин, что может привести к отказу системы вовсе.
Минимизировать ложные срабатывания — главный приоритет любой антивирусной компании.
Чтобы пройти самый престижный антивирусный тест — virus bulletin, антивирус должен показать 100% результат обнаружения, при этом не выдав единого ложного срабатывания.
Белый список — содержит список файлов, которые не вредят системе, но так или иначе обнаруживаются сканером.
Черный список — содержит список вирусов, которым мы доверяем (также не наносят вреда системе).
Распаковщики, дешифровшики
Чтобы достичь приемлемого уровня обнаружения вируса, сканер должен отрабатывать exe-шники, зашифрованные exe-пакером (Например UPX). Тогда перед вычислением хэша, сканер обнаруживает, что файл зашифрован и сначала обращается к дешифровщику, а затем уже на этой основе, вычисляется хэш и сравнивает с имеющимся в базе.
Второй вид архивов — это всем известные zip, rar, 7z итд. Антивирус также должен уметь распаковывать эти архивы, и сканировать содержимое.
Третий вид — это распаковка NTFS ADS (NTFS Alternative Data Streams). В файловой системе NTFS, исполняемый файл может быть замаскирован под обычный, например текстовый. Альтернативный поток этого файла, будет ссылаться непосредственно на вирус.
Use-cases
- Интернет защита. А именно сканирование cookies’ов браузеров и Flash Player’a.
Например Chrome хранит кукисы в папке %localappdata%\Google\Chrome\User Data\Default\, Firefox в %appdata%\Mozilla\Firefox\Profiles.
Для Internet Explorer в %USERPROFILE%AppDataRoamingMicrosoftWindowsCookies.
Таким образом извлекая доменные имена из sql-базы кукис для Firefox и Chrome, либо из 3-ей строки каждого кукис-файла для IE,
сканер сравнивает его с базой вредносных сайтов. - Email защита. Сканер цепляется к модулю антивируса, отвечающим за почтовую защиту. Это может быть плагин для Outlook, Thunderbird,
основой которого явлется проверка аттачей на предмет вирусов. - Контекстный скан файла/папки. Когда юзер выбирает в контекстом меню «Проверить файл. », щелкая правой кнопкой мыши на папке или файле, антивирус также обращается к движку.
Источник: habr.com
Основы работы антивирусных программ
Аннотация: В лекции дается определение антивирусных программ, описываются существующие методы обнаружения вирусов, дополнительные средства обеспечения антивирусной безопасности, рассматриваются основные элементы антивирусной защиты.
Общие сведения
Антивирусные программы — это программы, основной задачей которых является защита именно от вирусов, или точнее, от вредоносных программ.
Методы и принципы защиты теоретически не имеют особого значения, главное чтобы они были направлены на борьбу с вредоносными программами. Но на практике дело обстоит несколько иначе: практически любая антивирусная программа объединяет в разных пропорциях все технологии и методы защиты от вирусов, созданные к сегодняшнему дню.
Из всех методов антивирусной защиты можно выделить две основные группы:
- Сигнатурные методы — точные методы обнаружения вирусов, основанные на сравнении файла с известными образцами вирусов
- Эвристические методы — приблизительные методы обнаружения, которые позволяют с определенной вероятностью предположить, что файл заражен
Сигнатурный анализ
Слово сигнатура в данном случае является калькой на английское signature , означающее «подпись» или же в переносном смысле «характерная черта, нечто идентифицирующее». Собственно, этим все сказано. Сигнатурный анализ заключается в выявлении характерных идентифицирующих черт каждого вируса и поиска вирусов путем сравнения файлов с выявленными чертами.
Сигнатурой вируса будет считаться совокупность черт, позволяющих однозначно идентифицировать наличие вируса в файле (включая случаи, когда файл целиком является вирусом). Все вместе сигнатуры известных вирусов составляют антивирусную базу.
Задачу выделения сигнатур, как правило, решают люди — эксперты в области компьютерной вирусологии, способные выделить код вируса из кода программы и сформулировать его характерные черты в форме, наиболее удобной для поиска. Как правило — потому что в наиболее простых случаях могут применяться специальные автоматизированные средства выделения сигнатур. Например, в случае несложных по структуре троянов или червей, которые не заражают другие программы, а целиком являются вредоносными программами.
Практически в каждой компании, выпускающей антивирусы, есть своя группа экспертов, выполняющая анализ новых вирусов и пополняющая антивирусную базу новыми сигнатурами. По этой причине антивирусные базы в разных антивирусах отличаются. Тем не менее, между антивирусными компаниями существует договоренность об обмене образцами вирусов, а значит рано или поздно сигнатура нового вируса попадает в антивирусные базы практически всех антивирусов. Лучшим же антивирусом будет тот, для которого сигнатура нового вируса была выпущена раньше всех.
Одно из распространенных заблуждений насчет сигнатур заключается в том, каждая сигнатура соответствует ровно одному вирусу или вредоносной программе. И как следствие, антивирусная база с большим количеством сигнатур позволяет обнаруживать больше вирусов. На самом деле это не так. Очень часто для обнаружения семейства похожих вирусов используется одна сигнатура , и поэтому считать, что количество сигнатур равно количеству обнаруживаемых вирусов, уже нельзя.
Соотношение количества сигнатур и количества известных вирусов для каждой антивирусной базы свое и вполне может оказаться, что база с меньшим количеством сигнатур в действительности содержит информацию о большем количестве вирусов. Если же вспомнить, что антивирусные компании обмениваются образцами вирусов, можно с высокой долей уверенности считать, что антивирусные базы наиболее известных антивирусов эквивалентны.
Важное дополнительное свойство сигнатур — точное и гарантированное определение типа вируса. Это свойство позволяет занести в базу не только сами сигнатуры, но и способы лечения вируса. Если бы сигнатурный анализ давал только ответ на вопрос, есть вирус или нет, но не давал ответа, что это за вирус , очевидно, лечение было бы не возможно — слишком большим был бы риск совершить не те действия и вместо лечения получить дополнительные потери информации.
Другое важное, но уже отрицательное свойство — для получения сигнатуры необходимо иметь образец вируса. Следовательно, сигнатурный метод непригоден для защиты от новых вирусов, т. к. до тех пор, пока вирус не попал на анализ к экспертам, создать его сигнатуру невозможно. Именно поэтому все наиболее крупные эпидемии вызываются новыми вирусами. С момента появления вируса в сети Интернет до выпуска первых сигнатур обычно проходит несколько часов, и все это время вирус способен заражать компьютеры почти беспрепятственно. Почти — потому что в защите от новых вирусов помогают дополнительные средства защиты, рассмотренные ранее, а также эвристические методы, используемые в антивирусных программах.
Эвристический анализ
Слово » эвристика » происходит от греческого глагола «находить». Суть эвристических методов состоит в том, что решение проблемы основывается на некоторых правдоподобных предположениях, а не на строгих выводах из имеющихся фактов и предпосылок. Поскольку такое определение звучит достаточно сложно и непонятно, проще объяснить на примерах различных эвристических методов
Поиск вирусов, похожих на известные
Если сигнатурный метод основан на выделении характерных признаков вируса и поиске этих признаков в проверяемых файлах, то эвристический анализ основывается на (весьма правдоподобном) предположении, что новые вирусы часто оказываются похожи на какие-либо из уже известных. Постфактум такое предположение оправдывается наличием в антивирусных базах сигнатур для определения не одного, а сразу нескольких вирусов. Основанный на таком предположении эвристический метод заключается в поиске файлов, которые не полностью, но очень близко соответствуют сигнатурам известных вирусов.
Положительным эффектом от использования этого метода является возможность обнаружить новые вирусы еще до того, как для них будут выделены сигнатуры. Отрицательные стороны:
- Вероятность ошибочно определить наличие в файле вируса, когда на самом деле файл чист — такие события называются ложными срабатываниями
- Невозможность лечения — и в силу возможных ложных срабатываний, и в силу возможного неточного определения типа вируса, попытка лечения может привести к большим потерям информации, чем сам вирус, а это недопустимо
- Низкая эффективность — против действительно новаторских вирусов, вызывающих наиболее масштабные эпидемии, этот вид эвристического анализа малопригоден
Поиск вирусов, выполняющих подозрительные действия
Другой метод, основанный на эвристике, исходит из предположения, что вредоносные программы так или иначе стремятся нанести вред компьютеру. Метод основан на выделении основных вредоносных действий, таких как, например:
- Удаление файла
- Запись в файл
- Запись в определенные области системного реестра
- Открытие порта на прослушивание
- Перехват данных вводимых с клавиатуры
- Рассылка писем
- И др.
Понятно, что выполнение каждого такого действия по отдельности не является поводом считать программу вредоносной. Но если программа последовательно выполняет несколько таких действий, например, записывает запуск себя же в ключ автозапуска системного реестра, перехватывает данные вводимые с клавиатуры и с определенной частотой пересылает эти данные на какой-то адрес в Интернет, значит эта программа по меньшей мере подозрительна. Основанный на этом принципе эвристический анализатор должен постоянно следить за действиями, которые выполняют программы.
Преимуществом описанного метода является возможность обнаруживать неизвестные ранее вредоносные программы, даже если они не очень похожи на уже известные. Например, новая вредоносная программа может использовать для проникновения на компьютер новую уязвимость, но после этого начинает выполнять уже привычные вредоносные действия. Такую программу может пропустить эвристический анализатор первого типа, но вполне может обнаружить анализатор второго типа.
Отрицательные черты те же, что и раньше:
- Ложные срабатывания
- Невозможность лечения
- Невысокая эффективность
Источник: intuit.ru