MSI 침해에서 유출된 저수준 마더보드 보안 키, 연구원 주장

MSI 침해에서 유출된 저수준 마더보드 보안 키, 연구원 주장

소스 노드 : 2641177

약 한 달 전에 우리는 데이터 유출 알림 주요 마더보드 제조업체 MSI에서 발행합니다.

회사는 말했다 :

MSI는 최근 정보 시스템의 일부에서 사이버 공격을 받았습니다. [… [...] MSI는 사용자에게 공식 웹사이트에서만 펌웨어/BIOS 업데이트를 다운로드하고 공식 웹사이트 이외의 소스에서 파일을 사용하지 말 것을 촉구합니다.

MSI의 중대한 범죄는 MSI 소스 코드, BIOS 개발 도구 및 개인 키를 훔쳤다고 주장하는 Money Message라는 이름의 사이버 갈취 갱단이 이틀 후에 나왔습니다.

당시 범죄자들은 ​​아직 카운트 다운 모드에 있었고 그들이 할 것이라고 주장했습니다. "타이머가 만료되면 훔친 데이터 게시":

위반 타이머가 만료되기 2023시간 전 스크린샷[04-07-XNUMX].

시계가 멈췄다

위 스크린샷의 "공개 타이머"는 불과 한 달 전인 2023-04-07에 만료되었지만 다크 웹의 Money Message 사이트는 갱단의 초기 게시 이후 변경되지 않았습니다.

한 달 후[2023-05-09].

그럼에도 불구하고 취약성 연구 회사인 Binarly의 연구원들은 침해에서 도난당한 데이터를 확보했을 뿐만 아니라 이를 통해 내장된 암호 그래픽 키를 검색하고 수많은 히트를 발견했다고 주장합니다.

지금까지 Binarly는 깃허브트위터 소유하고 있는 데이터에서 [2023-05-09T14:00Z]에 다음과 같이 설명하는 것을 포함하여 수많은 서명 키를 추출했습니다.

  • 1 인텔 OEM 키. 분명히 이 키는 11개의 서로 다른 마더보드에서 펌웨어 디버깅을 제어하는 ​​데 사용할 수 있습니다.
  • 27개의 이미지 서명 키. Binarly는 이 키를 사용하여 57개의 서로 다른 MSI 마더보드에 대한 펌웨어 업데이트에 서명할 수 있다고 주장합니다.
  • 4 인텔 부트 가드 키. 이 유출된 키는 분명히 116개의 서로 다른 MSI 마더보드에 대한 펌웨어 코드의 런타임 검증을 제어합니다.

하드웨어 기반 BIOS 보호

인텔에 따르면 자체 문서, 최신 인텔 기반 마더보드는 여러 계층의 암호화 보안으로 보호할 수 있습니다.

먼저 온다 바이오스 가드, 제조업체 지정 암호화 키로 서명된 코드만 소위 저장하는 데 사용되는 플래시 메모리에 대한 쓰기 액세스를 허용합니다. 초기 부트 블록, 또는 IBB.

이름에서 알 수 있듯이 IBB는 마더보드 공급업체 시작 코드의 첫 번째 구성 요소가 있는 곳입니다.

이를 파괴하면 공격자는 나중에 로드되는 운영 체제보다 낮은 수준뿐만 아니라 공식 EFI에 설치된 펌웨어 유틸리티 수준보다 낮은 수준에서 감염된 컴퓨터에 대한 제어 권한을 갖게 됩니다.확장된 펌웨어 인터페이스) 디스크 파티션, 잠재적으로 해당 파티션이 펌웨어 자체 보안 부팅 디지털 서명 시스템에 의해 보호되는 경우에도 마찬가지입니다.

BIOS Guard가 온 후 부트 가드, IBB에서 로드된 코드를 확인합니다.

여기서 아이디어는 BIOS Guard가 불량 펌웨어 업데이트 도구에 대한 쓰기 액세스를 거부하여 비공식 펌웨어 업데이트가 처음부터 플래싱되는 것을 방지해야 하지만…

… 펌웨어 이미지 서명 키 유출로 인해 마더보드 공급업체가 "공식적으로" 서명한 펌웨어를 신뢰할 수 없다고 말할 수 없습니다.

여기에서 Boot Guard가 개입하여 시스템이 마더보드에 대해 승인되지 않은 펌웨어를 실행하고 있음을 부팅할 때마다 런타임에 감지하는 것을 목표로 하는 두 번째 수준의 증명을 제공합니다.

XNUMX회 쓰기 키 저장소

BIOS Guard 및 Boot Guard에서 제공하는 암호화 검증 수준을 강화하고 프로세스를 특정 마더보드 또는 마더보드 제품군에 연결하기 위해 이들이 사용하는 암호화 키 자체는 재기록 가능한 플래시 메모리에 저장되지 않습니다.

