Manul – антивирус Яндекса для сайтов

21 мая 2015 года в Московском офисе Яндекса прошла третья Вебмастерская, в рамках которой была анонсирована бета-версия нового сервиса Яндекс.Вебмастер, представлена версия 1.0 API валидатора микроразметки, подведены первые итоги работы недавно запущенного алгоритма Минусинск.

Мероприятие открыл доклад Артёма Рассказимова, менеджера антивирусных проектов Яндекса, посвященный проблемам безопасности ресурсов: «Manul – антивирус Яндекса для сайтов». Спикер поделился информацией, какие проблемы помогает решать новый антивирус, и как продукт планируют развивать.

Свое выступление докладчик начал с небольшой предыстории: 6 лет назад Яндекс запустил основной антивирус, который анализирует сайты и помечает те, на которых был обнаружен код, способный нанести вред безопасности компьютера. Сегодня в ходе сканирования интернет-ресурсов Яндекс ежедневно обнаруживает до 10 тысяч зараженных сайтов. Примерно такое же количество сайтов вылечивается в тот же день, но все равно это число велико. Чаще приходится иметь дело с простыми массовыми заражениями, а не какими-либо изощренными способами.

Тем не менее, наличие заражения – это всегда проблема для вебмастера. Даже простые массовые заражения требуют определенного времени на диагностику и лечение. За этот период сайт теряет посетителей. Очевидно, что такая ситуация неприятна посетителям, владельцам сайтов и Яндексу.

Чаще всего сайты заражаются по следующим причинам:

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

В данной ситуации действует принцип «95 на 5»: лишь в 5% случаев наблюдаются сложные заражения, а в 95% – заражения вполне типичные.

Чтобы облегчить жизнь вебмастерам и конечным пользователям 23 апреля 2015 года Яндекс запустил выпустил утилиту-антивирус для сайтов под названием Manul.  Это антивирус, который работает через браузер с простым и понятным интерфейсом; не требует доступа к конфиденциальным данным; все действия контролируются вебмастером.

Антивирус состоит из трех блоков: сканер (проверяющая часть), анализатор (инструмент для просмотра отчетов о заражениях) и лечащий модуль. Сканер и лечащий модуль совмещены, их скачивают и устанавливают на сайт. Анализатор – это отдельный инструмент, который находится на GitHub. Туда можно зайти из любой точки, загрузить отчет и посмотреть, какие уязвимости нашел Manul.

«Антивирус всегда будет бесплатным, а его код – открытым», – пообещал Артём Рассказимов. Это «шасси», которое можно использовать у себя на сайте, к нему можно прикреплять другие модули, даже не связанные с антивирусом.

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

Как работает Manul?

Если вебмастер увидел сообщение: «Внимание! Ваш сайт заражен», – ему необходимо скачать клиентскую часть продукта. Сделать это можно либо через FTP, либо через веб-панель сайта надо закачать в корневой каталог сайта, там распаковать и запустить через браузер, введя прямую ссылку.

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

После нажатия кнопки «Сканировать», утилита сканирует сайт и сохраняет информацию в формате XML. Manul сохраняет следующие данные: путь к файлу, его размер, владелец, группа, атрибуты, дата изменения и др. По окончании проверки XML-отчет упаковывается в архив и отправляется на скачивание. Далее работает следующий инструмент – анализатор.

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

Файлы помечаются флажками. Красным флажком помечается файл, где Manul нашел вредоносный код, желтым – где нашел код, на который следует обратить внимание (он не обязательно должен быть вредоносным). Утилита также поддерживает «белые списки» для популярных CMS.  В отчете можно встретить картинки, в которые могут вписывать вредоносных код, к примеру, из JavaScript. Manul также сохраняет сниппеты для тех файлов, где был обнаружен вредоносный код. Делается это для того, чтобы уязвимость было легче найти.

Лечить сайт можно, как вручную, так и при помощи антивируса. Утилита предусматривает кнопки «Карантин» и «Удалить». Эти кнопки позволяют «на ходу» составить XML-скрипт, который можно выполнить через Manul. Файлы, помеченные на удаление, будут удалены с сервера. В настоящее время антивирус поддерживает лишь полное удаление файлов, но в будущем планируется реализовать возможность более точечного лечения: вредоносный код будет «вырезаться», прочее содержимое останется нетронутым.

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

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

Сценарии использования Manul сводятся к следующему:

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

Дальнейшее развитие утилиты планируется реализовать таким образом:

  • Полный сигнатурный комплект – в ближайшие месяцы Manul заработает в полную мощность.
  • Лечение фрагментов файлов.
  • Поддержка большего количества CMS.
  • Интеграция с Яндекс.Вебмастером для проверки сайта на ошибки индексирования, и т.п. – то есть не антивирусных функций.

Отвечая на вопрос, отслеживает ли Manul редиректы на другие домены с вредоносными сайтами, Артём Рассказимов сообщил, что совсем скоро в антивирусе появится возможность сравнивать два лога – новый и старый.

Видеозаписи докладов третьей Вебмастерской Яндекса доступны на Searchengines.ru.

Редактор-переводчик портала Searchengines.ru, работает на сайте с 2010 года. Специализируется на западном интернет-маркетинге, новостях социальных сетей и поисковых систем. Постоянно принимает участие в профильных семинарах и конференциях в качестве журналиста-обозревателя. Языки: английский, французский.