一些简单的xss绕过方法

最近在攻克xss靶场,学习了一些绕过的方法,和大家进行分享,首先有几种常见的:

1、利用编码

原理:通过对攻击载荷进行编码,如 URL 编码、HTML 实体编码等,使安全检测机制无法识别,而浏览器在解析时会将编码还原为可执行的脚本。

举例:正常的 XSS 攻击脚本可能是<script>alert('XSS')</script>,经过 URL 编码后变为%3Cscript%3Ealert('XSS')%3C/script%3E。如果网站没有对 URL 编码进行正确解码和检测,就可能被绕过。

2、利用标签特性

原理:利用 HTML 标签的一些特殊属性和特性,来执行脚本代码

举例:利用img标签的onerror属性:<img src=x onerror=alert('XSS')>,当图片加载失败时,就会执行onerror属性中的脚本。或者利用a标签的href属性:<a href="javascript:alert('XSS')">点击我</a>,用户点击链接时,就会执行 JavaScript 代码。

3、利用事件处理函数绕过

原理:利用 HTML 元素的各种事件处理函数,如onmouseoveronclick等,当用户触发相应事件时,执行恶意脚本。

举例:<div onmouseover="alert('XSS')">鼠标移到我上面</div>,用户将鼠标移到该div元素上时,就会弹出提示框。

4、利用 CSS 特性绕过

原理:通过 CSS 的一些属性,如@importurl()等,结合可执行脚本的 URL,来执行脚本。

举例:<style>@import url("javascript:alert('XSS');");</style>,当浏览器解析 CSS 时,就会执行其中的脚本。

5、利用浏览器漏洞绕过

原理:某些浏览器存在特定的漏洞,攻击者可以利用这些漏洞来绕过安全限制,执行 XSS 攻击。

举例:在某些旧版本的 IE 浏览器中,存在对innerHTML属性赋值时的漏洞。攻击者可以构造如下代码:<div id="test"></div><script>document.getElementById('test').innerHTML = '<img src=x onerror=alert("XSS")>';</script>,在这些存在漏洞的浏览器中就可能成功执行 XSS 攻击。

6、利用双写绕过

原理:将敏感字符或关键字进行双写,以绕过一些简单的字符过滤机制。当应用程序对输入进行检查时,可能只检查了单次出现的敏感字符,而忽略了双写的情况。

举例:如果网站过滤了<script>标签,攻击者可以尝试<scrscriptipt>alert('XSS')</scrscriptipt>,在经过过滤后,剩下的<script>alert('XSS')</script>仍然可以执行

以上这几种绕过的方法可以在平时做题过程中能够解决大部分的题目,当然还有其他的一些不常见的绕过方法暂时还没学习到位,请等待接下来的慢慢更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值