블로그 목록으로 돌아가기

GOTROOT / Research

AI 시대에도, IoT는 여전히 물리적 접근이 필요하다. | GOTROOT

ipTIME 공유기와 국내 Wifi 장비, AI 음성 스피커 세 대의 대중적으로 사용되는 실제 기기를 UART부터 SPI, NAND까지 직접 뜯어본 기록. AI에게 펌웨어 분석을 맡겼지만, 펌웨어를 추출할 때에는 직접 인두기를 잡고 칩에 손을 대는 건 여전히 사람 몫이었다. GOTROOT가 직접 시도해보았다.

GOTROOT IoT 리서치 팀 2026. 7. 30.

AI 시대에도, IoT는 여전히 물리적 접근이 필요하다


들어가며

하드웨어를 감싸고 있는 물리적인 케이스를 열고, 촘촘하게 얽힌 버스(Bus)선을 따라 신호를 포착하며, 칩셋에서 펌웨어를 추출해 바이너리 코드를 읽어 내려가는 과정. 임베디드 장비 취약점 분석은 언제나 많은 시간과 집요한 손길을 요구하는 고독한 수작업이었습니다. 하지만 이제 패러다임이 변하고 있습니다. 최근 해커들이 LLM을 악용해 IoT 기기를 타깃으로 한 변종 봇넷과 악성코드를 순식간에 대량 양산하며 대규모 감염을 일으키는 것처럼, 공격의 속도는 이미 인간의 방어 한계를 넘어섰습니다.

웹과 앱 보안도 중요하지만, 현실 세계의 접점인 임베디드 보안을 이해하는 것은 다가올 미래를 준비하는 핵심 열쇠입니다. 머지않은 미래에 인공지능의 두뇌와 물리적 손발이 완벽하게 결합된 ‘피지컬 AI(Physical AI)’ 시대가 도래하면, 임베디드 보안의 성패는 곧 현실 세계의 안전과 직결될 것이기 때문입니다. 이렇듯 다가올 피지컬 AI 시대를 선제적으로 대비하기 위해, 우리는 국내외를 막론하고 임베디드 및 IoT 기기의 취약점 분석 리서치를 본격적으로 진행하고자 합니다.

image

사실 임베디드 보안은 진입 장벽이 매우 높은 분야입니다. 오실로스코프를 만지며 전압과 신호를 읽어내는 '하드웨어/전기적 지식'과, 바이너리를 뜯어 익스플로잇을 설계하는 '시스템 해킹' 기술을 동시에 접목해야 하기 때문입니다. 많은 보안 전공자나 엔지니어들이 이 융합의 지점에서 한계를 느끼고 중도 포기하곤 하며, 필자 역시 매 순간 같은 어려움을 마주하며 치열하게 삽질(?)을 이어가고 있습니다.


image

본 블로그를 시작하게 된 진짜 목적이 바로 여기에 있습니다. 우리가 먼저 맨땅에 부딪히며 겪은 시행착오와 파편화된 지식들을 연결하여, 조금이라도 정리된 '누구나 따라올 수 있는 임베디드 보안의 이정표'를 공유하고자 합니다.

먼저, 회로도를 읽고 시그널을 포착하는 하드웨어/전기적 지식 파트에서는 ipTIME A2003NS-MU국내 WiFi, 스피커를 대상으로 선정했습니다. 이 기기들을 활용해 물리적 케이스를 분해하는 것부터 전기적 인터페이스를 탐색하고, 플래시 메모리에서 펌웨어를 온전하게 추출해 내는 일련의 물리적 분석 과정을 하나씩 짚어 가며 공유하고자 합니다. 이어지는 소프트웨어 분석 및 시스템 해킹 파트에서는 TENDA 사의 AC15 모델을 살펴볼 예정입니다. 리뷰할 취약점은 CVE-2018-5767입니다.

