p PatchFirst

CVE-2026-108358

CVE-2026-108358 · PhpSpreadsheet: XmlScanner Bypass via ISO-2022 Escape Sequences Allows XXE and Denial of Service

Здесь приведены факты из открытых источников об уязвимостях. Перед обновлением ознакомьтесь с исходным сообщением.

PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. Prior to 1.30.7, 2.1.19, 2.4.8, 3.10.8, and 5.10.0, XmlScanner::scan in src/PhpSpreadsheet/Reader/Security/XmlScanner.php uses a DOCTYPE detection pattern that accounts for NUL-byte interleaving but not ISO-2022 escape sequences in XLSX XML parts. The escape sequences prevent the scanner from matching the declaration, and XML charset normalization then removes the escape bytes before parsing, exposing a valid DOCTYPE and entity definitions. Processing an attacker-controlled XLSX can therefore cause entity-expansion denial of service on supported PHP versions and can permit local file access or SSRF on PHP before 8.0 or when LIBXML_NOENT is enabled. This issue is fixed in versions 1.30.7, 2.1.19, 2.4.8, 3.10.8, and 5.10.0.

CVSS 8.8 · Высокий · EPSS 0,5% · Публичный эксплойт · Есть исправление

Опубликовано
Обновлено

Стек: php

Затронутые продукты и версии

  • phpspreadsheet

    Версии
    • < 1.30.7: Затронуто
    • >= 2.0.0, < 2.1.19: Затронуто
    • >= 2.2.0, < 2.4.8: Затронуто
    • >= 3.3.0, < 3.10.8: Затронуто
    • >= 4.0.0, < 5.10.0: Затронуто

    Нет опубликованного исправления

  • phpoffice/phpspreadsheet Packagist

    Версии
    • 4.0.0
    • 4.1.0
    • 4.2.0
    • 4.3.0
    • 4.3.1
    • 4.4.0
    • 4.5.0
    • 5.0.0
    • 5.1.0
    • 5.2.0
    • 5.3.0
    • 5.4.0
    • 5.5.0
    • 5.6.0
    • 5.7.0
    • 5.8.0
    • 5.8.1
    • 5.9.0
    Затронутые диапазоны версий
    • ECOSYSTEM: ≥ 4.0.0, < 5.10.0

    Обновитесь до 5.10.0

  • phpoffice/phpspreadsheet Packagist

    Версии
    • 3.10.0
    • 3.10.1
    • 3.10.2
    • 3.10.3
    • 3.10.4
    • 3.10.5
    • 3.10.6
    • 3.10.7
    • 3.3.0
    • 3.4.0
    • 3.5.0
    • 3.6.0
    • 3.7.0
    • 3.8.0
    • 3.9.0
    • 3.9.1
    • 3.9.2
    • 3.9.3
    Затронутые диапазоны версий
    • ECOSYSTEM: ≥ 3.3.0, < 3.10.8

    Обновитесь до 3.10.8

  • phpoffice/phpspreadsheet Packagist

    Версии
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.3.0
    • 2.3.10
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.3.5
    • 2.3.6
    • 2.3.7
    • 2.3.8
    • 2.3.9
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.4.4
    • 2.4.5
    • 2.4.6
    • 2.4.7
    Затронутые диапазоны версий
    • ECOSYSTEM: ≥ 2.2.0, < 2.4.8

    Обновитесь до 2.4.8

  • phpoffice/phpspreadsheet Packagist

    Версии
    • 2.0.0
    • 2.1.0
    • 2.1.1
    • 2.1.10
    • 2.1.11
    • 2.1.12
    • 2.1.13
    • 2.1.14
    • 2.1.15
    • 2.1.16
    • 2.1.17
    • 2.1.18
    • 2.1.3
    • 2.1.4
    • 2.1.5
    • 2.1.6
    • 2.1.7
    • 2.1.8
    • 2.1.9
    Затронутые диапазоны версий
    • ECOSYSTEM: ≥ 2.0.0, < 2.1.19

    Обновитесь до 2.1.19

  • phpoffice/phpspreadsheet Packagist

    Версии
    • 1.0.0
    • 1.0.0-beta
    • 1.0.0-beta2
    • 1.1.0
    • 1.10.0
    • 1.10.1
    • 1.11.0
    • 1.12.0
    • 1.13.0
    • 1.14.0
    • 1.14.1
    • 1.15.0
    • 1.16.0
    • 1.17.0
    • 1.17.1
    • 1.18.0
    • 1.19.0
    • 1.2.0
    • 1.2.1
    • 1.20.0
    • 1.21.0
    • 1.22.0
    • 1.23.0
    • 1.24.0
    • 1.24.1
    • 1.25.0
    • 1.25.1
    • 1.25.2
    • 1.26.0
    • 1.27.0
    • 1.27.1
    • 1.28.0
    • 1.29.0
    • 1.29.1
    • 1.29.10
    • 1.29.11
    • 1.29.12
    • 1.29.2
    • 1.29.4
    • 1.29.5
    • 1.29.6
    • 1.29.7
    • 1.29.8
    • 1.29.9
    • 1.3.0
    • 1.3.1
    • 1.30.0
    • 1.30.1
    • 1.30.2
    • 1.30.3
    • 1.30.4
    • 1.30.5
    • 1.30.6
    • 1.4.0
    • 1.4.1
    • 1.5.0
    • 1.5.1
    • 1.5.2
    • 1.6.0
    • 1.7.0
    • 1.8.0
    • 1.8.1
    • 1.8.2
    • 1.9.0
    Затронутые диапазоны версий
    • ECOSYSTEM: < 1.30.7

    Обновитесь до 1.30.7

Первоисточники

Проверьте свой сервер →