🇰🇷 한글 설명
Linux 커널의 SCSI UFS 코어에서 드라이버 프로브 중 오류가 발생했을 때 잘못된 반환 값을 처리하는 취약점입니다. 오류 발생 시 음수 값을 반환해야 하지만 1(실패)을 반환하여 시스템이 성공한 것으로 오인하게 만들며, 이후 드라이버 제거 시 시스템 오류(oops)를 유발합니다.
💡 쉬운 설명
장치가 고장 났는데도 컴퓨터가 '정상 작동 중'이라고 착각하게 만드는 버그입니다. 이 상태에서 장치를 제거하려고 하면 컴퓨터 시스템이 갑자기 멈추거나 오류를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
scsi: ufs: core: Fix invalid probe error return value
After DME Link Startup, the error return value is set to the MIPI UniPro
GenericErrorCode which can be 0 (SUCCESS) or 1 (FAILURE). Upon failure
during driver probe, the error code 1 is propagated back to the driver
probe function which must return a negative value to indicate an error,
but 1 is not negative, so the probe is considered to be successful even
though it failed. Subsequently, removing the driver results in an oops
because it is not in a valid state.
This happens because none of the callers of ufshcd_init() expect a
non-negative error code.
Fix the return value and documentation to match actual usage.
📍 영향받는 시스템
Linux kernel (scsi: ufs: core 관련 모듈을 사용하는 시스템)
⚔️ 공격 벡터
물리적 또는 소프트웨어적 오류를 유도하여 드라이버 프로브 실패를 발생시킨 후 시스템 중단을 유도
🛡️ 대응 방법
해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 최신 버전인지 확인