Приветствую всех!
Подивили меня на днях информацией о том, что многие бесплатные темы оформления для сайтов содержат вредоносное ПО. Погуглив секунду я наткнулся на статью об уязвимостях в темах для WordPress. Статья пугающая. Более половины тем, по словам авторов статьи, имеют уязвимости. Однако в статье почему-то умолчали о темах из официального источника. А ведь как раз оттуда вордпресс тянет темки в админку.
В том что в официальном источнике есть темы с вредоносным ПО я сильно сомневаюсь. Но на всякий случай решил проверить пару сайтов. В статье рекомендовали использовать решение AI-Bolit. Им и решил попробовать. Скрипт выдал примерно следующее.
- Файл zxcvbn.min.js проигнорирован, так как объем более 600 КБ
- В не .php файле easy-fancybox/readme.txt содержится стартовая сигнатура PHP кода
- Подозрение на дорвей в папке wp-includes
Внизу отчета было написано
Скрипт использует код, который часто встречается во вредоносных скрипта
Как видно отчет содержит пугающее резюме, как и статья. Но на самом деле оказалось все не так плохо.
- Контрольная сумма файла zxcvbn.min.js совпала с контрольной суммой одноименного файла из дистрибутива wordpress
- В текстовом файле обсуждались детали использования плагина с примерами кода
- Папка просто содержала большое количество файлов (как и дорвеи)
Тоесть мы имеем просто ложные срабатывания.
Для большей надежности я решил пройтись по сайтам решением Linux Malware Detect (maldet). Он не нашел ничего подозрительного. Ну, что ж, скорее всего все в порядке.
Какое из решений лучше? Авторы Айболита говорят следующее:
От maldet сканер AI-BOLIT отличается качеством обнаружения вредоносного кода. База AI-BOLIT’а больше, актуальнее, используются регулярные выражения и эвристика, поэтому обнаруживаются даже обфусцированные и закодированные фрагменты, которые меняются с каждой копией вредоноса.
Но все же я бы не стал доверять какому-то одному инструменту. Лучше всего проверить сайт несколькими. Умеют искать такие вещи и Касперский и ДокторВеб. Правда, для этого сайт придется проверять на локальном компьютере.
Какие выводы можно сделать из всего этого? Брать какой-то код в сети (будь то темы оформления, плагины CMS или что-то другое) нужно стараться из надежных источников. Весь сторонний код стоит проверять инструментами для поиска вредоносного кода. Стоит использовать для этого несколько разных инструментов.
UPD 25-04-2015:
Кстати говоря у Яндекса появился инструмент для поиска и борьбы с вирусами на сайтах. Называется Manul. В него вошел и код AI-bolit-а. Он умеет не только искать но и лечить. Может помещать вредоносный код в карантин или удалять его. Подробная статья есть на хабре.