ARM 기반 CPU 및 Intel CPU의 예측 실행 관련 취약점에 관하여

  • Apple은 Meltdown 공격에 대응하기 위한 방안이 포함된 macOS Sierra 및 El Capitan용 보안 업데이트를 배포했습니다.

  • Apple은 Spectre 공격에 대응하기 위해 iOS, macOS High Sierra 및 Sierra와 El Capitan의 Safari용 업데이트를 배포했습니다.

  • Apple Watch는 Meltdown과 Spectre의 영향을 받지 않습니다.

최근 보안 관련 연구자들은 Meltdown과 Spectre라고 하는 두 가지 보안 문제를 발견했습니다. 이러한 보안 문제는 모든 최근 프로세서에 해당되며 거의 모든 컴퓨팅 기기와 운영 체제가 영향을 받습니다. 모든 Mac 시스템과 iOS 기기에도 해당되는 문제이지만, 이 문서가 작성된 시점을 기준으로 고객이 피해를 입은 악용 사례가 알려진 바는 없습니다. 이러한 문제를 악용하려면 많은 경우 우선 악성 앱이 Mac 시스템이나 iOS 기기에 로드되는 과정이 필요하므로, App Store와 같이 신뢰할 수 있는 출처를 통해서만 소프트웨어를 다운로드하는 것이 좋습니다.

Apple은 이미 iOS 11.2, macOS 10.13.2 및 tvOS 11.2에서 Meltdown 공격에 대응하기 위한 방안을 배포했습니다. 또한, macOS Sierra 및 OS X El Capitan용 보안 업데이트에도 Meltdown 공격에 대응하기 위한 방안이 포함되어 있습니다. Apple은 iOS 11.2.2, macOS High Sierra 10.13.2 추가 업데이트, macOS Sierra 및 OS X El Capitan용 Safari 11.0.2에서 Spectre 공격에 대응하기 위한 방안을 배포했습니다. Apple Watch는 Meltdown이나 Spectre의 영향을 받지 않습니다.

Apple은 이러한 문제에 대한 추가적인 대응 방안을 계속해서 개발 및 테스트할 것입니다.

배경

Meltdown과 Spectre 문제는 예측 실행이라는 최근 CPU의 성능 관련 기능을 악용합니다. 예측 실행은 가능한 경우 CPU에 입력된 순서와 다르게 한꺼번에 여러 개의 명령을 처리하여 명령 처리 속도를 높여 주는 기술입니다. 성능 향상을 위해 CPU는 한 분기에서 선택 가능성이 가장 높은 경로를 예측하고, 그 추론에 따라 해당 분기가 완료되기도 전에 예측한 경로에 있는 명령을 미리 진행합니다. 예측이 잘못되면 진행한 작업은 롤백되며 소프트웨어에서는 이 과정을 살펴볼 수 없게 되어 있습니다.

Meltdown과 Spectre 악용 기법은 이 예측 실행을 악의적으로 이용하여, 기기에서 실행되는 악성 앱과 같이 권한이 적은 사용자 프로세스 영역에서 커널 메모리 등 권한이 필요한 메모리 영역에 접근할 수 있습니다.

Meltdown

Meltdown은 CVE-2017-5754('rogue data cache load')로 알려진 악용 기법을 말합니다. Meltdown 기법을 통해 사용자 프로세스가 커널 메모리를 읽을 수 있게 됩니다. Apple의 분석 결과 Meltdown은 악용될 가능성이 아주 높은 것으로 드러났습니다. Apple은 iOS 11.2, macOS 10.13.2 및 tvOS 11.2, macOS Sierra용 보안 업데이트 2018-001 및 OS X El Capitan용 보안 업데이트 2018-001에서 Meltdown 공격에 대응하기 위한 방안을 배포했습니다. watchOS의 경우 대응 방안이 필요하지 않습니다.

그리고 GeekBench 4 벤치마크나 일반적인 웹 브라우징 벤치마크(예: Speedometer, JetStream, ARES-6)로 측정한 결과에서 보듯, 2017년 12월 업데이트의 변경 사항을 적용하더라도 macOS와 iOS에 대해 공개 벤치마크 테스트에서 측정되는 성능 저하는 전혀 없는 것으로 나타났습니다.

Spectre

이 문서가 작성된 시점을 기준으로 Spectre는 CVE-2017-5753('bounds check bypass'), CVE-2017-5715('branch target injection'), CVE-2018-3639('speculative bounds bypass') 등으로 알려진 여러 가지 악용 기법을 일컫습니다. 이러한 기법은 CPU가 메모리 접근 호출의 유효성을 확인할 때 시간 지연이 발생한다는 점을 이용하여, 사용자 프로세스에서 접근할 수 있도록 커널 메모리에 있는 데이터 항목을 노출합니다.

분석 결과, 이러한 기법은 Mac 시스템이나 iOS 기기에서 로컬로 실행되는 앱으로는 악용하기가 매우 어려운 반면, 웹 브라우저에서 실행되는 JavaScript를 통해서는 악용될 소지가 있는 것으로 나타났습니다. Apple은 이러한 시간차 기반의 악용 기법에 대응하기 위해 1월 8일에 macOS와 iOS용 Safari 업데이트를 배포했습니다. Safari 대응 방안을 배포할 때 테스트를 수행한 결과, 해당 대응 방안을 적용한 이후 성능에 미치는 영향은 Speedometer와 ARES-6 테스트의 경우 측정 가능한 수준의 영향은 없으며 JetStream 벤치마크의 경우 2.5% 미만의 미미한 수준인 것으로 나타났습니다. Apple은 Spectre 기법을 방어하기 위해 운영 체제 내에 적용할 수 있는 추가 대응 방안을 계속해서 개발 및 테스트할 것입니다. watchOS는 Spectre의 영향을 받지 않습니다.

Apple이 제조하지 않은 제품에 관한 정보 또는 Apple의 관리 또는 테스트 대상이 아닌 독립적인 웹 사이트는 권장 또는 보증 없이 제공되는 것입니다. Apple은 타사 웹 사이트 또는 제품에 대한 선택, 성능 및 사용과 관련하여 발생하는 결과에 대해 책임을 지지 않습니다. Apple은 타사 웹 사이트의 정확성 또는 신뢰도에 대해 어떠한 언급도 하지 않습니다. 자세한 내용은 해당 업체에 문의하시기 바랍니다.

게시일: