🇰🇷 한글 설명
Linux 커널의 SELinux 구현에서 소켓 권한 확인 시 보안 블록의 위치를 잘못 참조하는 취약점이 발견되었습니다. 여러 LSM(Linux Security Module)이 중첩된 환경에서 SELinux가 자신의 보안 데이터가 아닌 다른 모듈의 데이터를 읽어 잘못된 권한 검사를 수행할 수 있습니다.
💡 쉬운 설명
보안 시스템이 소켓의 신분증을 확인할 때, 엉뚱한 위치에서 신분증을 찾아 확인하는 오류가 발생할 수 있습니다. 이로 인해 보안 규칙이 제대로 작동하지 않을 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
selinux: use sk blob accessor in socket permission helpers
SELinux socket state lives in the composite LSM socket blob.
sock_has_perm() and nlmsg_sock_has_extended_perms() currently
dereference sk->sk_security directly, which assumes the SELinux socket
blob is at offset zero.
In stacked configurations that assumption does not hold. If another LSM
allocates socket blob storage before SELinux, these helpers may read the
wrong blob and feed invalid SID and class values into AVC checks.
Use selinux_sock() instead of accessing sk->sk_security directly.
📍 영향받는 시스템
LSM(Linux Security Module)이 중첩되어 사용되는 Linux 커널 환경
⚔️ 공격 벡터
다른 LSM이 SELinux보다 먼저 소켓 보안 블록을 할당하도록 설정된 환경에서 권한 우회 시도
🛡️ 대응 방법
selinux_sock() 접근자를 사용하도록 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인