저장되거나 부푼, 전문 용어로 마더보드 자체에 내장된 XNUMX회 쓰기 메모리에 저장합니다.

단어 부푼 저장 회로가 작은 전기 퓨즈로 구현된 일련의 나노 수준의 "연결 와이어"로 구성된다는 사실에서 파생됩니다.

이러한 연결은 그대로 둘 수 있습니다. 즉, 이진수 1(또는 해석 방법에 따라 0)으로 읽히거나 영구적으로 뒤집는 원샷 수정으로 "날아가는"(융합) 것입니다. 이진수 0(또는 1)으로 변환합니다.

비트 버닝 프로세스를 트리거하는 자체는 퓨즈로 보호되므로 마더보드 공급업체는 이러한 소위 비트 버닝의 값을 설정할 수 있는 일회성 기회를 얻습니다. 현장 프로그래밍 가능 퓨즈.

그것은 좋은 소식입니다.

BIOS Guard 및 Boot Guard 암호화 확인 키가 가용성 메모리에 기록되면 영원히 잠깁니다. 결코 전복될 수 없다.

그러나 이에 상응하는 나쁜 소식은 물론 우주가 끝날 때까지 안전한 이러한 공개 키에 해당하는 개인 키가 손상되면 번인된 공개 키가 손상된다는 것입니다. 절대 업데이트 할 수 없습니다.

마찬가지로 위에서 언급한 디버그 수준의 OEM 키는 마더보드 공급업체에게 펌웨어가 부팅될 때 지침별로 관찰하고, 동작을 조정하고, 데이터를 감시하고 수정하는 것을 포함하여 펌웨어를 제어할 수 있는 방법을 제공합니다. 그것은 기억에 남아 있고 훨씬 더 많은 것입니다.

여러분이 상상할 수 있듯이 부팅 프로세스에 대한 이러한 종류의 액세스 및 제어는 고객에게 제공될 마더보드에 코드가 구워지기 전에 개발자가 연구실에서 코드를 올바르게 가져올 수 있도록 돕기 위한 것입니다.

인텔 선적 서류 비치 세 가지 디버깅 수준을 나열합니다.

초록색 누구에게나 허용되는 디버그 액세스를 나타내며, 낮은 수준의 비밀을 노출하거나 부팅 프로세스를 수정할 수 없도록 합니다.

주황색 해당 공급업체의 개인 키가 있는 사람에게 허용되는 완전한 읽기-쓰기 디버깅 액세스를 나타냅니다.

빨간색 는 주황색과 동일하지만 vnedor의 마더보드를 잠금 해제할 수 있는 인텔 소유의 마스터 개인 키를 나타냅니다.

Intel은 설명서에서 다음과 같이 분명하고 직설적으로 말합니다.

플랫폼 제조업체는 [주황색 모드] 인증 키를 다른 디버거 세트와 공유하지 않는다고 가정합니다.

안타깝게도 Binarly는 사기꾼들이 HP, Lenovo, Star Labs, AOPEN 및 CompuLab에서 제공하는 11개의 서로 다른 마더보드에서 낮은 수준의 부팅 시간 디버깅을 활성화할 수 있는 주황색 모드 키를 유출했다고 주장합니다.

부트킷을 조심하세요

따라서 Binarly의 주장은 펌웨어 서명 키와 Boot Guard 서명 키를 사용하여 공격자가 사용자와 펌웨어 업데이트 도구를 속여 정품 펌웨어 업데이트처럼 보이는 것을 설치하도록 속일 수 있을 뿐만 아니라…

...또한 업데이트가 초기 부팅 블록 자체를 패치하더라도 부트 가드 보호를 통해 하드웨어 잠금 상태인 마더보드를 속여 불량 펌웨어를 로드할 수 있습니다.

마찬가지로, 펌웨어 디버깅 모드에서 도난당한 컴퓨터를 부팅할 수 있으면 공격자가 악성 코드를 실행 또는 삽입하거나, 비밀을 추출하거나, 낮은 수준의 시작 프로세스를 조작하여 피해자의 컴퓨터를 신뢰할 수 없고 안전하지 않으며 보안되지 않은 상태로 둘 수 있습니다. 상태.

간단히 말해서, 적어도 이론상으로는 루트킷하지만, 부트 킷.

A 루트킷, 전문 용어로 운영 체제 자체가 나중에 특정 유형의 맬웨어를 감지, 보고 또는 방지하지 못하도록 운영 체제 커널을 조작하는 코드입니다.

일부 루트킷은 운영 체제가 로드된 후 활성화될 수 있습니다. 일반적으로 커널 수준 취약성을 악용하여 운영 체제 코드 자체에 대한 무단 내부 변경을 수행합니다.

다른 루트킷은 운영 체제가 로드되기 전에 보안 백도어를 활성화하는 것을 목표로 펌웨어 기반 시작 시퀀스의 일부를 파괴하여 커널 수준의 보안 허점에 대한 필요성을 회피합니다. 시스템 자체의 보안이 의존합니다.

