Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
wp2shell-scanner — CVE-2026-63030 / CVE-2026-60137 - сканер RCE-уязвимостей WordPress без аутентификации | Kitploit
Инструменты/GitHubGitHub/bahartanir/wp2shell-scanner
Повышение привилегийСканеры уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеRed TeamingРазработка Полезной НагрузкиЛаборатории и Практика
GitHubbahartanir/wp2shell-scanner

wp2shell-scanner

CVE-2026-63030 / CVE-2026-60137 - сканер RCE-уязвимостей WordPress без аутентификации

Репозиторий
82131 месяц назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

wp2shell-scanner

от @bahartanir (katherinepierce) Форк ZephrFish/wp2shell-scanner с дополнительными улучшениями. Исследование: Adam Kues (Assetnote) и Mustafa Can İPEKÇİ (nukedx).

Инструменты обнаружения и валидации для проверки ядра WordPress на подверженность wp2shell (CVE-2026-63030 / CVE-2026-60137). Режим выбирается флагом, а цель задаётся позиционно. --scan снимает отпечаток версии ядра и подтверждает, что REST-маршрут /batch/v1 доступен, не отправляя эксплойт-пейлоад; режимы --check/--read/--shell/--rce/--root-prereq — это валидационный PoC для авторизованного лабораторного использования.

wp2shell.py — это один скрипт, использующий только стандартную библиотеку, — без внешних зависимостей. Каждый запуск выводит баннер в stderr перед выполнением (он не попадает в stdout, поэтому JSON-вывод --scan -j не затрагивается).

Флаги команд

Требуется ровно один флаг режима; цель задаётся позиционно (URL для любого режима или список хостов для --scan).

Синтаксис

root@kitploit:~
wp2shell.py (--scan | --check | --read | --shell | --rce | --root-prereq)
            [targets ...] [-f FILE] [-j] [-t THREADS] [--prefix PREFIX]
            [--delay DELAY] [--repeats REPEATS] [--preset PRESET] [--expr EXPR]
            [--max-len MAX_LEN] [--user USER] [--password PASSWORD] [--cmd CMD]
            [-i] [--no-cleanup] [-y] [--sleep SLEEP] [--rounds ROUNDS]
            [--route {auto,rest-route,wp-json}] [--proxy PROXY] [--authorized]
            [--timeout TIMEOUT]

Флаги режимов (выберите один)

Флаги опций

Оригинальный детальный разбор: https://blog.zsec.uk/wp2shell-code-trace-deep-dive/

Шаблон Nuclei

root@kitploit:~
nuclei -t wp2shell-exposure.yaml -u https://target

Сканирование (неразрушающее)

Один хост, несколько хостов или файл.

root@kitploit:~
python3 wp2shell.py --scan https://target
python3 wp2shell.py --scan host1 host2 host3
python3 wp2shell.py --scan -f hosts.txt

Опции: -f/--file файл хостов (по одному на строку), -j/--json JSON-вывод, -t/--threads параллельность (по умолчанию 10).

Валидационный PoC

Режимы --check/--read/--shell/--rce/--root-prereq отправляют реальные эксплойт-пейлоады. Запускайте их только против встроенной лаборатории на localhost или других систем, которыми вы владеете и на тестирование которых у вас есть явное разрешение. --shell и --rce выполняют удалённый код и предназначены для лаборатории/авторизованных целей; --rce на хосте вне loopback требует --authorized. --root-prereq использует тот же диагностический плагин с защитой по токену для проверки предпосылок shell-to-root, но не выполняет локальную привилегированную эскалацию.

--shell требует восстановленный/взломанный пароль администратора. --rce — это цепочка без учётных данных (pre-auth): он создаёт собственного администратора через SQLi (oEmbed → changeset → повторный вход в parse_request), затем разворачивает веб-шелл — пароль не требуется.

--shell, --rce и --root-prereq запрашивают интерактивное подтверждение y/N перед отправкой любого пейлоада, выполняющего код (они прерываются при неинтерактивном stdin/EOF). Передайте -y/--yes, чтобы пропустить запрос для автоматизации против лаборатории или авторизованной цели.

root@kitploit:~
docker compose -f poc/lab/docker-compose.yml up -d
python3 wp2shell.py --check http://127.0.0.1:8080
python3 wp2shell.py --read  http://127.0.0.1:8080 --expr @@version
python3 wp2shell.py --shell http://127.0.0.1:8080 --user admin --password 'Summer2026!' --cmd id
python3 wp2shell.py --shell http://127.0.0.1:8080 --user admin --password 'Summer2026!' -i
python3 wp2shell.py --rce   http://127.0.0.1:8080 --cmd id
python3 wp2shell.py --rce   http://127.0.0.1:8080 -i
python3 wp2shell.py --root-prereq http://127.0.0.1:8080 --user admin --password 'Summer2026!'
python3 wp2shell.py --lpe   http://127.0.0.1:8080

Патч-диффы, на которых основан PoC, сохранены в poc/diffs/, с исследовательскими заметками в poc/RESEARCH.md. SQLi полностью восстанавливается по фиксу author__not_in. Цепочка --rce без учётных данных (oEmbed → changeset → повторный вход → создание администратора) воспроизводит RCE на стандартной конфигурации против встроенной лаборатории; --shell — альтернативный путь через восстановленные/взломанные учётные данные администратора к аутентифицированной загрузке плагина и выполнению команд.

