🇰🇷 한글 설명
Linux 커널의 SCTP 프로토콜 구현에서 네트워크 네임스페이스(netns)가 해제될 때 UDP 터널 소켓이 제대로 닫히지 않는 취약점이 발견되었습니다. 이로 인해 네임스페이스가 제거된 후에도 SCTP UDP 터널 소켓이 시스템에 남아 있어 리소스 누수나 불안정한 상태를 유발할 수 있습니다.
💡 쉬운 설명
컴퓨터 내부의 가상 공간을 삭제할 때, 그 공간에서 사용하던 통신 통로가 제대로 닫히지 않고 남겨지는 문제입니다. 이로 인해 시스템 자원이 낭비되거나 예상치 못한 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
sctp: close UDP tunnel sockets during netns teardown
proc_sctp_do_udp_port() starts per-net SCTP UDP tunneling sockets when
net.sctp.udp_port is set, and stops/restarts them when the sysctl value
changes. The netns exit path does not stop these sockets, so a namespace
can be torn down while its SCTP UDP tunnel sockets are still installed.
Close the UDP tunnel sockets from sctp_ctrlsock_exit() after unregistering
the per-net sysctl table. This prevents new sysctl writes from racing in
while the sockets are being released, and closes the sockets before the
control socket is destroyed.
📍 영향받는 시스템
SCTP UDP 튜닝 기능이 활성화된 Linux 커널 버전
⚔️ 공격 벡터
네트워크 네임스페이스를 생성하고 삭제하는 과정을 반복하여 시스템 리소스를 고갈시키거나 커널 상태를 불안정하게 만듦
🛡️ 대응 방법
SCTP 관련 커널 패치를 적용하여 sctp_ctrlsock_exit() 함수에서 UDP 터널 소켓을 명시적으로 닫도록 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 최신 보안 패치 버전인지 확인