[IT열쇳말] 멜트다운·스펙터

가 +
가 -

 

로고 이미지 멜트다운(좌), 스펙터 <출처 : 연구팀 홈페이지>

2018년 새해가 되자마자 떠들썩한 보안 이슈가 IT 업계에 터져나왔다. 전 세계 CPU(중앙처리장치) 시장 점유율 70%를 차지하고 있는 인텔 CPU에 취약한 보안 관련 하드웨어 설계 결함이 있다는 것이었다. 특히 운영체제 전체 시스템에서 가장 예민한 정보를 다루고 있는 커널 메모리 접근과 관련된 문제로 밝혀졌다.

연구팀이 공개한 ‘스펙터’ 보안 취약점 보고서 <출처 : 연구팀 홈페이지>

‘멜트다운’과 ‘스펙터’

이번 보안 문제는 구글 보안분석팀 ‘프로젝트 제로’와 업계 보안 전문가들의 공동연구로부터 발견됐다. 연구팀은 공동 연구를 통해 결함을 발견하고 이미 지난해 6월 인텔, AMR, ARM 등 주요 CPU 제조사에게 해당 사실을 전한 것으로 알려졌다. 그로부터 6개월이 지난 1월3일, 연구팀은 홈페이지를 통해 ‘멜트다운(Meltdown)‘과 ‘스펙터(Spectre)‘로 명명한 2개의 보안 취약점에 대한 보고서를 공개했다.

멜트다운과 스펙터 코드 이미지 <출처 : 연구팀 홈페이지>

연구팀은 멜트다운과 스펙터가 CPU 프로세서의 치명적인 약점을 악용한다고 설명했다. 멜트다운과 스펙터는 모두 커널 메모리 접근과 관련해 나온 문제다. 커널 메모리는 컴퓨터 운영체제 전체 시스템을 제어하고 응용프로그램을 컴퓨터 내부 프로세서, 메모리, 기타 하드웨어 등에 연결하는 기능을 수행한다. 쉽게 말해 어떤 작업을 수행하는 데 있어서 필요한 메모리를 하드웨어에서 소프트웨어로, 소프트웨어에서 하드웨어로 전달하는 통로와 같다고 해석할 수 있다.

연구팀이 공개한 멜트다운 동작 화면<출처 : 연구팀 유튜브>

커널 메모리의 보안 설계 결함

커널 메모리에게 가장 핵심적인 요소는 보안이다. 각종 데이터가 이동하는 와중이 응용 프로그램이 서로 다른 프로그램의 데이터에 접근할 수 없도록 하는 게 커널 메모리 보안의 핵심이었다. <뉴욕타임즈>에 따르면 이번에 발견한 두 가지 보안 결점이 지난 20년간 만들어진 거의 모든 장치의 암호 및 기타 민감한 사용자 데이터를 유출할 수 있는 수준이라고 밝혔다. 연구팀 역시 프로그램 관리자 암호 및 개인 사진, 메일, 메시지, 업무용 문서 등 중요 데이터에 대한 보안이 위험하다는 의견을 내놨다.

멜트다운과 스펙터 모두 커널 메모리를 격리시켜 문제를 해결할 수 있다. 다만 보안전문가들은 두가지 중 스펙터를 더 해결하기 어려운 보안 취약점으로 꼽았다. 멜트다운의 경우 소프트웨어 패치로 어느 정도 해결이 가능한 한편, 스펙터는 하드웨어를 교체하지 않는 이상 완벽한 해결이 불가능하기 때문이다. 연구팀은 보안상의 문제로 침투 방법에 대한 자세한 경로는 공개하지 않았다.

연구팀이 공개한 멜트다운 동작 화면. 비밀번호 해킹을 시연하고 있다.<출처 : 연구팀 유튜브>

스펙터는 ‘분기예측’ 기능에서, 멜트다운은 ‘비순차적 명령어 처리’ 방식에서

두 가지 취약점을 이해하기 위해선 각 버그가 공격 지점으로 삼는 구조에 대한 이해가 필요하다. 먼저 스펙터는 CPU 운영 프로세스 중 ‘분기예측(Branch Prediction)’ 기능에서 발생한 문제다. 분기예측이란 명령어 처리 고속화를 위해 사용되는 방법으로, 명령어에 따라 실행될 조건을 미리 예측해 데이터를 준비해두는 것을 말한다. 스펙터는 분기예측 과정에서 예측에 실패한 데이터들을 캐시에 저장해두는 상태를 공격 지점으로 삼는다. 고의로 명령어를 조작해 해당 캐시 메모리에 비정상적인 접근이 발생할 경우 막을 방안이 마련되지 않은 것이다.

