🇰🇷 한글 설명
Linux 커널의 fscrypt에서 fscrypt_destroy_keyring()은 암호화된 inode가 모두 해제된 뒤에 호출되어야 합니다. 그러나 Landlock LSM이 사용 중인 inode는 security_sb_delete() 이후에야 해제되므로, 키링 파괴 순서를 security_sb_delete() 뒤로 변경하여 수정했습니다. 이 순서 문제로 WARN_ON 후 NULL 역참조가 발생할 수 있었습니다.
💡 쉬운 설명
리눅스 커널이 암호화된 파일의 열쇠(키링)를 너무 일찍 없애서 오류가 날 수 있었습니다. 열쇠 정리 순서를 바로잡아 이 문제를 고쳤습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
fscrypt: destroy keyring after security_sb_delete()
fscrypt_destroy_keyring() must be called after all potentially-encrypted
inodes were evicted; otherwise it cannot safely destroy the keyring.
Since inodes that are in-use by the Landlock LSM don't get evicted until
security_sb_delete(), this means that fscrypt_destroy_keyring() must be
called *after* security_sb_delete().
This fixes a WARN_ON followed by a NULL dereference, only possible if
Landlock was being used on encrypted files.
📍 영향받는 시스템
Landlock LSM을 사용하며 fscrypt로 암호화된 파일을 쓰는 Linux 커널 (수정 커밋 이전 버전)
⚔️ 공격 벡터
Landlock 보안 모듈을 사용하는 환경에서 암호화된 파일 시스템을 마운트 해제하는 과정에서 발생하는 커널 경고 및 NULL 포인터 역참조로 인한 서비스 거부(충돌) 가능성
🛡️ 대응 방법
커널을 해당 수정이 포함된 최신 안정 버전 또는 배포판 보안 업데이트로 업그레이드하세요.
🔧 검증 코드
출력된 커널 버전을 배포판 보안 공지나 Linux 커널 Git 기록에서 CVE-2023-53055 수정이 포함된 버전과 비교해 확인하고, 해당 버전 이전이면 업데이트가 필요합니다.