임베디드 장비 펌웨어 획득을 위한 UART 연결 방법 연구 — 제조사 방어 기법 분석과 우회 연결 방법 제안 (KIISC 2019 하계학술대회)
펌웨어 분석은 파일을 얻는 순간부터 시작됩니다. UART 연구는 취약점 분석 이전에, 제조사 방어 기법을 어떻게 넘어 실제 펌웨어에 접근할 수 있는지를 다룬 초기 연구입니다.
실기기 검증을 넣은 이유는 방법론이 책상 위 절차로 끝나지 않게 하기 위해서였습니다. 이후 퍼징 연구로 이어지는 출발점이 된 작업입니다.
IoT·임베디드 장비가 늘어나면서 각 기기는 잠재적 취약점을 품은 펌웨어를 탑재한다. 펌웨어를 분석하려면 먼저 기기에서 펌웨어를 획득해야 하고 그러려면 임베디드 시스템을 PC에 물리적으로 연결해야 한다.
UART(Universal Asynchronous Receiver/Transmitter)는 가장 접근성이 높은 연결 수단이지만 최근 제조사들이 하드웨어·소프트웨어 양쪽에서 UART 접근을 점점 더 강하게 차단하고 있어 펌웨어 획득이 어려워지는 것이 핵심 문제였다.
UART의 기본 구조(TX·RX·VCC·GND 4개 핀, USB-to-TTL 모듈·점퍼 케이블·터미널 소프트웨어 사용)를 정리한 뒤, 실제 펌웨어 획득 과정에서 마주치는 제조사 방어 기법과 그 우회 방법을 체계화했다.
제조사 UART 방어 기법 5종 분석:
UART 연결·우회 방법 7종 제안:
제안한 방법을 실제 라우터 D-Link DIR-842에서 검증했다. USB-to-TTL 모듈 SZH-CVBE-004와 터미널 XShell 6.0.0024를 사용해 PCB의 UART 포트 확인 → RX/TX/VCC/GND 구분 → USB-to-TTL 연결 → Serial 프로토콜 설정 및 Baud Rate 매칭 → 연결 수립의 순서로 펌웨어 획득 경로를 확보했다.
연구 결과를 2019 정보보호 하계학술대회(KIISC Summer Conference 2019)에 제1저자로 발표했다.
UART는 펌웨어를 얻는 가장 손쉬운 물리적 경로다. 제조사들이 하드웨어·소프트웨어로 UART를 점점 차단하고 있지만 여전히 많은 임베디드 시스템이 UART로 셸 접근을 노출하고 있고 다수의 잠금은 우회가 가능하다는 점을 정리·검증했다.
이 연구는 동일한 연구 라인의 펌웨어 획득 프론트엔드에 해당하며 이후 획득·에뮬레이션된 펌웨어를 대상으로 한 퍼징(IoT 펌웨어 퍼징) 및 하이브리드 퍼징 연구로 이어진다.
KIISC 2019 하계학술대회 발표 자료 — 발표 자료 보기 ↗
🔬 펌웨어 보안 연구 시리즈 ① — ② EF-Fuzz 석사논문 · ③ IoTFirmFuzz 등록특허 · ④ IoTHybridFuzzer 특허 · ⑤ FIRM-COV 논문