🇰🇷 한글 설명
리눅스 커널의 스트림 파서(strparser)에서 메시지 조립 중 타임아웃 등으로 중단될 때 skb_head 참조가 해제되지 않는 메모리 누수 취약점이 발견되었습니다. 이로 인해 부분적으로 조립된 메시지가 메모리에 계속 남아있게 되며, 반복적으로 발생할 경우 시스템 메모리를 고갈시킬 수 있습니다.
💡 쉬운 설명
데이터를 읽어오는 과정에서 문제가 생겨 중단될 때, 사용하던 메모리를 제대로 돌려주지 않고 계속 붙잡고 있는 버그입니다. 이 현상이 반복되면 컴퓨터의 메모리가 가득 차서 시스템이 느려지거나 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: strparser: fix skb_head leak in strp_abort_strp()
When the stream parser is aborted, for example after a message assembly timeout,
it can still hold a reference to a partially assembled message in
strp->skb_head.
That skb is not released in strp_abort_strp(), which leaks the partially
assembled message and can be triggered repeatedly to exhaust memory.
Fix this by freeing strp->skb_head and resetting the parser state in the
abort path. Leave strp_stop() unchanged so final cleanup still happens in
strp_done() after the work and timer have been synchronized.
📍 영향받는 시스템
Linux Kernel (strparser 모듈을 사용하는 시스템)
⚔️ 공격 벡터
메시지 조립 타임아웃을 유도하여 반복적인 메모리 할당 및 해제 실패를 일으킴
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인