Локальная привилегированная эскалация (--lpe)

--lpe объединяет полную pre-auth RCE (SQLi → создание администратора → веб-шелл) с автоматизированной попыткой эскалации до root. Он пробует следующее по порядку, останавливаясь на первом успехе:

root@kitploit:~
python3 wp2shell.py --lpe http://127.0.0.1:8080
python3 wp2shell.py --lpe http://127.0.0.1:8080 -y          # skip auth prompt
python3 wp2shell.py --lpe https://target --authorized        # non-loopback

--lpe против цели вне loopback требует --authorized. Во встроенной лаборатории (базовый образ Ubuntu 22.04 с уязвимым ядром GameOverlay) CVE-2023-2640/32629 успешно срабатывает без компилятора.

Скачать инструмент
ФлагЧто делает
--scanНеразрушающая проверка подверженности: отпечаток версии + подтверждение доступности REST-маршрута /batch/v1. Эксплойт-пейлоад не отправляется.
--checkПодтверждает слепую time-based SQLi с помощью безвредного дифференциального зонда.
--readИзвлекает данные через слепую SQLi (пресет или сырое SQL-скалярное выражение).
--shellЦепочка аутентифицированного RCE с использованием взломанного/восстановленного пароля администратора.
--rceRCE без учётных данных — pre-auth: создаёт собственного администратора через SQLi, затем разворачивает самоочищающийся веб-шелл.
--root-prereqБезвредная проверка предпосылок shell-to-root; выполняет только диагностику, никогда — локальную привилегированную эскалацию.
--lpeПолная цепочка: pre-auth SQLi → создание администратора → веб-шелл → root. Пробует CVE-2023-2640/32629 (GameOverlay overlayfs), CVE-2023-4911 (Looney Tunables glibc), CVE-2026-31431 (AF_ALG Copy Fail), CVE-2026-23111 (зонд UAF в nf_tables), затем запасной вариант SUID/sudo/cap.
ФлагПрименяется кЧто делает
-f, --file--scanЧитает хосты из файла (по одному на строку; строки с # пропускаются).
-j, --json--scanВыводит результаты в формате JSON в stdout.
-t, --threads--scanПараллельность сканирования (по умолчанию 10).
--prefix--check/--readПрефикс таблиц БД (по умолчанию wp_).
--delay--check/--readВнедряемое количество секунд SLEEP для таймингового оракула (по умолчанию 0.15).
--repeats--check/--readМедиана по N зондов на бит; увеличьте при шумных каналах (по умолчанию 1).
--preset--readВстроенная цель: version, database, db_user, users, siteurl (по умолчанию users).
--expr--readСырое SQL-скалярное выражение для извлечения (переопределяет --preset).
--max-len--readМаксимальная длина извлекаемой строки (по умолчанию 128).
--user--shell/--root-prereqИмя пользователя администратора для входа (по умолчанию admin).
--password--shell/--root-prereqПароль администратора в открытом виде (взломайте хэш из --read; обязателен для этих режимов).
--cmd--shell/--rceКоманда для выполнения на цели (по умолчанию id).
-i, --interactive--shell/--rceИнтерактивный веб-цикл команд вместо одиночной команды.
--no-cleanup--shell/--rceОставляет установленный плагин/веб-шелл на месте (только лаборатория).
-y, --yes--shell/--rce/--root-prereqПропускает интерактивный запрос авторизации (для автоматизации).
--sleep--rceВнедряемое количество секунд SLEEP для обнаружения pre-auth SQLi (по умолчанию 4).
--rounds--rceМедиана по N зондов для обнаружения --rce (по умолчанию 3).
--route--rceФорма batch-маршрута: auto, rest-route или wp-json (по умолчанию auto).
--proxy--rceНаправляет запросы через HTTP-прокси, например Burp на http://127.0.0.1:8080.
--authorized--rceПодтверждает авторизацию для цели --rce вне loopback (обязательно для удалённых хостов).
--timeoutвсеТаймаут запроса в секундах (по умолчанию 15).
CVEЗатронутые системыМетодикаКомпилятор
CVE-2023-2640 / CVE-2023-32629Ubuntu 22.04 / 23.04, ядро < 6.3.3 с драйвером GameOverlayНепривилегированное монтирование overlayfs в пользовательском namespace сохраняет chmod +s на верхнем каталоге (upper dir)Нет (чистый shell)
CVE-2023-4911glibc 2.34–2.38 (Ubuntu 22.04, Debian 12, Fedora 37–38)Переполнение стека GLIBC_TUNABLES в _dl_parse_tunables() → инъекция LD_PRELOAD при SUID-выполнениитребуется gcc
CVE-2026-31431Ядро Linux с algif_aead + authencesn(hmac(sha256),cbc(aes))AF_ALG AEAD-оптимизация in-place + запись splice() 4 байт в page cache SUID-бинарника; предварительный зонд — ссылка на AliHzSec/CVE-2026-31431требуется gcc
CVE-2026-23111Ubuntu 22.04 / 24.04, Debian Bookworm / TrixieUAF из-за инвертированной проверки nf_tables в nft_map_catchall_activate() → underflow chain->use → освобождённая цепочка; предварительный зонд — ссылка на Baba01hacker666/CVE-2026-23111требуется gcc
Запасной вариантЛюбаяSUID GTFOBins + злоупотребление sudo NOPASSWDНет