CVE-2026-98482 in Linux
요약
\~에 의해 VulDB • 2026. 10. 19.
리눅스 커널에서 다음 취약점이 해결되었습니다:
nfc: llcp: nfc_llcp_recv_hdlc()에서 잘린 I/RR/RNR PDUs를 제거함
nfc_llcp_recv_hdlc()는 길이 검사 전에 nfc_llcp_ns()/nfc_llcp_nr()를 통해 skb->data[2]의 시퀀스 바이트를 읽습니다. 수신 경로는 2바이트 LLCP 헤더만 보장합니다(즉, __nfc_llcp_recv()가 pskb_may_pull()로 이를 확인하고 nfc_llcp_recv_agf()는 2바이트 내부 PDUs를 허용함). 따라서 2바이트 I, RR 또는 RNR PDU의 경우 초기화되지 않은 skb tailroom의 1바이트를 읽게 됩니다. 이 바이트가 N(R)/N(S)로 사용되며, 피어는 이미 정형화된 PDU를 통해 이러한 값을 설정할 수 있으므로 이는 새로운 피어의 제어가 아닌 초기화되지 않은 메모리에서 동작하게 됩니다.
커밋 95674f506c63("nfc: llcp: LLCP 헤더보다 짧은 PDUs 거부")이 2바이트 헤더에 대해 수행한 것처럼 pskb_may_pull()로 읽기를 보호하여, 시퀀스 바이트가 읽히기 전에 존재하고 선형화되도록 합니다. RR 및 RNR PDUs는 LLCP_HEADER_SIZE + LLCP_SEQUENCE_SIZE 바이트이며 I PDU는 더 길므로 유효한 프레임이 거부되지 않습니다. 잘린 PDU는 잘못된 형식이므로 DM 응답 없이 반환합니다.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.