Computer >> 컴퓨터 >  >> 하드웨어 >> 하드웨어

인텔 CPU 해킹 취약점 완벽 정리: 숨겨진 관리 엔진(ME)의 위험과 대응 방법

인텔 CPU 해킹 취약점 완벽 정리: 숨겨진 관리 엔진(ME)의 위험과 대응 방법

컴퓨터가 공격받는다고 상상할 때, 대부분의 사람들은 원격으로 설치된 바이러스가 소프트웨어 수준에서 각종 악성 행위를 한다고 생각합니다. 하지만 CPU 자체가 예기치 않은 방식으로 작동하게 될 수 있다는 사실은 잘 모릅니다. 인텔 CPU를 사용하는 사용자에게 이것이 무엇을 의미하며, 앞으로 우리 모두에게 어떤 영향을 미칠까요? 그리고 무엇보다 중요한 것은, 스스로를 보호하기 위해 무엇을 할 수 있을까요?

공격은 어떻게 작동할까?

인텔 CPU 해킹 취약점 완벽 정리: 숨겨진 관리 엔진(ME)의 위험과 대응 방법

공격의 표적은 CPU 그 자체가 아니라, 인텔의 관리 엔진(Intel Management Engine, ME)이 뒷받침하는 인프라입니다. 스카이레이크(Skylake)와 카비레이크(Kaby Lake) 프로세서에는 '플랫폼 컨트롤러 허브(PCH)'라는 전용 칩 시스템이 탑재되어 있습니다. 이는 마치 화면에 보이는 시스템 뒤편에서 또 하나의 시스템이 그림자 속에서 작동하는 것과 같습니다. PCH에는 MINIX라는 별도의 운영체제, 자체 소형 CPU, 그리고 기업 관리자가 사무실 내 컴퓨터에 접근해 제한적으로 제어할 수 있도록 돕는 각종 지원 구성 요소가 포함되어 있습니다.

여기서 흥미로운 사실이 하나 있습니다. MINIX는 실제로 인텔이 소유하거나 라이선스를 받은 운영체제가 아니라는 점입니다. 인텔은 개발자에게 알리지 않은 채 자사 칩의 지원 구조에 이를 그대로 넣었습니다. 원래 이 마이크로커널 운영체제는 대학생들에게 내부 작동 원리를 가르쳐, 저수준(low-level) 소프트웨어를 직접 만드는 방법을 익히도록 하기 위한 교육용 목적으로 개발된 것이었습니다.

그렇다면 인텔은 왜 이런 번거로움을 감수하면서까지, 사용자가 실행하는 프로그램과 병렬로 작동하는 ME를 구현한 걸까요?

PCH는 수천 대의 컴퓨터를 운영하는 대기업에 특히 유용합니다. 이런 규모의 기업에서는 컴퓨터가 언제든 작동을 멈출 수 있으며, 그렇지 않으면 시스템 관리자가 각 PC를 일일이 방문해 문제를 하나씩 해결해야 합니다. ME를 활용하면 시스템이 부팅조차 되지 않는 상황에서도 관리자가 원격으로 일괄 변경을 적용할 수 있습니다.

문제는 관리자가 아닌 사람, 즉 해커도 똑같은 일을 할 수 있다는 점입니다.

JTAG(Joint Test Action Group) 인터페이스에 접근해 인텔 ME를 제어하려면 간단한 BIOS 설정 변경, USB 동글(dongle), 그리고 몇 가지 추가 트릭만 있으면 컴퓨터 하드웨어에 대한 저수준 접근 권한을 손에 넣을 수 있습니다. 일단 침입에 성공하면 사실상 '신 모드(God Mode)'가 되어, 어떤 백신 프로그램도 경고하지 못하는 상태에서 마음대로 코드를 실행할 수 있습니다.

이는 인텔 제품을 사용하는 수많은 기업들에 재앙이 될 수 있는 구조입니다.

왜 CPU 해킹을 걱정해야 할까?

인텔 CPU 해킹 취약점 완벽 정리: 숨겨진 관리 엔진(ME)의 위험과 대응 방법

운영체제부터 이 글을 보고 있는 브라우저까지, 컴퓨터에서 실행되는 모든 프로그램은 작동하기 위해 누군가에게 명령을 내려야 합니다. 그 '누군가'가 바로 CPU입니다. 컴퓨터가 정상적으로 작동하려면, 다른 모든 하드웨어보다 중심적인 역할을 하는 그 칩에 명령을 전달해야 하기 때문입니다.

따라서 칩을 통제하는 주변 시스템을 일단 장악하면, 해당 컴퓨터에 대해 원하는 무엇이든 할 수 있는 전권을 쥐게 됩니다. 여기에는 가장 민감한 데이터의 탈취도 포함됩니다(물론 데이터가 암호화되어 있지 않다면 말입니다). 가장 심각한 문제는, 일단 공격자가 접근 권한을 확보하면 사용자가 아무런 대응도 할 수 없다는 점입니다.

자신을 보호하는 방법

인텔 CPU 해킹 취약점 완벽 정리: 숨겨진 관리 엔진(ME)의 위험과 대응 방법

ME를 완전히 제거하려면 컴퓨터를 손상시킬 수 있는 고급 작업을 수행해야 합니다. 개인 기기를 보호하는 것이 목적이라면, 우선 모르는 사람이 USB 포트에 아무런 장치도 연결하지 못하도록 관리하는 것이 좋습니다.

반면 기업 환경을 보호해야 한다면, IT 담당자에게 인텔 ME 취약점을 발견한 연구진이 배포한 기본 제거 유틸리티가 담긴 소스 저장소를 안내하세요. 아울러 컴퓨터를 망가뜨리지 않는 범위 내에서 최대한 많은 펌웨어를 제거할 수 있는 도구도 함께 참고하도록 하세요.

주의: 이러한 도구를 사용하는 것 자체에도 위험이 따릅니다. 해당 코드를 실행하는 과정에서 발생하는 컴퓨터 손상에 대해서는 책임질 수 없으므로, 반드시 신중하게 판단해야 합니다.

개인과 기업 모두에게 더 현실적이고 안전한 방법은, USB 포트를 통해 컴퓨터에 접근하는 사람을 철저히 모니터링하는 것입니다. 이 취약점을 실제로 악용하려면 공격자가 컴퓨터에 물리적으로 접근해야 하기 때문에, 접근 통제만 잘해도 상당 부분 위험을 줄일 수 있습니다.

시스템을 이 취약점으로부터 보호하는 나만의 노하우나 추가 아이디어가 있다면, 댓글로 공유해 주세요!