Компьютер site-virus

Опубликовано: Март 6, 2014

0

Антивирус для сайта

Эффективность работы сканера заключается в использовании паттернов и эвристики, а не обычного поиска по хешу.

ИСТОРИЯ СОЗДАНИЯ

В настоящий момент рынок антивирусного ПО для персональных компьютеров чрезвычайно развит: на слуху решения от Касперского, Dr.Web, McAfee, Norton, Avast и прочих. Со сканерами вирусов и вредоносного кода для сайтов все не так радужно. Системные администраторы и владельцы сайтов, озабоченные проблемой поиска вредоносного кода на своих серверах, вынуждены использовать самописные скрипты, которые ищут вирусы и шеллы по определенным фрагментам, собранным ранее. Так же поступал и я. С клиентских сайтов собирал шеллы, вирусы, бэкдоры, коды редиректов и постепенно формировал базу сигнатур вредоносного кода. А чтобы ее было удобно использовать, написал небольшой скрипт на РНР.

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

В апреле 2012 года я анонсировал скрипт AI-Bolit на нескольких форумах, а спустя полгода он стал основным средством поиска вредоносного кода у веб-мастеров и админов хостингов. Что касается суммарной статистики, то за полтора года скрипт скачали более 64 тысяч раз. А еще на скрипт получено авторское свидетельство в Роспатенте.

ОСОБЕННОСТИ СКАНЕРА

Основное отличие Al-Bolit от существующих на сегодняшний день сканеров вирусов и вредоносного кода на сервере — это использование паттернов в качестве вирусных сигнатур. Поиск вредоносного кода происходит по базе регулярных выражений, а не по хешу или контрольным суммам, что позволяет выявлять даже модифицированные и обфусцированные шеллы, вставленные в шаблоны или скрипты CMS.

Сканер может работать в режиме быстрого сканирования (только по РНР-, HTML, JS-, htaccess-файлам), в режиме «эксперта», исключать директории и файлы по маске. А также имеет большую базу CRC white-листов популярных CMS, что значительно сокращает количество ложных срабатываний. Скачать пробную версию антивируса бесплатно можно на сайте Antivirusoff.net.

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

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

ИНТЕРФЕЙС AI-BOLIT

Интерфейс Al-Bolit очень прост. Это РНР-скрипт, который может работать в режиме командной строки через РНР CLI или открываться в браузере с URLhttp://сайт/ai-bolit.php?р:=пароль.

Результатом работы скрипта является отчет, состоящий из четырех секций:

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

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

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

В Al-Bolit я решаю данную проблему с помощью использования двух режимов работы («обычный»/«экспертный») и white-листов для известных СМS.

БУДУЩЕЕ AI-BOLIT

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

Один из ключевых моментов — это интеграция Al-Bolit с базами ClamAV и LMD. Так Al-Bolit сможет искать руткиты и шеллы еще и по контрольным суммам.

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

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

Ну и конечно, постоянные обновления баз сигнатур вредоносного кода.



Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Back to Top ↑