Xss漏洞

Xss漏洞

1.漏洞简介

​ XSS又叫CSS(Cross Site Script)跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的
​ xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数

2.攻击原理

利用网页开发时web应用程序对用户输入过滤不足导致将恶意代码注入到网页中,使用户浏览器加载并执行恶意代码

3.漏洞危害

  • 窃取cookie

    因为大部分人喜欢将密码储存到浏览器当中,所以黑客一般渗透的时候就会先来浏览器查看已保存的cookie 来盗取各种用户账号

  • 未授权操作

    js特性很强大,黑客会直接代替用户在html进行各类操作。比如劫持会话,刷流量,执行弹窗广告,还能记录用户的键盘输入

  • 传播蠕虫病毒

4.xss的攻击载荷

4.1script标签

<script> 标签是最直接的 XSS 有效载荷,脚本标记可以引用外部的 JavaScript 代码,也可以将代码插入脚本标记中

基础的xss注入都是使用<script> 标签

4.2img标签

<img> 标签定义 HTML 页面中的图像

在题目中将双标签过滤时可以用到这个单标签

4.3input标签

<input> 标签规定了用户可以在其中输入数据的输入字段。

5.xss漏洞分类

5.1反射型xss

非持久化,且需要使用钓鱼等手段欺骗用户点击恶意链接才能触发恶意代码。一般反射型 XSS 会出现在搜索页面,且大多数是用来获取用户的 cookie 信息的

5.2存储型xss

存储型的 XSS,最大的特点是可持久化,因为在过滤条件差的情况下,存储型的 XSS 的恶意代码会直接被保存在服务器端的数据库中。而这个恶意代码被服务器读出输出到用户端的Web页面时,恶意代码会执行,从而达到攻击的目的

5.3DOM型xss

DOM 型的 XSS 注入是在前端 JavaScript 调用 DOM 元素时可能产生的漏洞,可能触发 DOM 型 XSS 的 JavaScript 代码,攻击流程大概为:

document.referer 返回跳转或打开到当前页面的页面的URI
window.name 可设置或返回存放窗口的名称的一个字符串
location 可以设置窗口跳转或者返回当前窗口的地址
innerHTML 内嵌HTML代码
documen.write 页面内写入字符

6.xss—lab靶场实践

6.1level 1

打开靶场后即可看到欢迎用户test,以及url中的get传参
在这里插入图片描述

尝试改变参数查看回显
在这里插入图片描述

发现可以成功注入,直接构建payload

<script>alert(/zbpyy/)</script>

在这里插入图片描述

完成

6.2level 2

进入第二关后查看好像也是get传参,尝试直接注入
在这里插入图片描述

发现注入失败

查看源码后发现我们的输入被闭合在了双引号中
在这里插入图片描述

所以我们需要先将双引号""进行闭合,构建payload

"><script>alert(/zbpyy/)</script>

在这里插入图片描述

注入成功

6.3level 3

进入第三关依旧是尝试基础直接注入
在这里插入图片描述

依旧是注入失败,查看源码
在这里插入图片描述

发现我们的输入<>都被转义为了&gt,以及采用了单引号’'闭合

所以我们需要构建一个不需要<>的payload,同时注意考虑单引号闭合

 ' onblur='alert(123)'

在这里插入图片描述

成功注入

6.4level 4

尝试基础直接注入
在这里插入图片描述

依旧是注入失败,查看源码
在这里插入图片描述

发现<>直接被替换为了空字符

所以依旧是使用不需要<>的payload,同时注意考虑从上一关的单引号闭合变为了双引号

 " onblur="alert(123)

在这里插入图片描述

注入成功

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值