🔍 CVE-2022-49286

4.7
CVSS Score
MEDIUM
2025-02-26
2026-08-13 00:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 TPM(Trusted Platform Module) 구현 중 tpm2_del_space() 함수에서 발생하는 레이스 컨디션 취약점입니다. TPM 장치가 제거될 때 뮤텍스(mutex)를 적절히 보호하지 않아 NULL 포인터 역참조가 발생할 수 있습니다.

💡 쉬운 설명

컴퓨터의 보안 칩(TPM)을 제거하는 과정에서 프로그램이 순서대로 작동하지 않아 오류가 발생하는 문제입니다. 이로 인해 시스템이 갑자기 멈추거나 충돌할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: tpm: use try_get_ops() in tpm-space.c As part of the series conversion to remove nested TPM operations: https://lore.kernel.org/all/[email protected]/ exposure of the chip->tpm_mutex was removed from much of the upper level code. In this conversion, tpm2_del_space() was missed. This didn't matter much because it's usually called closely after a converted operation, so there's only a very tiny race window where the chip can be removed before the space flushing is done which causes a NULL deref on the mutex. However, there are reports of this window being hit in practice, so fix this by converting tpm2_del_space() to use tpm_try_get_ops(), which performs all the teardown checks before acquring the mutex.

📍 영향받는 시스템

TPM 관련 코드가 포함된 특정 버전의 Linux 커널

⚔️ 공격 벡터

장치 제거 시점과 소프트웨어 작업 시점 사이의 타이밍을 이용한 레이스 컨디션 공격

🛡️ 대응 방법

tpm2_del_space() 함수가 tpm_try_get_ops()를 사용하도록 커널을 최신 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel