Dom Based XSS
注意:仅用于本人学习的笔记记录,禁止进行传播分享,一旦造成严重后果与本人无关!!!
XSS => 前端注入 => 用户输入的数据被当做前端代码执行(js)
三大类型:反射型、存储型、Dom型
检测手段:弹窗(证明你能控制js)
利用手段:xss平台
同源法则:同协议、同ip/域名、同端口
js的触发方式:标签风格、伪协议、事件型
一、什么是Dom型XSS
DOM(Document Object Model)事件基于文档对象模型的漏洞,允许程序或脚本动态地访问和网页内容、结构和样式
dom核心:js操纵浏览器
document.cookie 读取当前网页的cookie【xss必备】
document.lastModified 获取当前页面最后修改的时间【识别静态网页必备】
document.write 向文档中写html或者js代码 【Dom xss常见的存在方式】
网页:分为动态、静态【基本不要渗透了】
伪静态:就是动态的,伪静态存在SQL注入
二、Dom型XSS常见三种状态
Dom型xss:因为JS的参与才产生的漏洞
JS莫名其妙的给你解码
2.典型Dom型XSS
a.document.wirte() 假如没有过滤,则可以直接<script>alert("xss")</script>
b.innerHTML
c.eval 配合eval使用
反射型利用
浏览器对于明目张胆的xss会有拦截,尽量不要<script>alert(1)</script>
类似于document的有
document
location
windows
XSS怎么防御:
1.过滤法(过滤输入,过滤输出)
2.html实例化
3.http-only禁止js读取cookie[最核心的的Cookie加http-only] 可以绕过,条件苛刻
document.write() 可识别native编码
啥叫Native Code_yhc166188的博客-CSDN博客_nativecode