🔍 CVE-2026-98287

0.0
CVSS Score
UNKNOWN
2026-10-06
2026-10-19 10:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 pppoatm 모듈에서 LLC 헤더를 추가할 때 skb 헤더의 쓰기 가능 여부를 확인하지 않아 발생하는 취약점입니다. PPP 채널 브리징을 통해 특정 경로로 유입된 패킷이 적절한 검증 없이 처리될 경우 메모리 손상이나 경계 외 읽기가 발생할 수 있습니다.

💡 쉬운 설명

네트워크 데이터를 처리하는 과정에서 데이터의 저장 공간이 충분한지, 혹은 수정 가능한 상태인지 제대로 확인하지 않아 발생하는 오류입니다. 이를 통해 시스템의 메모리 영역을 잘못 읽거나 데이터가 깨질 위험이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: pppoatm: ensure a writable skb header and linear data In pppoatm_send(), LLC encapsulation checks whether there is sufficient headroom for the 4-byte LLC header, but does not ensure that the skb header is writable. Normal transmit packets passing through ppp_start_xmit() have their header unshared via skb_cow_head(). However, packets can also reach pppoatm_send() via PPP channel bridging (PPPIOCBRIDGECHAN) without going through ppp_start_xmit(). Use skb_cow_head() to ensure both sufficient headroom and a writable header before pushing the LLC header. While at it: - Call pskb_may_pull(skb, 1) before inspecting skb->data[0] to prevent out-of-bounds reads on zero-length or non-linear frames (e.g. from bridging). - Defer SC_COMP_PROT protocol compression until after pppoatm_may_send() succeeds. This eliminates the temporary skb allocation on admission failure and completely removes the fragile "undo" heuristic at the nospace label, avoiding any risk of reading uninitialized headroom or performing an unbalanced skb_push().

📍 영향받는 시스템

Linux Kernel (pppoatm 모듈을 사용하는 버전)

⚔️ 공격 벡터

PPP 채널 브리징(PPPIOCBRIDGECHAN)을 통해 조작된 패킷을 전송하여 메모리 오류 유도

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 skb_cow_head() 및 pskb_may_pull() 검증 로직을 적용해야 합니다.

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 패치 버전인지 확인합니다.

Shell / Script
uname -r

💻 영향받는 소프트웨어

NVIDIA Cloud Gaming Guest Driver for Linux