이 모델을 선정한 이유는 PoC를 직접 구현하고 테스트해보기에 펌웨어 구조가 복잡하지 않고 직관적이기 때문입니다. 다룰 취약점 역시 임베디드 해킹에서 가장 기본이 되는 비교적 단순한 유형의 Stack Buffer Overflow(BOF)이다 보니, 전기적 분석 없이 추출한 바이너리를 가지고 시스템 해킹의 전체적인 흐름을 가볍게 시작해보기에 가장 적합하다고 판단하여 선택했습니다.


진입장벽

국내 WiFi 라우터 및 AI 스피커를 대상으로 한 분석 과정은 예상보다 훨씬 많은 물리적 장벽을 수반했습니다. UART 인터페이스가 의도적으로 차단된 기기, 펌웨어에 보호 메커니즘이 적용된 기기 등 제조사별로 상이한 보안 설계가 분석의 난이도를 높였으며, 이 과정에서 추가 장비와 새로운 접근 방법이 요구되었습니다. 그 구체적인 시행착오는 이후 편에서 상세히 다룰 예정입니다.


사람이 직접 수행한 영역

image
  1. 멀티미터로 핀 전압을 재는 것.

  2. SOIC8 클립이 칩에 잘 안 물릴 때 물리적(?)인 스킬을 이용해서 해결한 것.

  3. 기판을 보면서 이 핀이 UART인지 SPI 인지 데이터시트 등을 확인하여 멀티미터로 판단하는 것.

  4. 펌웨어 분석 시 binwalk로 파티션을 가르고 Ghidra로 디컴파일 코드를 뽑는 것.

  5. 입력 값, 어떤 함수를 먼저 봐야하는 것을 정하는 것.

  6. 작업 시 부품의 오작동 위험을 줄이기 위한 기초적인 납땜 회로 작업 및 분석 능력.


AI를 활용한 영역

image
  1. 부트 체인 및 전체 구조를 파악하기 위해 부트 로그 전문 초반 작업을 맡기는 것.

  2. 파티션 구조를 표로 정리하거나, 낯선 명령어 문법을 바로 찾아줄때 사용하는 것.

  3. ROP 가젯 후보를 나열하거나, QEMU 환경설정 오류를 잡는 것.

  4. 자동화 스크립트, PoC작성할 때 생성 도구 역할로 사용하는 것.


다루는 순서

서론 외에 각 편마다 꼭 필요한 지식들을 블로그 진입 부분에 작성할 예정입니다.

크게 서론 외 총 4편으로 나뉘며, 시행착오를 공유합니다.

대상

핵심 내용

서론

-

AI 시대에도 IoT는 여전히 물리적 접근이 필요하다.

1편

ipTIME A2003NS-MU

대표님 거실에도 있는 그 기기. WiFi 우리는 그걸 직접 사서 PCB부터 봤다.

2편

국내 WiFi, AI스피커

당신 집에도 있을 그 스피커, 그 공유기. 우리는 두 대를 동시에 뜯었다.

3편

해외 WiFi 펌웨어

물리 장비 없이도 공유기를 뚫을 수 있다. 우리는 공식 사이트에서 펌웨어를 받아서 시작했다.

4편

전부

실패는 데이터다. 우리가 못 한 것들을 전부 기록한다.

이후에도 분석을 성공하기 위한 여정은 계속 진행됩니다.


시도한 것

[국내 WiFi, AI스피커]

기기 분해 - PCB 분석 - UART/SPI 접속 - 펌웨어 추출 - 파일시스템 분석 - 바이너리 리버싱

[해외 WiFi]

하드웨어 없이 인터넷 상에서 펌웨어 다운로드 - 파일 시스템 분석 - 바이너리 리버싱 - 취약점 발견 - PoC


피지컬 AI, World Model이 오면 달라지는가

image

"이게 요즘 피지컬 AI 설명할 때 우리들 머릿속 이미지입니다" AI한테 팔다리를 줬다.

정확히는, 센서와 액추에이터를 붙이고, 물리 세계에서 직접 행동하게 만들었다. 업계에서는 이걸 피지컬 AI라고 부릅니다.

