🇰🇷 한글 설명
리눅스 커널의 NBD(Network Block Device) 드라이버에서 nbd_open 함수 호출 시 Use-After-Free(UAF) 취약점이 발견되었습니다. nbd_put() 호출 직후 nbd 장치를 열려고 시도할 경우, 이미 해제된 메모리 영역에 접근하여 시스템 불안정이나 권한 상승을 초래할 수 있습니다.
💡 쉬운 설명
컴퓨터가 이미 사용이 끝나서 버린 메모리 공간을 실수로 다시 사용하려고 할 때 발생하는 보안 문제입니다. 공격자가 이 허점을 이용해 시스템을 멈추게 하거나 제어권을 뺏을 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
nbd: fix uaf in nbd_open
Commit 4af5f2e03013 ("nbd: use blk_mq_alloc_disk and
blk_cleanup_disk") cleans up disk by blk_cleanup_disk() and it won't set
disk->private_data as NULL as before. UAF may be triggered in nbd_open()
if someone tries to open nbd device right after nbd_put() since nbd has
been free in nbd_dev_remove().
Fix this by implementing ->free_disk and free private data in it.
📍 영향받는 시스템
NBD 드라이버를 사용하는 리눅스 커널 버전 (패치 적용 전 버전)
⚔️ 공격 벡터
NBD 장치를 제거한 직후 특정 타이밍에 해당 장치를 다시 열려고 시도하는 방식
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.