Как проверить тему и плагины WordPress на безопасность: сервисы и инструменты
Каждая третья атака на WordPress-сайты начинается через уязвимую или заражённую тему/плагин. По данным Sucuri, около 74% взломов WordPress приходятся именно на сторонние расширения. При этом официально купленная тема — не гарантия чистоты, а скачанная с «варезника» — почти гарантия проблемы.
Ниже — рабочий набор сервисов и плагинов, которыми можно проверить любой zip-архив темы или плагина до установки на сайт.
Зачем проверять
Вредоносный код в темах и плагинах может:
- Отправлять данные вашего сайта (включая доступы из
wp-config.php) на сторонний сервер; - Встраивать скрытые ссылки — SEO-спам, ссылки на казино, фарму, не пахнущий легально контент;
- Создавать бэкдоры — точки входа, через которые злоумышленник позже зайдёт на сайт без пароля;
- Подменять платёжные формы — особенно опасно для WooCommerce-магазинов, скиммеры крадут данные карт;
- Рассылать спам через ваш сервер, из-за чего хостинг заблокирует аккаунт.
Онлайн-сервисы (проверка без установки на сайт)
VirusTotal
Бесплатный сервис от Google. Загружаете zip-архив темы или плагина — и более 70 антивирусных движков проверяют его одновременно. Можно также проверить URL сайта, если подозреваете заражение уже после установки.
- Как использовать: заходите на
virustotal.com, выбираете вкладку «File», загружаете архив. Результат — через несколько секунд. Если хоть один движок находит угрозу, увидите название и тип.
- Ограничение: проверяет только загруженные файлы, не сканирует сайт целиком. Не найдёт заражение, которое уже встроено в базу данных.
Sucuri SiteCheck
Бесплатный онлайн-сканер от Sucuri. Проверяет сайт по URL: ищет вредоносный код, скрытые редиректы, фишинг, проверяет наличие в чёрных списках Google, Norton, McAfee и др. Также определяет устаревшие версии WordPress и плагинов.
- Как использовать: заходите на sitecheck.sucuri.net, вводите URL. Результат — список найденных проблем, внешних ссылок и скриптов.
- Ограничение: сканирует только то, что видно из браузера (клиентская часть). Серверные бэкдоры в PHP-файлах не найдёт.
Quttera
Сканер, специализирующийся на веб-малвари. Есть и онлайн-версия, и плагин для WordPress. Обнаруживает обфусцированный JavaScript, скрытые iframe, инъекции PHP-кода, SEO-спам, скиммеры для checkout-страниц WooCommerce.
- Как использовать: онлайн — на quttera.com. Плагин — из репозитория WordPress.org (ищите «Quttera ThreatSign»). Бесплатная версия включает сканирование по запросу и проверку по 40+ чёрным спискам.
- Особенность: использует эвристический анализ — находит не только известные сигнатуры, но и подозрительные паттерны, которых ещё нет в базах.
WPScan
База данных уязвимостей WordPress — более 79 000 записей по ядру, плагинам и темам. Есть онлайн-сканер и CLI-инструмент для сервера.
- Как использовать: на wpscan.com введите URL сайта — получите отчёт по известным уязвимостям. Бесплатно — до 25 проверок в день. Также есть плагин Jetpack Protect, который использует базу WPScan и бесплатно уведомляет об уязвимостях.
- CLI-вариант для продвинутых:
wpscan --url https://example.com --enumerate vp,vt,u— проверит плагины, темы и пользователей.
Hacker Target
Бесплатный сканер, заточенный под WordPress. Проверяет версии ядра, плагинов и тем, ищет устаревшие компоненты и проблемы с безопасностью.
- Как использовать: на hackertarget.com введите URL. Базовая проверка бесплатна.
Плагины для WordPress (проверка уже установленного)
Wordfence Security
Самый популярный плагин безопасности для WordPress. Сканер сравнивает файлы ядра, тем и плагинов с оригиналами из репозитория WordPress.org, проверяет по базе из 44 000+ сигнатур малвари, ищет бэкдоры, трояны, зашифрованные вставки, фишинговые ссылки. Также включает брандмауэр (WAF), который блокирует атаки ещё до загрузки ядра.
- Бесплатно: сканирование, брандмауэр с обновлениями сигнатур раз в сутки, защита от брутфорса.
- Премиум: обновления сигнатур в реальном времени, двухфакторная аутентификация, проверка репутации IP.
Sucuri Security
Плагин от одноимённой компании. Проверяет целостность файлов, отслеживает изменения, проверяет сайт на наличие в чёрных списках. Менее тяжёлый, чем Wordfence — хорошо подходит, если хостинг слабый.
- Бесплатно: мониторинг целостности файлов, проверки чёрных списков, уведомления о безопасности, усиление защиты (hardening).
Theme Authenticity Checker (TAC)
Старый, но рабочий плагин, который сканирует все файлы активной темы на наличие обфусцированного кода, скрытых ссылок и подозрительных вставок. Показывает конкретный файл и номер строки, где найдена проблема.
- Как использовать: установите из репозитория WordPress.org, затем Appearance → TAC. Результат — список найденных угроз по каждой теме.
- Важно: плагин давно не обновлялся, но базовые проверки (поиск
eval,base64_decode, скрытых ссылок) всё ещё выполняет. Для свежих версий WordPress может работать нестабильно — проверяйте на стендe.
NinjaScanner
Лёгкий и быстрый сканер, работает в фоне. Сравнивает файлы с оригиналами, проверяет базу данных на изменения, использует сигнатуры Linux Malware Detect и ClamAV. Есть карантин и sandbox — перед удалением файла проверяет, не сломает ли это сайт.
- Бесплатно: сканирование по запросу, проверка целостности файлов, проверка по Google Safe Browsing.
- Премиум: scheduled-сканирование, WP-CLI.
Anti-Malware Security and Brute-Force Firewall
Специализируется на поиске скрытых вирусов и бэкдоров в темах и плагинах. Автоматически обновляет антивирусные базы. Также добавляет защиту от brute-force и DDoS.
Ручная проверка кода
Если нет доверия ни к одному плагину — открывайте файлы темы/плагина в текстовом редакторе и ищите:
eval(— выполнение произвольного PHP-кода;base64_decode(— декодирование зашифрованных строк (часто скрывает малварь);gzinflate(,gzuncompress(— распаковка сжатого кода;str_rot13(— простая обфускация;file_get_contents('http://...')илиcurl_init('http://...')— загрузка кода с внешних ресурсов;- Длинные бессмысленные строки — признак обфусцированного кода;
- Скрытые iframe:
<iframe style="display:none" src="...">; - Неожиданные
wp_remote_postилиwp_mail— отправка данных на сторонний сервер.
Особое внимание — файлам functions.php, header.php, footer.php и wp-config.php (если модифицировали). По статистике Sucuri, чаще всего заражают именно PHP-файлы (92% случаев), реже — JavaScript (5%) и CSS (3%).
Проверка на хостинге
Многие хостинг-провайдеры предлагают встроенную проверку:
- Ai-bolit — антивирус от Revisium, доступен на многих российских хостингах (Beget, Timeweb, ispmanager-панели). Сканирует все файлы аккаунта, ищет веб-шеллы, бэкдоры, спам-скрипты.
- ImunifyAV — антивирус для серверов cPanel/ispmanager, автоматически сканирует файлы на наличие известных угроз.
- Dr.Web для серверов — интегрированное решение, сканирует PHP, JS, HTML и системные файлы.
Чек-лист: порядок проверки
- До установки: загрузите zip-архив на VirusTotal. Если хотя бы 2–3 движка нашли угрозу — не ставьте.
- До установки (дополнительно): откройте
functions.phpв редакторе, поищитеeval,base64_decode, скрытые ссылки. - После установки: поставьте Wordfence и запустите полное сканирование. Оно сравнит файлы с оригиналами из репозитория.
- После установки (URL-проверка): прогоните сайт через Sucuri SiteCheck — убедитесь, что нет скрытых редиректов и сайт не в чёрных списках.
- Регулярно: раз в неделю запускайте сканирование Wordfence. Раз в месяц — Sucuri SiteCheck. Для активных сайтов с оплатой — чаще.
Что делать, если нашли заражение
- Включите режим обслуживания, чтобы пользователи не видели заражённый сайт.
- Сделайте бэкап текущего состояния (да, заражённого — чтобы ничего не потерять при очистке).
- Удалите заражённую тему/плагин, замените на оригинал из официального источника.
- Очистите кэш всех плагинов и сервера.
- Обновите WordPress, все плагины и темы до последних версий.
- Смените все пароли: админка, FTP, база данных, хостинг.
- Проверьте
wp-config.phpна наличие внедрённого кода. - Проверьте сайт в Google Search Console на предупреждения о безопасности.