免责声明
本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。
如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。
文中所涉及的技术、思路及工具等相关知识仅供安全为目的的学习使用,任何人不得将其应用于非法用途及盈利等目的,间接使用文章中的任何工具、思路及技术,我方对于由此引起的法律后果概不负责。
1、XSS跨站-输入输出-原理&分类&闭合
2、XSS跨站-分类测试-反射&存储&DOM
1.XSS跨站-输入输出-原理&分类&闭合
漏洞原理:接受输入数据,输出显示数据后解析执行(被动型漏洞,需要受害者触发,并且也会受到不同浏览器的安全策略从而影响JS代码的执行)
基础类型:反射(非持续),存储(持续),DOM-BASE
拓展类型:jquery,mxss,uxss,pdfxss,flashxss,上传xss等
攻击利用(js代码能做什么,XSS就能做什么攻击):
盲打(不知道哪些地方存在XSS,直接能插XSS的地方都插入试试),COOKIE盗取,凭据窃取,页面劫持,网络钓鱼,权限维持等
安全修复:字符过滤,实例化编码,http_only,CSP防护,WAF拦截等
常用标签:xss 常用标签及绕过姿势总结 - FreeBuf网络安全行业门户
测试流程:看输出想输入在哪里,更改输入代码看执行(标签,过滤决定)
2. XSS跨站-分类测试-反射&存储&DOM
数据交互的地方
get、post、headers
反馈与浏览
富文本编辑器
各类标签插入和自定义
数据输出的地方
用户资料
数据输出
评论,留言等
关键词、标签、说明
文件上传
反射型XSS:(某案例测试)
常见情况是攻击者通过构造一个恶意链接的形式,诱导用户传播和打开,
由于链接内所携带的参数会回显于页面中或作为页面的处理数据源,最终造成XSS攻击。
存储型XSS:(某案例测试)
存储型XSS是持久化的XSS攻击方式,将恶意代码存储于服务器端,
当其他用户再次访问页面时触发,造成XSS攻击。
DOM-base型XSS:(某案例测试)
Dom型:DOM漏洞存在JS代码(由JS代码直接处理,不需要经过服务端处理),其他类型漏洞存在脚本代码(反射,存储,都需要经过服务端处理)
如果要挖DOM型漏洞,一定要查看网页源代码并在HTML代码中找到相关js代码