zkaq—xss
一、什么是XSS
xss漏洞允许攻击者将恶意脚本注入到网页中,当其他用户访问包含这些脚本的页面时,这些脚本将在用户的浏览器中执行
二、XSS注入本质
XSS注入攻击的本质,是把用户输入的数据当做js代码执行。
三、XSS注入的关键条件
- 用户能控制输入
- 原本的程序要执行的代码,拼接了用户输入的数据
- XSS是通过拼接合适的HTML代码去执行恶意的js语句
四、XSS类型
- 反射型XSS(一次性的)
- 存储型XSS(没有被删除就一直存在)
- DOM型XSS:DOM型XSS漏洞是一种特殊类型的XSS,是基于文档对象模型 Document Object Model (DOM)的一种漏洞。
反射型:靶场练习
输入
1 | <script> alert(1) </script> |
尖括号被编码
改用事件法
输入
1 | ' onfocus=alert(1) // |
存储性:靶场练习
在所有可以进行输入的地方都插入弹窗语句,均未弹窗成功
观察到页面使用的是
1 | FineCMS公益软件 v5.3.0 框架 |
网上发现相关漏洞信息
当访问的模块不存在时,会将这个路径直接打印出来
成功弹窗
XSS平台http://xss.fqgg.net/
生成恶意XSS代码进行插入
打到cookie
zKaQ-01sdfDCo0
DOM型:靶场练习
一、什么是DOM?
DOM,全称Document Object Model,是一个平台和语言都中立的接口,可以使程序和脚本能够动态访问和更新文档的内容、结构以及样式。
二、什么是DOM型XSS
DOM型XSS其实是一种特殊类型的XSS,它是基于DOM文档对象模型的一种漏洞。
三、可能触发DOM型XSS的属性
1 | document.referer属性 |
四、document对象属性
1 | Body 获取文档信息 |
document.write 他可以支持特殊编码Native
练习
尝试对聊天框进行弹窗,弹窗失败
聊天框上方会显示当前所在位置,观察源码中存在document.write方法
随意构造的参数也会显示出来
构造
1 | asd=<script>alert(1)</script> |
被拦截
Native编码绕过
成功弹窗
到XSS复制恶意代码,编码后写入
打到的只有自己的cookie
有留言工具复制网址发过去
打到flag=
CSRF
一、什么是CSRF?
CSRF 是指跨站的请求伪造,这种攻击方法会强迫使用者在他们已经验证身份的网站中,执行某些恶意的伪造操作。
其实说白了
csrf漏洞的成因就是网站的cookie在浏览器中不会过期,只要不关闭浏览器或者退出登录,那以后只要是访问这个都网站,会默认你已经登录的状态。而在这个期间,攻击者发送了构造好的csrf脚本或包含csrf脚本的链接,可能会执行一些用户不想做的功能(比如是添加账号等) js(可以发送数据包) ajax
靶场练习
靶场题目是用织梦CMS搭建的网站
网上下载相同版本的织梦CMS框架源码,在本地搭建进行测试
登录网站后台,有新建文件功能。新建一个文件,并用bp抓包
将数据包发送到repeater模块进行重复放包,发现存在一个数据包可以多次使用的情况,极有可能存在CSRF漏洞。
重新抓一个写入一句话木马文件的操作,用bp抓包制作CSRF脚本。
加上自动提交的js脚本
成功保存
对脚本进行些许修改,上传文件
提交细心诱骗客服点连接
成功写入一句话木马
蚁剑连接