그리고 부트 킷, 느슨하게 말하면, 그 접근 방식을 더 멀리 가져서 낮은 수준의 백도어가 펌웨어 부트스트랩 프로세스에서 가능한 한 일찍 감지되지 않게 로드되도록 합니다. 아마도 컴퓨터가 하드 디스크에서 어떤 것을 검사하고 읽기도 전에 말입니다.

해당 수준의 부트킷 다운은 전체 하드 디스크(소위 확장 펌웨어 인터페이스 시스템 파티션, 줄여서 EFI 또는 ESP)는 시스템을 소독하기에 충분하지 않습니다.

일반적인 Mac 디스크 설정.
EFI 파티션에는 그에 따라 레이블이 지정됩니다.
일반적인 Windows 11 디스크 설정.
타입 c12a7...ec93b EFI 파티션을 나타냅니다.

비유하자면 운영 체제 이후에 로드되는 루트킷은 형사 재판에서 유죄 피고인을 무죄 선고하기 위해 배심원에게 뇌물을 주려는 것과 비슷하다고 생각할 수 있습니다. (이러한 일이 발생할 위험은 형사 배심원이 일반적으로 12, 15명 또는 그 이상인 이유 중 하나입니다.)

펌웨어 프로세스에서 늦게 로드되는 루트킷은 검사나 수석 수사관에게 나쁜 일을 하도록 뇌물을 주고 유죄 부분이 꿈틀거릴 수 있는 최소한의 증거 허점을 남겨두려는 것과 약간 비슷합니다.

그러나 부트킷은 입법부가 피고가 기소된 바로 그 법을 폐지하도록 하는 것과 비슷합니다. 따라서 아무리 조심스럽게 증거를 수집하고 제시하더라도 사건이 전혀 진행될 수 없습니다.

무엇을해야 하는가?

Boot Guard 공개 키는 일단 마더보드에 기록되면 업데이트할 수 없으므로 해당 개인 키가 손상되면 문제를 해결하기 위해 할 수 있는 일이 없습니다.

손상된 펌웨어 서명 키를 폐기하고 교체할 수 있으므로 펌웨어 다운로더 및 업데이트 도구가 현재 신뢰할 수 없는 키로 서명된 펌웨어에 대해 향후 경고할 기회를 제공하지만 훔친 서명 키가 사용되는 것을 적극적으로 방지하지는 않습니다. .

서명 키를 분실하는 것은 사무실 건물의 모든 층과 모든 스위트룸에 대한 물리적 마스터 키를 분실하는 것과 비슷합니다.

손상된 잠금 중 하나를 변경할 때마다 도난당한 키의 유용성이 줄어들지만 모든 단일 잠금을 변경하지 않는 한 보안 문제를 제대로 해결하지 못한 것입니다.

그러나 하룻밤 사이에 건물의 모든 자물쇠를 즉시 교체하면 모든 사람을 잠그게 되므로 실제 세입자와 근로자가 이전 키를 교환할 수 있는 유예 기간 동안 사무실을 계속 사용하도록 할 수 없습니다. 새로운 것을 위해.

따라서 이 경우 최선의 방법은 MSI의 원래 조언을 충실히 따르는 것입니다.

[MSI의] 공식 웹사이트에서만 펌웨어/BIOS 업데이트를 받고 공식 웹사이트 이외의 소스에서 파일을 사용하지 [마십시오].

불행하게도, 그 조언은 아마도 전적으로 도움이 되지 않는 다섯 단어와 느낌표로 요약될 것입니다.

조심하세요, 여러분!


업데이트. 인텔의 홍보 회사에서 우리에게 이메일을 보내 회사가 "이 보고서를 알고 있으며 적극적으로 조사하고 있습니다." 그들은 또한 우리에게 다음을 지적하도록 요청했습니다. "인텔 부트 가드 OEM 키는 시스템 제조업체에서 생성하므로 인텔 서명 키가 아닙니다." 약어 OEM은 원래 장비 제조업체, 제품에 내장된 개별 구성 요소의 공급업체 또는 공급업체가 아니라 전체 시스템을 제조한 공급업체를 지칭하는 약간 혼란스럽지만 오랫동안 확립된 용어입니다. 예를 들어, MSI에서 "Intel 마더보드"라고 부르는 제품을 구입할 때 MSI는 OEM이고 Intel은 프로세서 칩 및 완제품의 핵심인 기타 칩셋 구성 요소의 공급업체입니다. (마더보드가 자전거 보안 케이블이었다면 인텔에서 자물쇠를 만들었겠지만 OEM에서 케이블을 용접하고 보호 코팅으로 제품을 덮고 조합에 대한 번호를 선택했을 것입니다.) [2023-05] -09T22:45Z]


타임 스탬프 :

더보기 노출 된 보안