PHPOffice PhpSpreadsheet до версии 1.8.0 имеет проблему XXE. XmlScanner декодирует sheet1.xml из .xlsx в utf-8, если в заголовке объявлено …
PHPOffice PhpSpreadsheet до версии 1.8.0 имеет проблему XXE. XmlScanner декодирует sheet1.xml из .xlsx в utf-8, если в заголовке объявлено что-то отличное от UTF-8. Это была мера безопасности для предотвращения CVE-2018-19277, но исправление недостаточное. Путем двойного кодирования полезной нагрузки xml в utf-7 можно обойти проверку строки «<!ENTITY», что позволит осуществить атаку xml external entity processing (XXE).
Продукт обрабатывает XML-документ, который может содержать XML-сущности с URI, разрешающимися в документы за пределами предусмотренной сферы контроля, из-за чего продукт включает некорректные документы в свой вывод.
https://cwe.mitre.org/data/definitions/611.html →Открыть в коллекции CWE →Данная атака использует свойство замены сущностей в ряде языков сериализации данных (например, XML, YAML и т. д.), при котором значением замены является URI. Специально сформированный файл может содержать ссылку на URI, потребление которого требует значительных ресурсов, что создаёт условие отказа в обслуживании. Это может привести к зависанию, аварийному завершению системы или выполнению произвольного кода в зависимости от URI.
https://capec.mitre.org/data/definitions/221.html →Открыть в коллекции CAPEC →