xss阶段小结

分类
  1. 反射型
  2. 存储型
  3. DOM型
  4. UXSS
  5. flash型

说明:
1. 何为UXSS
通用跨站脚本(Universal Cross-Site ing)
UXSS主要是利用浏览器及插件的漏洞(比如同源策略绕过,导致A站的脚本可以访问B站的各种私有属性,例如cookIE等)来构造跨站条件,以执行恶意代码。它与普通的XSS的不同点就在于漏洞对象及受害范围的差异上。

2. 反射型、存储型、DOM型的区别
存储型xss:发送一次xss代码请求,以后此页面的返回包里面都会有xss代码
反射型xss:发送一次xss代码请求,只能在当前返回的数据包中发现xss代码
DOM型xss:发送一次xss代码请求,返回包里面没有xss代码,只有在动态运行或调查网页的dom树时才能观测到dom xss。

危害

1、盗取用户cookie,结合其他攻击面造成危害更大的攻击
2、钓鱼攻击
3、窃取用户的信息(识别浏览器的信息,识别安装的软件信息)
4、ddos蠕虫攻击
5、蠕虫式挂马攻击、刷广告、刷浏量、破坏网上数据

xss检测

一、手工检测

  • 检测输入点
    (使用无害的输入判断输入点是否可以成功把数据注入到页面)
  • 潜在注入点检测
  • 生成Payload
  • Payload攻击验证
    常用的payload:
(1)    <script> alert('xss')</script>
(2)    http://localhost/x.html#<script> alert('xss')</script>
(3)    <script src=http://www.qq.com></script>
(4)    “><script>alert(1)</script>
(5)    “><img src=x onerror=alert(“xss”)>
(6)    "><iframe src=javascript:alert(1)></iframe>
(7)    </script>

更多payload

二、工具检测

  1. xssfork
  2. 开源扫描器合集

三、防御策略

  1. 设置HttpOnly避免cookie劫持;
  2. 过滤危险标签,如<script>,<img>,<a>等;
  3. 编码,浏览器解析html和js编码不同,要根据上下文场景对变量编码(html entity编码、html attribute编码、url编码和校验、CSS编码);
    xss防御速查表
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容