# AMF crash on POST /namf-comm/v1/ue-contexts/{ueContextId}/transfer-update with unknown ueContextId #4339 ## 漏洞概述 Open5GS AMF 模块在处理 POST 请求 `/namf-comm/v1/ue-contexts/{ueContextId}/transfer-update` 时,如果传入的 `ueContextId` 不存在,会导致 AMF 进程崩溃(Segmentation fault)。 **技术细节:** 请求到达 `amf_nrf_comm_handle_registration_status_request()`。如果 `amf_ue_find_by_ue_context_id()` 失败,状态码被设为 404。随后代码跳转到清理逻辑,并尝试取消引用 `amf_ue` 指针,但该指针此时为 NULL,导致段错误。 ## 影响范围 * **组件:** Open5GS AMF (v2.7.7) * **接口:** Nnrf_Communication SBI 接口 * **后果:** 进程终止(Process termination),导致服务不可用。 ## 修复方案 目前页面未提供具体的代码修复补丁,但指出了需要修复的代码行: * `open5gs/src/amf/nrf-handler.c:1960`:在清理后取消引用 `amf_ue`,即使它是 NULL。 ## POC 代码 ```bash curl -X POST http://10.33.33.33/namf-comm/v1/ue-contexts/abc/transfer-update \ -H 'Content-type: application/json' \ -d '{"transferStatus": "NOT_TRANSFERRED"}' ```