
WordPress wp2shell сканер цепочек уязвимостей для CVE-2026-63030 и CVE-2026-60137, с активным обнаружением, опциональным PoC, экспортом в JSON.
CVE-2026-63030 и CVE-2026-60137 – сканер цепочки уязвимостей WordPress wp2shell
Авторизованный инструмент для исследования безопасности с опциональным PoC для проверки команд.
wp2shell-scanner обнаруживает цепочку уязвимостей WordPress wp2shell, проверяя публичные признаки WordPress, снимая отпечатки версий, анализируя поведение REST batch и измеряя активную временную разницу. Он предназначен для авторизованных защитных исследований, сред CTF и систем, которыми вы владеете или управляете.
Этот проект предоставляется исключительно для авторизованного тестирования безопасности и защитных исследований.
-p/--poc изменяет состояние WordPress перед попыткой очистки по мере возможности.whoami или команду, предоставленную исследователем.requirements.txt:
requestscoloramaПолучите этот репозиторий, затем установите зависимости из его корневого каталога.
Перейдите в каталог проекта:
cd wp2shell-scanner
Необязательно, но рекомендуется: создайте и активируйте виртуальное окружение:
python3 -m venv .venv
source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
Установите зависимости:
python3 -m pip install -r requirements.txt
Убедитесь, что CLI доступен:
python3 wp2shell-scanner.py -h
Показать справку:
python3 wp2shell-scanner.py -h
Запуск инструмента без цели выводит фирменный текст справки и завершается с ошибкой использования. Укажите ровно один источник цели: -u/--url для одной цели или -l/--list для файла с целями.
python3 wp2shell-scanner.py -u https://wordpress.example
Цели без схемы рассматриваются как URL-адреса http://. Файлы списков целей используют один URL на строку; пустые строки и строки, начинающиеся с #, игнорируются. Неверные записи сообщаются с указанием номера строки.
Поддерживаемая точка входа — корневой скрипт:
python3 wp2shell-scanner.py -u https://wordpress.example
| Параметр | Описание | По умолчанию |
|---|---|---|
-u URL, --url URL | Сканировать один URL-адрес цели WordPress. Взаимоисключающе с --list. | Нет |
-l FILE, --list FILE | Сканировать URL-адреса целей из текстового файла. Взаимоисключающе с --url. | Нет |
| Параметр | Описание | По умолчанию |
|---|---|---|
-p, --poc | После активного подтверждения запускает изменяющий состояние PoC проверки команд. Использует whoami, если не указан --command. | Выкл |
-c COMMAND, --command COMMAND | Выполнить КОМАНДУ во время --poc; требует --poc. | whoami |
-t N, --threads N | Одновременные рабочие потоки для сканирования списка. N должен быть не менее 1. | 10 |
| Параметр | Описание | По умолчанию |
|---|---|---|
-o FILE, --output FILE | Записать массив JSON в кодировке UTF-8 с результатами в ФАЙЛ. По умолчанию включаются только подтвержденные уязвимые результаты. | Нет |
--all-results | Включает все результаты сканирования в --output, включая неуязвимые, не-WordPress и ошибки. | Выкл |
-v, --verbose | Показать финальный HTTP-статус PoC и заголовок X-Action-Redirect. | Выкл |
-q, --quiet | При успешном выполнении PoC выводить только нормализованный вывод команды. Ошибки и предупреждения об очистке выводятся в stderr. | Выкл |
--no-color | Отключить цветной вывод в терминал. | Выкл |
Сканировать одну цель:
python3 wp2shell-scanner.py --url https://wordpress.example
Сканировать список целей с 20 рабочими потоками:
python3 wp2shell-scanner.py --list targets.txt --threads 20
Запустить изменяющий состояние проверочный PoC только после активного подтверждения цели сканером:
python3 wp2shell-scanner.py -u https://wordpress.example -p
Запустить команду, предоставленную исследователем, и вывести только ее нормализованный многострочный вывод:
python3 wp2shell-scanner.py --url https://wordpress.example -p --command "ls -la" --quiet
Записать только подтвержденные уязвимые результаты в JSON, или включить все цели с --all-results:
python3 wp2shell-scanner.py --list targets.txt --output results.json
python3 wp2shell-scanner.py --list targets.txt --output results.json --all-results
| Результат | Значение |
|---|---|
| VULNERABLE | Активный временной зонд подтвердил цепочку уязвимостей. Немедленно исправьте цель. |
| POTENTIALLY AFFECTED | Публичная версия находится в затронутом диапазоне, но активное подтверждение было заблокировано или неубедительно. Исправьте и проведите расследование. |
| NOT VULNERABLE | Активный зонд не был подтвержден, и не было обнаружено затронутых публичных версий. |
| NOT WORDPRESS | Не найдено публичных признаков WordPress. |
| ERROR | Сетевая ошибка, ошибка TLS, ввода цели или неожиданного ответа помешала надежному сканированию. |
Затронутые стабильные релизы: WordPress 6.9.0–6.9.4 и 7.0.0–7.0.1. Немедленно обновитесь до 6.9.5 или 7.0.2, или более поздней версии.
| Код | Значение |
|---|---|
0 | Сканирование завершено без результатов POTENTIALLY AFFECTED. Подтвержденные уязвимые результаты также используют этот код. |
1 | Хотя бы одна цель имеет статус POTENTIALLY AFFECTED. |
2 | Ввод цели был недействителен, или каждая запланированная цель завершилась ошибкой. |
Этот проект лицензирован по лицензии MIT. Подробнее см. LICENSE.
📬 Свяжитесь с нами: [email protected]