피지컬 AI가 팔다리를 갖고 World Model로 상황 판단까지 하게 되면 → UART 핀 찾고, 멀티미터 대고, 납땜하는 것도 로봇이 할 수 있게 되는 거 아닌가? → 그러면 IoT 레드팀도 자동화되는 거 아닌가? 로 가는 의문점이 생깁니다. 위의 이미지를 참고하고 얘기하자면, 이론적으로 피지컬 AI + World Model 이 합쳐진 형태라면 아래와 같은 순서로 IoT점검은 가능할 것으로 판단됩니다.

PCB 이미지 읽고 → UART 핀 후보 추론하고 → 프로브 위치 잡고 → 전압 측정하고 → 결과 해석하고 → 다음 행동 결정

에이전트 즉 완전 자동화까지는 오래걸릴 것으로 판단됩니다.

현재는 물리점검이 따를 수밖에 없으며, 인두기와 멀티미터가 여전히 필요합니다. 피지컬 AI, World Model이 도래하더라도 하드웨어를 직접 만지고 신호를 읽어내는 능력은 당분간 사람의 영역으로 남을 것입니다. 그리고 그것이 지금 이 블로그를 쓰는 이유입니다. LLM(텍스트)모델 AI가 할 수 있는 것과 할 수 없는 부분이 아직 공존해 있으므로 이것이 IoT 레드팀의 진입장벽이라고 생각합니다.


현재 현대사회에서는 로봇을 통해서 이 mm단위의 물리적인 작업을 지속적으로 연구 중인 것으로 알고 있습니다. 로봇 팔과 비전 모델이 결합하면 설계 도면(CAD/좌표파일)이 사전에 주어진 환경에서 PCB를 보고 핀을 식별하고 클립을 무는 것까지는 가능해질 수 있다고 생각합니다. 단순 납땜 자동화를 다루는 실험실 수준 연구는 이미 진행 중입니다.

image

실제로 IJARIS(2026)에서는 로봇 팔이 PCB의 사전 정의된 테스트 포인트에서 전압·저항을 자동으로 측정하는 시스템을 구현했으며, 수동 개입을 줄이고 진단 효율을 높이는 직접적인 전기적 검증을 수행했습니다. 테스트 포인트의 좌표가 있고, 어디를 측정해야 하는지 미리 알고 있는 환경. 그 조건에서는 이미 로봇이 합니다. 그러나 Real World에서 마주치는 현실은 정반대입니다. 핀맵도 없고, 데이터시트도 없고, 제조사가 디버그 인터페이스를 달아놨는지조차 모르는 상태에서 시작합니다. 로봇이 인두기 들 수 있게 되면 그때 다시 얘기해봐야겠지만, 그때까지는 납땜 연기 마시면서 태워가면서 AI가 못 하는 걸 할 수 있는 사람이 되는 게 지금 이 시점에서 가장 현실적인 전략이라고 생각됩니다. 로봇과 AI가 어디까지 올라오는지는 계속 봐야 한다는 것입니다.

CAD와 같은 정보들이 없는 환경에서 보안이 적용된 커스텀된 시스템이라면 여전히 사람의 손이 필요할 것으로 판단됩니다.


마치며

AI는 IoT 점검에서 반복 작업을 줄여주는 도구입니다. 시스템 해킹 쪽에서는 이미 많이 사용되고 있지만, 물리쪽에서는 아직 조수역할이라고 하기에는 아쉬움이 남아있는 상태입니다. 어느 쪽이든 무엇을 먼저 보고 무엇을 믿을지 정하는 일은 여전히 사람 몫입니다.

다음 편에서부터는 컴퓨터나 노트북에 설치하는 일반적인 윈도우/리눅스와는 달리 특정한 목적을 가진 기기(공유기, 스마트 TV, IoT 기기, 내비게이션 등) 내부에서 하드웨어를 제어하고 동작하도록 맞춤 제작된 리눅스 운영체제인 임베디드 리눅스에 대해서만 다룰 예정입니다.


출처 & 인용

image