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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-22131-PoC — PoC для CVE-2025-22131 | Kitploit
Инструменты/GitHubGitHub/zzn1nj4/cve-2025-22131-poc
Инструменты фишингаГенерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложений
GitHubzzn1nj4/cve-2025-22131-poc

CVE-2025-22131-PoC

PoC для CVE-2025-22131

Репозиторий
121 год назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2025-22131-PoC

PoC для CVE-2025-22131

PhpSpreadsheet — это библиотека, написанная на чистом PHP, предлагающая набор классов, которые позволяют читать и записывать различные форматы файлов электронных таблиц, такие как Excel и LibreOffice Calc.

phpspreadsheet версии <1.29.8>=2.2.0, <2.3.6>=2.0.0, <2.1.7>=3.0.0, <3.8.0 подвержена уязвимости, при которой имена листов недостаточно санируются, что приводит к XSS.

Краткое описание

  • создайте простой xlsx-файл с более чем 1 листом и сохраните его.

  • распакуйте файл, вручную измените имя листа на XSS-пейлоад

  • снова упакуйте файл

  • загрузите xlsx-файл на уязвимый сервер

  • извлеките cookie жертвы на указанный URL

    Примечание: Я использовал пейлоад для извлечения cookie жертвы. Если требуется что-то другое, измените файл xl/workbook.xml соответствующим образом.

Уязвимый код

root@kitploit:~
    /**
     * Generate sheet tabs.
     */
    public function generateNavigation(): string
    {
        // Fetch sheets
        $sheets = [];
        if ($this->sheetIndex === null) {
            $sheets = $this->spreadsheet->getAllSheets();
        } else {
            $sheets[] = $this->spreadsheet->getSheet($this->sheetIndex);
        }

        // Construct HTML
        $html = '';

        // Only if there are more than 1 sheets
        if (count($sheets) > 1) {
            // Loop all sheets
            $sheetId = 0;

            $html .= '<ul class="navigation">' . PHP_EOL;

            foreach ($sheets as $sheet) {
                $html .= '  <li class="sheet' . $sheetId . '"><a href="#sheet' . $sheetId . '">' . $sheet->getTitle() . '</a></li>' . PHP_EOL;
                ++$sheetId;
            }

            $html .= '</ul>' . PHP_EOL;
        }

        return $html;
    }

Здесь $sheet->getTitle() не экранируется должным образом с помощью htmlspecialchars(), поэтому злоумышленник может внедрить HTML.
Обратите внимание, что этот фрагмент кода выполняется только при наличии более 1 листа, поэтому необходим xlsx-файл с более чем 1 листом.
В PoC используется тег изображения для последующего извлечения cookie жертвы на URL атакующего.

Ссылки

  • https://github.com/PHPOffice/PhpSpreadsheet/commit/4088381ccfaf241d7d42c333de0dc8c98e338743
  • https://security.snyk.io/vuln/SNYK-PHP-PHPOFFICEPHPSPREADSHEET-8651746
Скачать инструмент