GN⁺: 수십억 기기에 사용된 Bluetooth 칩에서 발견된 미등록 백도어
(bleepingcomputer.com)Bluetooth 칩의 백도어 발견
-
ESP32 칩의 백도어: 중국 제조사 Espressif의 ESP32 마이크로칩에서 문서화되지 않은 "백도어"가 발견됨. 이 칩은 2023년 기준 10억 개 이상의 장치에 사용되고 있음. 백도어는 신뢰할 수 있는 장치를 스푸핑하고, 무단 데이터 접근을 허용하며, 네트워크의 다른 장치로 이동하거나 장기적인 지속성을 확립할 수 있음.
-
발견 배경: 스페인 연구자 Miguel Tarascó Acuña와 Antonio Vázquez Blanco가 이 백도어를 발견하고, 마드리드의 RootedCON에서 발표함. 이 백도어는 모바일 폰, 컴퓨터, 스마트 잠금 장치, 의료 장비 등 민감한 장치에 영구적으로 감염시킬 수 있음.
ESP32에서 백도어 발견
-
블루투스 보안 연구: 블루투스 보안 연구에 대한 관심이 줄어들었지만, 이는 프로토콜이나 구현이 더 안전해졌기 때문이 아님. 대부분의 공격은 작동하는 도구가 없거나, 일반 하드웨어와 호환되지 않으며, 현대 시스템과 호환되지 않는 오래된 도구를 사용함.
-
새로운 도구 개발: Tarlogic은 하드웨어 독립적이고 크로스 플랫폼인 새로운 C 기반 USB 블루투스 드라이버를 개발하여 운영체제 특정 API에 의존하지 않고 하드웨어에 직접 접근할 수 있게 함. 이를 통해 ESP32 블루투스 펌웨어에서 숨겨진 벤더 특정 명령어(Opcode 0x3F)를 발견함.
-
발견된 명령어: 총 29개의 문서화되지 않은 명령어가 발견되었으며, 이는 메모리 조작(읽기/쓰기 RAM 및 Flash), MAC 주소 스푸핑(장치 스푸핑), LMP/LLCP 패킷 주입에 사용될 수 있음.
-
위험성: 이러한 명령어로 인해 OEM 수준에서 악의적인 구현 및 공급망 공격이 발생할 수 있음. 특히 공격자가 이미 루트 접근 권한을 가지고 있거나, 악성 펌웨어를 심거나, 악성 업데이트를 푸시한 경우 원격으로 백도어를 악용할 수 있음.
-
물리적 접근의 위험성: 일반적으로 장치의 USB 또는 UART 인터페이스에 물리적으로 접근하는 것이 더 위험하고 현실적인 공격 시나리오임.
-
연구자 설명: 연구자들은 ESP32 칩을 완전히 제어하고, RAM 및 Flash 수정 명령어를 통해 칩에 지속성을 얻을 수 있으며, 다른 장치로 확산될 가능성이 있다고 설명함.
-
Espressif의 반응: BleepingComputer는 연구 결과에 대한 Espressif의 입장을 요청했으나 즉각적인 답변을 받지 못함.
Hacker News 의견
-
제목이 오해를 불러일으킬 수 있음. "백도어"는 자신의 USB Bluetooth 어댑터의 메모리와 다른 저수준 기능을 엿보고 조작할 수 있게 하는 것 같음. 무선으로 사용 가능한 것은 아님
- 문서화되지 않은 디버깅 명령은 흔함. WiFi 어댑터와 GPS 수신기에서 비슷한 기능을 발견한 경험이 있음. 이는 칩 펌웨어나 벤더 드라이버를 역공학하여 발견됨. 자체적으로는 큰 문제가 아님. 서명되지 않은 펌웨어를 허용하는 것은 동일하게 취약함
- 만약 이 기능이 호스트 외부에서 사용 가능하다면, 이는 매우 다른 이야기가 될 것임
-
연구자들은 ESP32 WiFi 스택에 대한 저수준 접근을 허용하는 문서화되지 않은 하드웨어 기능을 발견함
- 이를 "백도어"라고 부르는 것은 단순한 클릭 유도임
-
이 헤드라인은 거짓임. Bluetooth 칩의 백도어는 무선 공격자가 칩에서 코드 실행을 할 수 있게 하는 것임. 이 기사는 연결된 장치의 드라이버가 칩에서 코드 실행을 할 수 있게 하는 것을 보고함. 이는 보안 경계를 위반하지 않음
- 잘 작동하는 저널리즘 생태계에서는 철회가 필요하고, 이를 작성한 매체의 평판에 큰 손상을 줄 것임. 하지만 이는 일어나지 않을 것임
-
Bluetooth 스택에 몇 가지 문서화되지 않은 명령이 있는 것인지 혼란스러움. 만약 이것이 이미 장치에서 실행 중인 코드에만 접근 가능하다면, 이를 백도어라고 부르지 않을 것임
-
이론적으로는 연결된 BT 라디오 자체에 저수준 접근을 해야 함. 이는 기대되는 것임
- 장치가 이러한 저수준 인터페이스를 갖는 것을 선호함. 문제는 존재보다는 문서화의 부족일 수 있음
- Qualcomm 라디오에서 USB를 통해 메모리 읽기/쓰기 명령을 사용하여 잠긴 장치를 해제하고 소유권을 가졌음. 이는 완전한 OOB 읽기/쓰기였기 때문에 좋지 않을 수 있지만, 만약 이것이 플래시된 코드에서만 접근 가능하다면 더 나을 것임
-
좋은 연구이지만 나쁜 헤드라인임. 공격 벡터로서 물리적 접근이 필요하고 거의 모든 경우에 다른 방법으로 이미 수행 가능함. "일반적인 Bluetooth 칩에서 발견된 문서화되지 않은 명령"이 더 나은 헤드라인일 것임
-
TL;DR: 펌웨어를 역공학하여 메모리 읽기/쓰기, 패킷 전송, MAC 주소 설정 등의 HCI 명령을 발견함
- 실제로 백도어가 아님. 이들이 이를 백도어라고 불렀는지(발표는 스페인어로 되어 있음), 아니면 기자들이 클릭을 유도하기 위해 백도어라고 부르는지 모르겠음
- HCI 명령을 장치에 보내려면 임의의 접근이 필요함. 이는 이미 장치를 제어하고 있는 것임. 무선 링크를 통해 원격으로 악용되는 것이 아님. 모든 익스플로잇은 이미 장치의 완전한 제어를 필요로 하며, 이 시점에서 MAC 주소를 변경하거나 패킷을 보내는 것은 놀라운 일이 아님
- 흥미로운 연구이지만 "백도어"로 포장된 것을 보는 것은 정말 실망스러움. 이 표현에 대한 책임이 누구에게 있는지 모르겠음. 아마도 기자들일 것임
-
모두가 커널 공간에서 실행되는 불투명한 바이너리 블롭 드라이버를 데스크톱과 노트북에 설치하고, 자신의 클라우드 제어 전화기에 루트 접근조차 하지 못하는 것에는 괜찮지만, 이미 장치가 손상된 상태에서만 사용할 수 있는 문서화되지 않은 저수준 ESP32 명령은 뉴스 가치가 있는 위협 벡터임
- 번역 과정에서 무언가가 잘못된 것인지 궁금함. 과거에는 이것이 멋지다고 생각하고 이를 SDR로 변환할 방법을 찾았을 것임