审计分析 | 一套组合拳造成文件上传漏洞

admin 2025年2月24日18:59:04评论14 views字数 2055阅读6分51秒阅读模式
免责声明  由于传播利用WK安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,WK安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉谢谢!

    本文是记录一次利用"组合拳"拿下OA系统文件上传RCE漏洞的过程,由于是后台漏洞,整体上危害较低,系统搭建进入之后要求强制更改密码,导致更加鸡肋了。

审计分析 | 一套组合拳造成文件上传漏洞

前景

    某天下午,我一朋友发我一份源码让我扫扫看,我一看这个版本之前正好分析过,于是简单记录了下来。(我菜,大佬勿喷)

产品版本:V2.6.7  分析的该版本,其他版本未进行测试!

审计分析 | 一套组合拳造成文件上传漏洞

这套系统的路由分析可自行百度,网上对其分析的文章还是蛮多的,当然各位佬们也可以抓几个包,找找规律也可以发现他的路由逻辑。

这套系统的SQL注入点,大家可以看看下面这篇文章,这里就不分析啦

https://forum.butian.net/article/613

审计分析 | 一套组合拳造成文件上传漏洞

漏洞分析

直接来到漏洞点:

webmain/task/api/uploadAction.php

在该文件下存在 getmfilvAction 函数

SQL产生都是一样的,由于base64decode引起的,绕过了检测

审计分析 | 一套组合拳造成文件上传漏洞

接着看看这个参数$fname,字面意思应该是文件名,接下来进行判断参数是否存在并且不为空,为True,那么把$frs数组中的值(filename对应的)赋值给$fname,否则的话直接把文件名跟文件后缀进行拼接

审计分析 | 一套组合拳造成文件上传漏洞

$frs 是一个存储了xinhu_file表里面的值,根据$fileid进行查询的

m('file')->getone($fileid) 进行SQL查询
审计分析 | 一套组合拳造成文件上传漏洞

关注$filepath的组成,外部变量拼接的是$fileid、$fileext

审计分析 | 一套组合拳造成文件上传漏洞

UPDIR在配置$config里面 为upload,$fileid是自己传入的,$fileext是根据查询得到$frs数组内的(也是数据库内的)

审计分析 | 一套组合拳造成文件上传漏洞

可以大致得到路径为 1458是生成的随机四位数,1是$fileid值,php是$fileext值

upload/2025-02/23_rocktpl1458_1.php

往下走关注createtxt函数

定义在 include/class/rockClass.php 全文搜索了一下,就这个地方存在function createtxt()

审计分析 | 一套组合拳造成文件上传漏洞

从注释可以看出这个是写入文件的功能 跟进查看,createdir是创建文件夹的功能,没有过滤,createtxt也没过滤  红箭头的都是几个内置的函数

整体就是把第二个变量的内容写入到第一个变量内 

审计分析 | 一套组合拳造成文件上传漏洞
审计分析 | 一套组合拳造成文件上传漏洞

这几个变量的内容含义都分析完了,然后再继续看这个函数的剩下部分

$uarr这个数组其中的filename对应的值我们可控,而且在下面进行了插入操作,根据上面的那篇SQL注入文章的分析

审计分析 | 一套组合拳造成文件上传漏洞

得到应该是使用的update语句

审计分析 | 一套组合拳造成文件上传漏洞

到这里,由于是本地搭建的,我们直接去看数据内里面xinhu_file到底存储的内容是什么

关注filepath跟filepathout

审计分析 | 一套组合拳造成文件上传漏洞
如果filepathout为空,那么$lujing就是filepath的值
审计分析 | 一套组合拳造成文件上传漏洞

那么此时的file_get_contents就派上用场了,这个函数是进行文件读取的,可读本地的也可以读取远程的(远程的要开allow_url_fopen)

我们可以利用刚才的update注入,在filepath里面插入恶意的远程地址,然后再通过文件读取的方式存储到服务器上,这里组合一下不就相当于文件上传漏洞了

审计分析 | 一套组合拳造成文件上传漏洞

复现复现(本地)

开启8080端口,提供远程访问文件的功能

审计分析 | 一套组合拳造成文件上传漏洞
先远程读取
审计分析 | 一套组合拳造成文件上传漏洞

然后加载

审计分析 | 一套组合拳造成文件上传漏洞

访问

http://192.168.1.7:8090/upload//2025-02//23_rocktpl4759_16.php

审计分析 | 一套组合拳造成文件上传漏洞

实习/校招/社招

长期持续内推长亭、360、绿盟等安全大厂,已累计内推2000+人
长亭科技25校招投递链接:https://join.chaitin.cn/campus
内推码:NTAWkpg
或微信扫码投递
审计分析 | 一套组合拳造成文件上传漏洞
25校招持续内推中~~~明年毕业的同学欢迎加我,1对1简历辅导,全程跟踪内推情况

安全服务工程师、安全攻防工程师、安全研发工程师、前后端开发工程师、测试工程师等等,所有岗位均可内推

需要考CISP/CISP-PTE/PMP/OSCP/CISSP等证书也可以加我,市场低价!有折扣!

审计分析 | 一套组合拳造成文件上传漏洞

审计分析 | 一套组合拳造成文件上传漏洞

内推|长亭科技2025届秋招开启,附内推码~

你能拿她学校的shell,但永远拿不了她的shell

渗透实战|记一次简单的Docker逃逸+反编译jar接管云主机

渗透实战|NPS反制之绕过登陆验证

渗透实战|记一次曲折的EDU通杀漏洞挖掘

渗透实战|记一次RCE+heapdump信息泄露引发的血案

免责声明
由于传播、利用本公众号藏剑安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号藏剑安全及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦

原文始发于微信公众号(藏剑安全):审计分析 | 一套组合拳造成文件上传漏洞

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月24日18:59:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   审计分析 | 一套组合拳造成文件上传漏洞https://cn-sec.com/archives/3772587.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息