/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/xmlreader/tests/libxml_global_state_entity_loader_bypass.phpt
45 строк
1 KB
Niels Dossche
[RFC] Add stream open functions to XML{Reader,Writer}
29 июн 2024, 19:04
29 июн 2024, 19:04
acf2762
Код
Авторство
О чём код?
--TEST-- GHSA-3qrf-m4j2-pcrr (libxml global state entity loader bypass) --EXTENSIONS-- libxml xmlreader zend_test --SKIPIF-- <?php if (!function_exists('zend_test_override_libxml_global_state')) die('skip not for Windows'); ?> --FILE-- <?php $xml = "<?xml version='1.0'?><!DOCTYPE root [<!ENTITY % bork SYSTEM \"php://nope\"> %bork;]><nothing/>"; libxml_use_internal_errors(true); zend_test_override_libxml_global_state(); echo "--- String test ---\n"; $reader = XMLReader::xml($xml); $reader->read(); echo "--- File test ---\n"; file_put_contents("libxml_global_state_entity_loader_bypass.tmp", $xml); $reader = XMLReader::open("libxml_global_state_entity_loader_bypass.tmp"); $reader->read(); echo "--- Stream test ---\n"; $stream = fopen("libxml_global_state_entity_loader_bypass.tmp", "r"); $reader = XMLReader::fromStream($stream); $reader->read(); fclose($stream); echo "Done\n"; ?> --CLEAN-- <?php @unlink("libxml_global_state_entity_loader_bypass.tmp"); ?> --EXPECT-- --- String test --- --- File test --- --- Stream test --- Done