xssbypass_【渗透技巧】XSS三重URL编码绕过实例

本文介绍了在黑盒渗透测试中遇到的一个XSS漏洞实例,详细展示了如何通过三重URL编码绕过服务端的防御措施,成功触发XSS攻击。分析了服务端可能存在的代码逻辑错误,并给出了安全建议:对HTML ENCODE处理后的变量直接输出,以防止类似XSS编码绕过。文章结尾鼓励渗透测试人员保持细心、耐心和勇于质疑的态度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0x00 前言

跨站脚本攻击(Cross Site Scripting),缩写为XSS,恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。在黑盒渗透中,XSS在很多网站中普遍存在,这边分享一个简单有意思的XSS三重URL编码绕过漏洞实例。

0x01 漏洞实例

某次测试中,遇到一个很奇葩的XSS,我们先来加一个双引号,看看输出:

如图,可以看到,双引号被转义了,这时候是不是有种想放弃的想法,抱着尝试的状态,我对双引号进行URL双重编码,再看一下输出:

很惊喜的发现, 居然又被转义了,正常情况下,如果接受参数直接进行HTML ENCODE编码输出,这里应该输出是%22,但是这边却输出了 " ,说明服务端接收参数后进行了url解码操作。

我们再加一层URL编码,即三重url编码,再看一下输出:

URL编码被还原为双引号,闭合了前面的双引号,并带入到html中。我们可以轻易地构造Payload实现XSS。

0x02 思考与总结

通过黑盒测试的情况,我们可以反推服务端代码逻辑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值