멜트다운? 스펙터? CPU 보안 취약점 바로 알기 :: Athtar의 잡동사니

2018년초부터 IT 업계를 뜨겁게 달구는 대형 보안 이슈가 터졌다.

당초 인텔 CPU에서 커널 내용이 사용자에게 노출되는 치명적 보안 결함이 발견되어 이슈화 되었는데, 이후 AMD와 ARM 계열 CPU에서도 보안 취약점이 내포되었다는 주장이 나오면서 인텔에서 시작된 보안 이슈가 전체 PC 시장으로 범위가 확대되고 있다.

짧은 시간에 업계 전반으로 터진 이번 보안 이슈에 대해 정리해 보겠다.

 

2018년 대형 보안 이슈의 스타트, 멜트다운과 스펙터

 

 

 

 

 

2018년 벽두부터 IT 시장을 달군 보안 이슈의 시작은 멜트다운(Meltdown)으로 명명된 인텔 진영에서 시작되었다.

멜트다운은 후쿠시마 원자력 사고를 통해 한 번쯤 들어보았을 것이다. 원자로 노심융해라고 불리는 멜트다운은 밀폐 용기 내부에 보관되어야 할 핵물질이 외부로 노출되는 사고로 매우 치명적으로, 연초 인텔 CPU에 내포된 보안 취약점으로 이야기된 것이 바로 이 멜트다운이다.

뉴스로도 전해 드렸지만 멜트다운은 시스템의 핵심인 커널 내용이 사용자에게까지 노출되는 심각한 보안 취약점으로, 공격자가 단순 전체 시스템 내용 뿐 아니라 암호화된 정보도 접근할 수 있는 매우 치명적인 보안 취약점이다.

이후 구글 프로젝트 제로의 엠바고가 풀린 현지 시간 1월 3일, 멜트다운과 함께 스펙터(Spectre)라 불린 또 다른 보안 취약점이 발표되었는데, 스펙터는 한 프로그램이 다른 프로그램의 내용을 훔쳐볼 수 있는 보안 취약점으로, 공격 난이도는 멜트다운보다 높은 것으로 알려졌다.

구글 프로젝트 제로는 이번에 발표한 보안 취약점 3종 중 Variant 1(bounds check bypass, CVE-2017-5753)과 Variant 2(branch target injection, CVE-2017-5715)를 스펙터로, Variant 3(rogue data cache load, CVE-2017-5754)를 멜트다운으로 분류한다.

멜트다운과 스펙터 보안 취약점 노출 CPU는?

 

엠바고 전에 공개되면서 어떤 인텔 CPU가 멜트다운 취약점에 노출되는지 명확하지 않았다.

그러나 멜트다운이 인텔 비순차 실행 구조(Out-of-Order Execution) 방식의 버그로 인한 보안 취약점인 관계로, 인텔 아이테니엄(Itanium)과 2013년 이전 아톰 시리즈를 제외한 1995년 이후 출시된 모든 인텔 프로세서가 영향 받을 가능성이 있는 것으로 의심받았다.

엠바고가 풀린 후 인텔이 보안 센터 페이지를 통해 공개한 멜트다운과 스펙터 위협 내포 제품으로 45nm 코어 i 시리즈 이후 제품들과 제온 E3 및 E5, E7 시리즈, 아톰 C/ E/ A/ Z 시리즈, 제온 파이, 셀러론과 펜티엄 J/ N 시리즈 등 광범위한 제품들이 명시되어 있다.

거의 10년 내 출시된 모든 CPU가 멜트다운 및 스펙터 보안 위협에 노출된 것이다.

ARM은 인텔과 비순차 실행 구조가 다르기 때문에 이번 멜트다운에 영향이 없는 것으로 알려졌지만, ARM이 공개한 내용에 따르면 Cortex 시리즈 중 4종의 CPU가 부분적으로 멜트다운에 노출되었고, 스펙터는 10 종의 CPU가 영향을 받는 것으로 확인되었다.

AMD 역시 엠바고 이후 자사 CPU의 멜트다운 및 스펙터 영향 관련 내용을 공개하였는데, 아키텍처 차이에 의해 AMD CPU에서는 멜트다운 위협이 없으며, 스펙터 위험 또한 거의 0에 가까운데다, 아직까지 스펙터 보안 위협의 징조도 포착되지 않았다는 입장을 밝혔다.

관련 업계의 발 빠른 대응

이번 멜트다운과 스펙터 보안 취약점은 다행히 패치를 통해 대응이 가능하다.

엔터프라이즈 진영에서 폭 넓게 쓰이고 있는 리눅스 진영에서는 이미 관련 패치를 공개하였으며, 마이크로소프트 윈도우 계열에서도 윈도우 10은 오늘 새벽, 윈도우 7과 8은 1월 9일 패치가 공개될 예정이다.

주로 ARM 계열 CPU가 쓰이는 구글 안드로이드 디바이스 사용자들을 위해, 구글은 1월 5일 SPL(Security Patch Level)을 통해 안드로이드의 멜트다운과 스펙터 보안 취약점에 대응할 방침이이다. 

크롬OS에 대해서는 커널 3.18과 4.4 버전의 경우 크롬OS 버전 63이상에서 대응하고, 커널 버전이 이보다 낮은 크롬OS에 대해서는 향후 KPTI(Kernel Page Table Isolation) 패치를 통해 대응한다는 방침이다.

 

맥OS 관련 개발자인 Alex Ionescu에 따르면 맥OS에서는 지난해 12월 6일 배포된 10.13.2 하이 시에라 보안 패치에서 이번 이슈에 대응하였으며, 아직 iOS 관련 내용은 확인되지 않았다.

멜트다운 패치의 영향은?

 

다행히 멜트다운 보안 취약점을 내포한 인텔 플랫폼에서는 패치로 보안 취약점에 대응할 수 있다.

하지만 그 반대 급부로 최대 30% 수준의 성능 저하가 발생할 수 있는데, 이는 기존 단일 페이지 테이블에서 사용되던 커널 메모리와 사용자 메모리 영역을 분리하면서 응용 프로그램이 커널 기능 호출 시 다른 페이지 테이블을 참조하기 때문이다.

이는 파일시스템 I/O 쪽에서 영향을 크게 받을 것으로 예상되는 내용으로, 리눅스쪽 패치 전후의 테스트 결과에 따르면 경우에 따라 다르지만 관련 성능이 절반 이하로 크게 감소한 경우도 보고되었으며, SQL DB와 컴파일러, 데이터 스트럭처 서버 등에서 성능 저하가 나타나는 것으로 알려졌다.

이에 따라 개인 사용자는 물론이고 데이터 베이스나 클라우드 서비스 등 데이터 입출력이 빈번하게 발생하는 엔터프라이즈 서비스 환경에서는 서비스 품질 저하에 따른 고객 만족도 하락 등의 부작용이 예상된다.

 

오래전것이지만...참고삼아서..

출처 : 보드나라

+ Recent posts