하드웨어 보안
일부 CPU에서 문제가 된 Meltdown이라고 불리는 취약점의 원리로 올바른 것은?
- ACPU가 열로 녹아서 데이터가 밖으로 유출된다
- B권한이 없는 커널 메모리를 읽는 명령이라도, 권한 확인에 따른 예외가 확정되기 전에 투기적으로 값이 읽히고, 그 값에 의존한 흔적이 캐시에 남는다
- C커널 메모리가 모든 프로세스에 공개되어 있는 설정 오류
정답과 해설 보기
정답: B. 권한이 없는 커널 메모리를 읽는 명령이라도, 권한 확인에 따른 예외가 확정되기 전에 투기적으로 값이 읽히고, 그 값에 의존한 흔적이 캐시에 남는다
사용자 프로그램이 커널 메모리를 읽으려 하면 본래는 권한 위반으로 예외가 발생하여 값을 얻을 수 없습니다. 그러나 영향을 받은 CPU에서는 예외가 확정되기까지의 짧은 사이에, 읽은 값을 사용하는 뒤쪽 명령이 투기적으로 실행되어 그 값에 따른 위치가 캐시에 읽혀 들어갔습니다. 예외로 결과가 버려져도 캐시 사이드 채널로 커널 데이터를 추측할 수 있었던 것입니다.
- A. 물리적으로 녹는 것이 아닙니다.
- B. 올바릅니다. 권한 확인과 투기적 읽기의 순서가 문제였습니다.
- C. 설정 오류가 아니라 CPU 구현의 문제입니다.