当前位置: 首页 > news >正文

CVE-2024-46101

前言

自己挖的第一个CVE~
喜提critical在这里插入图片描述

这里简单说一下。

漏洞简介

GDidees CMS <= 3.9.1 的版本,存在一个任意文件上传漏洞。允许登录后的攻击者上传webshell获得网站的权限。
影响版本
GDidees CMS <= 3.9.1 (其它的我没测。。)

漏洞复现 && 原理

先登录,然后选这个"文件交换"。(法语。。)
在这里插入图片描述
这里是可以上传文件的:

然后就是我觉得最离谱的一个点了,这里上传php后会显示后缀类型不对,但是并没有block。。。
为此我特意找了源码看了看,
下载cms源码http://gdidees.eu/userfiles/logiciels/cmsgdidees3.9.1.zip,
Burpsuite抓取上传时的请求包:

POST /_admin/index.php?fadmin=upload HTTP/1.1

找到对应代码处:
在这里插入图片描述

审计 control/upload_ressources.php代码
在这里插入图片描述

虽然前面做了黑名单判断,但是没有直接返回,所以还会走到34行的if处;
这个if语句第一部分就执行了move_uploaded_file,后续才进行了ext扩展名的判断,导致即使非法扩展名也能通过move_uploaded_file进行上传,进而导致了任意文件上传漏洞。
(抽象的代码逻辑😂)

返回后,点这个绿色的下载,就能访问webshell。
在这里插入图片描述
传命令即可执行:
在这里插入图片描述

参考

https://github.com/N0zoM1z0/Vuln-Search/blob/main/GdideesCMS.md

https://www.cve.org/CVERecord?id=CVE-2024-46101

相关文章:

  • 本地服务器和云服务器区别在哪里
  • MobaXterm基本使用 -- 服务器状态、批量操作、显示/切换中文字体、修复zsh按键失灵
  • Rust 函数
  • 【JAVA高级】如何使用Redis加锁和解锁(一)、Lua脚本执行原理及流程
  • cMake学习笔记(初级使用)
  • C++学习:list模拟实现
  • 《中国工程科学》
  • 探索EasyCVR视频融合平台:在视频编解码与转码领域的灵活性优势
  • 【IOS】申请开发者账号(公司)
  • (已解决)torch.load的时候发生错误ModuleNotFoundError: No module named ‘models‘
  • 【Gitee自动化测试2】Git,Github,Gitlab,Gitee
  • 已存在的Python项目使用依赖管理工具UV
  • 比较 Python Web 框架:Django、FastAPI 和 Flask
  • 微服务注册中⼼1
  • 【计算机组成原理】实验一:运算器输入锁存器数据写实验
  • MCUboot 和 U-Boot区别
  • 什么是ETL?什么是ELT?怎么区分它们使用场景
  • 常见的TTL,RS232,RS485,IIC,SPI,UART之间的联系和区别
  • 【学习笔记】SSL/TLS证书安全机制之证书透明
  • 包/环境管理工具pip和conda介绍
  • 气象干旱黄色预警继续:陕西西南部、河南西南部等地特旱
  • 马上评丨行人转身相撞案:走路该保持“安全距离”吗
  • “仓促、有限”,美英公布贸易协议框架,两国分别获得了什么?
  • 壹基金发布2024年度报告,公益项目惠及937万人次
  • OpenAI任命了一位新CEO
  • 习近平同俄罗斯总统普京举行会谈