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

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

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

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

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

Категории

Все категории
Loading categories
mitigation-cve-2019-9787 — PoC и смягчение для CVE-2019-9787 (WordPress XSS/CSRF/RCE). Демонстрирует исправления санитизации, HttpOnly куки и защиту от CSRF на основе хеша с модификациями кода. | Kitploit
Инструменты/GitHubGitHub/kuangting4231/mitigation-cve-2019-9787
Анализ уязвимостейЭксплуатацияВеб-безопасностьCTFТестирование на ПроникновениеОбучение и Образование
GitHubkuangting4231/mitigation-cve-2019-9787

mitigation-cve-2019-9787

PoC и смягчение для CVE-2019-9787 (WordPress XSS/CSRF/RCE). Демонстрирует исправления санитизации, HttpOnly куки и защиту от CSRF на основе хеша с модификациями кода.

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий
4 лет назадЕщё не проверено

mitigation-cve-2019-9787

POC

  1. простой xss:
  2. простой csrf: код сайта атакующего — https://github.com/kuangting4231/wordpress.github.io
  3. csrf удалённое выполнение кода: код сайта атакующего — https://github.com/kuangting4231/assigment1.github.io

mitigation

  1. исправление логической ошибки в процессе очистки для администраторов.
    добавьте две строки в /wp-admin/includes/ajax-actions.php и /wp-includes/comment.php (подробнее в отчёте):

    root@kitploit:~
    remove_filter( 'pre_comment_content', 'wp_filter_post_kses' );
    add_filter( 'pre_comment_content', 'wp_filter_kses' );
    
  2. http-only
    Для сессионных cookie, управляемых PHP, флаг устанавливается либо постоянно в php.ini (руководство PHP по HttpOnly) через параметр:

    root@kitploit:~
    session.cookie_httponly = True
    
  3. защита на основе хеша
    Токен проверки CSRF не был реализован в WordPress, потому что это помешало бы функциям trackbacks и pingbacks. Сервер не может отличить нелегитимный CSRF-запрос от легального PINGBACK/TRACEBACK запроса; WordPress автоматически принимает комментарий без правильного CSRF-токена как запрос PINFBACK или TRACEBACK и фильтрует его с помощью белого списка.

    Чтобы защититься от этой уязвимости CSRF, мы добавляем новое поле в форму с именем hashnonce для проверки того, что комментарий отправлен администратором. Администратор подписывает значение поля комментария с помощью своей cookie.

    Подпись значения поля комментария использует md5 для генерации хеша (см. график).

    Когда администратор пытается принять PINFBACK или TRACEBACK и _wp_unfiltered_html не может быть предоставлен, мы используем wp_verify_hashNonce. Если проверка не удалась, будет сообщено об ошибке. Даже если проверка прошла успешно, логическая ошибка исправлена, и для фильтрации комментариев будет использоваться wp_filter_kses.

    Изменённый код:

    1. comment-template: js-скрипт вычисляет и добавляет скрипт hashNonce;
    2. pluggable: добавлен PHP-скрипт для проверки hashNonce.
    3. comment: изменена логика обработки запроса в PHP-скрипте.

    третий метод взят из https://github.com/sijiahi/Wordpress_cve-2019-9787_defense

Скачать инструмент