🇰🇷 한글 설명
Linux 커널의 netfilter nfnetlink_log 구성 요소에서 NLMSG_DONE 종료 메시지를 생성할 때 nfgenmsg 구조체를 제대로 초기화하지 않는 취약점이 발견되었습니다. 이로 인해 커널 힙 메모리에 남아있던 4바이트의 오래된 데이터가 사용자 공간으로 유출될 수 있습니다.
💡 쉬운 설명
리눅스 운영체제의 네트워크 관리 기능에서 메모리의 일부 정보가 외부로 새어 나갈 수 있는 결함이 발견되었습니다. 공격자는 이를 통해 시스템 내부의 민감한 데이터 조각을 훔쳐볼 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
netfilter: nfnetlink_log: initialize nfgenmsg in NLMSG_DONE terminator
When batching multiple NFLOG messages (inst->qlen > 1), __nfulnl_send()
appends an NLMSG_DONE terminator with sizeof(struct nfgenmsg) payload via
nlmsg_put(), but never initializes the nfgenmsg bytes. The nlmsg_put()
helper only zeroes alignment padding after the payload, not the payload
itself, so four bytes of stale kernel heap data are leaked to userspace
in the NLMSG_DONE message body.
Use nfnl_msg_put() to build the NLMSG_DONE terminator, which initializes
the nfgenmsg payload via nfnl_fill_hdr(), consistent with how
__build_packet_message() already constructs NFULNL_MSG_PACKET headers.
📍 영향받는 시스템
Linux kernel (netfilter/nfnetlink_log 관련 모듈 사용 시스템)
⚔️ 공격 벡터
여러 개의 NFLOG 메시지를 배치로 처리하는 과정에서 발생하는 메모리 정보 유출(Information Leak)
🛡️ 대응 방법
nfgenmsg 초기화를 위해 nfnl_msg_put() 함수를 사용하도록 커널 패치 적용
🔧 검증 코드
출력된 커널 버전을 확인하여 해당 취약점이 해결된 최신 보안 패치 버전인지 확인합니다.