漏洞简介:
通达OA(Office Anywhere网络智能办公系统)是中国通达公司的一套协同办公自动化软件。
通达OA v11.5.200417之前版本中存在安全漏洞,该漏洞源于系统对用户传入的数据过滤不严。攻击者可借助特制的HTTP请求利用该漏洞登录任意用户(包括:Admin用户),从而控制通达OA系统,甚至有可能结合其它漏洞控制整个服务器。
漏洞公告:
目前厂商已发布升级补丁以修复漏洞,补丁获取链接:
https://www.tongda2000.com/download/sp2019.php
漏洞详情
通达OA存在代码逻辑
`
$UID = intval($_POST["UID"]);
...
$query = "SELECT * from USER where UID='$UID'";
if($ROW = mysql_fetch_array($cursor)){
$USER_ID = $ROW["USER_ID"];
$PWD = $ROW["PASSWORD"];
$USERNAME = $ROW["USER_NAME"];
}
...
$LOGIN_UID = $UID;
$LOGIN_USER_ID = $USER_ID;
$LOGIN_BYNAME = $BYNAME;
$LOGIN_USER_NAME = $USERNAME;
$_SESSION["LOGIN_UID"] = $LOGIN_UID;
$_SESSION["LOGIN_USER_ID"] = $LOGIN_USER_ID;
$_SESSION["LOGIN_BYNAME"] = $LOGIN_BYNAME;
$_SESSION["LOGIN_USER_NAME"] = $LOGIN_USER_NAME;
当UID由用户控制造成用户权限提升
POC:
https://github.com/NS-Sp4ce/TongDaOA-Fake-User
使用方法
python3 poc.py -v 版本 -url url
运行并获取到可用的SESSIONID
替换浏览器Cookie中的SESSIONID即可实现登录为admin