스펙터 버그는 인텔, AMD, AMR 등 모든 CPU 제조사의 최신 프로세서에서 모두 발견된 것으로 알려졌다. 현재 출시되는 CPU는 빠른 성능을 위해 대부분 분기예측을 실행하고 있기 때문이다. 이는 애초에 설계 결함에서 파생된 문제이기 때문에 이론상으로는 CPU 하드웨어를 교체하지 않는 상 해결은 불가능하다는 게 보안 전문가들의 입장이다.

인텔 로고

이번 이슈가 ‘인텔 게이트’라고 불리는 이유는 멜트다운 버그 때문이라고 봐도 무방하다. 앞서 설명한 스펙터 버그가 멜트다운에 비해 해결 방법이 어려울 뿐, 버그의 위험성에 있어서는 멜트다운이 더 치명적이기 때문이다. 멜트다운은 각자 격리되어있는 커널 메모리 운영체계를 교란시켜 응용프로그램이 권한 없는 데이터까지 접근할 수 있도록 하는 방식을 말한다. 연구팀은 멜트다운 버그가 인텔 CPU에서만 적용됐다고 밝혔다.

멜트다운은 ‘비순차적 명령어 처리(Out of oder exceution)’ 설계에서부터 발생했다. 비순차적 명령어 처리 방식이란 CPU가 처리 속도를 최적화하기 위해 처리하기 어려운 명령어를 캐시 메모리에 저장해두는 것을 말한다. 기본적인 명령어 처리 방식에선 특정 응용 프로그램이 커널 메모리를 통해 내부 메모리 접근을 시도할 때, 커널 메모리는 필요한 데이터에 대해 통로 역할을 해주게 된다. 이는 각 메모리에 대해 권한이 없는 응용 프로그램의 접근이 막혀있다는 것을 의미한다. 하지만 멜트다운은 비순차적 명령어 처리가 이뤄지는 과정에서 해당 보안 구조가 무너져 내린다는 것을 의미한다.

인텔 i9 프로세서

인텔 게이트, 발등에 불 떨어진 글로벌 IT업체

전 세계 대다수 이용자를 대상으로 한 보안 이슈로 인텔을 비롯한 IT기업들은 다급히 대책을 모색 중이다. 특히 이번 이슈에서 가장 큰 비난을 사고 있는 인텔은 보안 결함에 대해 시인했다. 이번 인텔 게이트를 통해 1995년 이후 판매한 인텔의 모든 CPU 제품에 문제가 있었다고 밝혀졌기 때문이다.

인텔은 즉각 보안 패치를 시작해 늦어도 1월 말까지 모든 제품의 업데이트를 진행하겠다고 밝혔다. 각 사들은 보안 취약점을 해결하기 위해 비순차적 명령어 처리 설계를 삭제하는 등 커널 메모리 재설계 패치 업데이트를 내놓고 있다. 마이크로소프트, 애플 같은 주요 소프트웨어 업체는 이미 운영체제 보안 패치를 내놓은 상태다.

브라이언 크러재니치 인텔 CEO(flickr.CC BY.Techcrunch)

문제는 보안 패치를 적용하면 성능 저하가 발생할 수 있다는 점이다. <더레지스터>는 인텔 CPU에 따라 5-30%의 성능 저하가 발생할 수 있다고 전했다. 성능 저하 문제는 일반 PC 사용자가 체감하기는 어렵고 기업용 서버, 데이터센터 등에 큰 영향을 미치는 것으로 알려졌다. 한편, 인텔의 CEO인 브라이언 크러재니치는 지난해 11월 막대한 주식을 매도했던 것으로 알려져 더 큰 비난을 사고 있다. 지금과 같은 문제점에 대해 인텔은 이미 지난해 6월경부터 알고 있었기 때문이다.

이 글은 ‘네이버캐스트→테크놀로지월드→용어로 보는 IT’에도 게재됐습니다. ☞‘네이버캐스트’ 보기

네티즌의견(총 0개)