블루투스가 닿으면 휴머노이드가 넘어갑니다 — 유니트리 G1 루트 취약점 두 건
휴머노이드 로봇이 창고와 실험실로 들어가고 있습니다. 그런데 8월 27일 공개된 보안 연구는 다른 쪽을 봤습니다. 로봇을 어떻게 쓰느냐가 아니라, 로봇이 어떻게 뚫리느냐입니다.
보안 연구자 올리비에 라플람이 유니트리 G1 EDU에서 두 개의 루트 원격코드실행 경로를 찾아냈습니다. 하나는 네트워크 인접 경로이고, 다른 하나는 블루투스 저전력 통신에서 시작합니다.
두 번째가 특히 무겁습니다. 블루투스가 닿는 거리 안에 있고 무료 계정 하나만 있으면, 페어링도 인증도 없이 로봇의 최고 권한을 가져올 수 있습니다. 게다가 한 대를 잡으면 옆에 있는 다른 G1로 그대로 번집니다.

블루투스가 닿는 거리에 있으면 로봇이 넘어갑니다
이번 연구의 결론을 한 문장으로 줄이면 그렇습니다. 공격자는 로봇의 주인일 필요도, 같은 네트워크에 있을 필요도 없습니다.
필요한 것은 두 가지뿐입니다. 블루투스 신호가 닿는 물리적 거리, 그리고 유니트리에 만든 무료 계정 하나입니다.
연구자는 이 취약점 묶음에 유니블리드(UniBLEed)라는 이름을 붙였습니다.
무슨 일이 있었나 — 8월 27일 공개된 연구
라플람은 2026년 8월 27일 연구 내용을 공개했습니다. 두 개의 취약점은 각각 CVE-2026-76639와 CVE-2026-76640으로 등록됐습니다.
더 해커 뉴스, SC 미디어, 시큐리티 어페어스 등 보안 매체들이 이튿날 잇따라 보도했습니다.
공개 시점 기준으로 G1 EDU용 수정 펌웨어가 확인되지 않았다는 점이 함께 지적됐습니다.

두 개의 CVE, 두 개의 침투 경로
CVE-2026-76639는 네트워크에 인접한 위치에서 시작합니다. chat_go와 bashrunner를 거쳐 루트 코드 실행에 도달합니다.
CVE-2026-76640은 블루투스 근접에서 출발합니다. 와이파이 설정 과정의 버퍼 오버플로우를 거쳐 같은 목적지에 닿습니다.
두 경로는 독립적입니다. 하나를 막아도 다른 하나가 남아 있다는 뜻입니다.
유니트리 G1 EDU는 어떤 로봇인가
유니트리는 중국의 로봇 기업이고, G1은 이 회사의 소형 휴머노이드 계열입니다. EDU는 연구·교육용으로 확장 기능이 열려 있는 모델입니다.
가격대가 비교적 낮아 대학 연구실과 스타트업에 널리 보급됐습니다. 보급 대수가 많다는 것은 공격 표면이 넓다는 뜻이기도 합니다.
이번 연구의 대상은 EDU 모델이지만, 구조를 공유하는 다른 제품군에 대한 검토도 필요해 보입니다.

로코모션 PC — 여기가 뚫리면 무엇을 잃나
공격의 최종 목적지는 로봇의 로코모션 PC입니다. 보행과 균형을 담당하는 제어 컴퓨터입니다.
이 컴퓨터는 로봇의 모든 주변 장치를 제어합니다. 카메라, 라이다, 관절 구동부가 전부 여기에 연결됩니다.
연구에 따르면 여기에 운영용 API 키까지 보관되어 있습니다. 즉 로봇 한 대의 장악에서 끝나지 않고 연결된 서비스로 번질 수 있습니다.
공격 조건: 블루투스 범위와 무료 계정 하나
이 취약점이 위험한 이유는 난이도가 아니라 조건의 낮음에 있습니다. 물리적 침입도, 내부자 협력도, 사전 페어링도 필요 없습니다.
블루투스 신호가 닿는 거리면 됩니다. 실내에서는 벽 하나를 사이에 두고도 충분한 거리입니다.
나머지 하나인 유니트리 계정은 누구나 무료로 만들 수 있습니다. 여기에 뒤에서 볼 구조적 문제가 있습니다.

1단계: 페어링 없이 열려 있던 GATT 특성 0xFFE2
블루투스 저전력 통신에서 기기는 GATT라는 구조로 기능을 노출합니다. 각 기능에는 읽기·쓰기 권한이 붙습니다.
G1의 0xFFE2 특성은 기본 쓰기 권한만으로 등록되어 있었습니다. 페어링이나 인증을 요구하지 않았다는 뜻입니다.
그래서 근처의 아무 기기나 이 특성에 값을 써 넣어 로봇과 대화를 시작할 수 있었습니다. 여기가 출입문이었습니다.
2단계: 부트스트랩이 돌려준 AES-128 키
연구자는 이 통로로 특정 명령 코드를 보냈습니다. 로봇은 응답으로 자신의 AES-128 키를 돌려줬습니다.
다만 그대로는 아니었습니다. 키는 RSA로 감싸인 상태였고, 공격자는 이를 풀 개인키를 갖고 있지 않습니다.
설계만 보면 여기서 막혀야 정상입니다. 문제는 그다음 단계에서 생겼습니다.

3단계: 클라우드가 키를 대신 풀어 준다
유니트리 클라우드에는 /device/bindExtData 라는 엔드포인트가 있었습니다. 이 엔드포인트는 암호화된 키 덩어리를 복호화해서 돌려줬습니다.
누구에게 돌려줬는지가 핵심입니다. 인증된 계정이기만 하면 됐습니다. 그 계정이 그 로봇의 주인인지는 확인하지 않았습니다.
즉 공격자는 로봇의 일련번호와 무료 계정만으로 평문 AES 키를 받아 갈 수 있었습니다. 암호를 깬 것이 아니라, 서버에 대신 풀어 달라고 요청한 것입니다.
소유권 확인이 없다는 말의 무게
이 대목이 이번 연구에서 가장 뼈아픈 부분입니다. 암호 알고리즘 자체는 멀쩡했습니다. 깨진 것은 권한 검사였습니다.
보안 사고의 상당수가 이런 형태입니다. 강한 자물쇠를 달아 놓고, 열쇠를 아무에게나 복사해 주는 창구를 옆에 두는 것입니다.
게다가 연구자는 모바일 앱 캐시에서도 평문 키를 발견했습니다. 같은 자산이 여러 곳에서 새고 있었던 셈입니다.

모바일 앱 캐시에 남아 있던 평문 키
앱이 기기와 통신하려면 키가 필요합니다. 문제는 그 키를 어떻게 보관하느냐입니다.
G1의 모바일 앱은 캐시에 키를 평문으로 남겼습니다. 단말을 확보할 수 있는 상황이라면 그것만으로 충분합니다.
블루투스 경로가 막히더라도 이 경로가 남습니다. 방어를 한 겹만 세워서는 부족하다는 점을 보여 줍니다.
4단계: 와이파이 설정 프로토콜 해제
AES 키를 손에 넣으면 그다음 문이 열립니다. 와이파이 설정용 통신 규약입니다.
이 규약은 원래 사용자가 로봇을 자기 집 무선망에 붙일 때 쓰는 것입니다. 키가 있으면 정당한 사용자와 구분되지 않습니다.
여기서부터 공격자는 로봇에게 명령을 내릴 수 있는 위치에 섭니다.

5단계: 주입으로 공격자 핫스팟에 붙이기
연구자는 와이파이 설정 값에 이스케이프되지 않은 문자열을 끼워 넣었습니다. 로봇 쪽에서 그 값을 그대로 셸에 넘겼기 때문입니다.
그 결과 로봇을 공격자가 준비한 무선 접속점에 강제로 붙일 수 있었습니다.
이 시점에서 로봇의 통신은 전부 공격자를 거칩니다. 원래 네트워크에서 로봇을 떼어 낸 것입니다.
6단계: 500바이트 버퍼에 1050바이트를 쓰면
다음은 메모리 손상입니다. 로봇의 블루투스 서버는 와이파이 이름을 500바이트 공간에 저장하도록 되어 있었습니다.
연구자는 여기에 1050바이트를 썼습니다. 넘친 값이 인접한 메모리 영역을 덮었습니다.
덮인 자리에는 프로그램이 종료 처리에 쓰는 함수 포인터가 있었습니다. 이제 그 포인터가 공격자가 정한 값을 가리킵니다.

베이스 주소 유출과 함수 포인터 덮어쓰기
현대 운영체제는 프로그램을 메모리의 무작위 위치에 올립니다. 주소를 모르면 정확한 위치를 덮어쓸 수 없습니다.
연구자는 chat_go 쪽의 경로 순회 문제를 이용해 이 기준 주소를 알아냈습니다. 무작위화가 무력해진 것입니다.
주소를 알고 나면 남은 것은 계산입니다. 어디에 무엇을 써야 원하는 함수가 불리는지가 정해집니다.
루트 획득 — 최종 단계
덮어쓴 포인터가 실행되는 순간, 로봇은 공격자가 지정한 명령을 최고 권한으로 실행합니다.
여기까지가 한 묶음입니다. 블루투스 접근에서 시작해 클라우드를 거쳐 펌웨어 메모리 손상으로 끝나는, 세 계층을 잇는 연쇄입니다.
어느 한 계층만 봐서는 이 공격이 보이지 않습니다. 개별 결함은 작지만 이어 붙이면 전부를 내줍니다.

또 하나의 경로: chat_go 와 bashrunner
첫 번째 CVE는 블루투스를 거치지 않습니다. 네트워크에 인접한 위치에서 chat_go와 bashrunner를 이용합니다.
bashrunner는 허용된 명령 목록을 두고 실행을 제한하는 구조였는데, 이 목록이 실행 중에 갱신되지 않는 점이 지적됐습니다.
즉 같은 로봇에 두 개의 독립적인 길이 나 있었던 셈입니다.
로봇이 로봇을 감염시킨다 — 웜 가능성
이번 연구에서 가장 우려스러운 대목입니다. 한 대를 장악한 공격자는 추가 설정 없이 범위 안의 다른 G1에 같은 공격을 펼 수 있습니다.
감염된 로봇이 블루투스 부트스트랩과 클라우드 키 조회를 스스로 반복하면, 사람이 개입하지 않아도 연쇄가 이어집니다.
로봇 여러 대를 한 공간에서 운용하는 연구실이나 물류 현장이라면 이 성질을 특히 무겁게 봐야 합니다.

패치 상태 — 클라우드는 7월, 펌웨어는 미확인
유니트리는 2026년 7월에 클라우드 쪽 계정-로봇 소유권 검사를 수정한 것으로 전해집니다. 3단계의 열쇠 창구가 닫힌 것입니다.
그러나 공개 시점 기준으로 G1 EDU용 수정 펌웨어 배포는 공개적으로 확인되지 않았습니다.
즉 소유자는 무엇을 언제 올려야 안전해지는지에 대한 분명한 안내를 아직 받지 못한 상태입니다.
소유자가 지금 할 수 있는 것
가장 먼저 할 수 있는 것은 물리적 분리입니다. 사용하지 않을 때 로봇의 전원을 내리고, 블루투스가 필요 없는 작업에서는 꺼 두는 것입니다.
운용 네트워크를 업무망과 분리하는 것도 유효합니다. 로코모션 PC에 저장된 자격 증명이 다른 시스템으로 번지는 경로를 줄여 줍니다.
모바일 앱을 설치한 단말의 관리도 함께 봐야 합니다. 캐시에 남은 평문 키가 별도의 통로가 되기 때문입니다.

연구자가 제안한 완화책
연구자가 제시한 방향은 다섯 갈래입니다. 클라우드 엔드포인트에 계정-로봇 소유권 검증을 추가하고, 블루투스 특성에 인증을 요구하는 것이 앞의 둘입니다.
와이파이 설정 값의 입력 검증과 이스케이프 처리, bashrunner 허용 목록의 실행 중 갱신이 그다음입니다.
마지막은 로봇 내부 통신 미들웨어의 인증·접근제어 기능을 켜는 것입니다. 기능은 있는데 꺼져 있었던 셈입니다.
피지컬 AI의 공격면은 소프트웨어와 다르다
서버가 뚫리면 데이터가 새지만, 로봇이 뚫리면 물리적으로 움직이는 장치가 남의 손에 들어갑니다.
이번 사례에서 무선 근접, 클라우드 권한, 펌웨어 메모리라는 성격이 다른 세 영역이 하나의 연쇄를 이뤘습니다. 어느 팀 하나가 잘해서는 막히지 않는 구조입니다.
피지컬 AI 시대의 보안이 기존 소프트웨어 보안의 연장선이 아니라는 점을 잘 보여 주는 사례입니다.

휴머노이드 보급 속도와 보안의 격차
지난 몇 달 동안 휴머노이드 관련 소식은 대부분 성능과 투자 이야기였습니다. 얼마나 빨리 걷는지, 얼마를 투자받았는지가 중심이었습니다.
보급은 그 속도로 늘고 있는데, 보안 검증은 그만큼 따라오지 못했습니다. 이번 연구는 그 간극을 구체적인 CVE 번호로 보여 준 셈입니다.
가격이 낮아 널리 퍼진 모델일수록 이 격차의 영향이 큽니다.
표준화 흐름과 보안이 어긋나는 지점
공교롭게도 같은 주에 AI 에이전트가 물리 기기를 다루는 표준이 별도로 공개됐습니다. 기기를 다루기 쉽게 만들려는 흐름입니다.
다루기 쉬워진다는 것은 통제 경로가 늘어난다는 뜻이기도 합니다. 편의와 공격면은 대체로 같은 방향으로 자랍니다.
그래서 표준을 설계할 때 안전 한계값과 승인 절차를 함께 넣는 접근이 중요해집니다. 이번 유니트리 사례는 그 필요성을 반대편에서 증명합니다.

핵심 정리
보안 연구자 올리비에 라플람이 8월 27일 유니트리 G1 EDU의 루트 원격코드실행 취약점 두 건을 공개했습니다. CVE-2026-76639와 CVE-2026-76640입니다.
블루투스 경로는 페어링 없이 열려 있던 GATT 특성에서 출발해, 소유권을 확인하지 않는 클라우드 엔드포인트로 AES 키를 얻고, 와이파이 설정의 버퍼 오버플로우로 루트를 획득합니다.
한 대를 장악하면 범위 안의 다른 G1로 그대로 번질 수 있어 웜처럼 확산될 소지가 있습니다. 로코모션 PC에는 운영용 자격 증명도 보관됩니다.
유니트리는 7월에 클라우드 쪽 소유권 검사를 고친 것으로 전해지지만, 공개 시점 기준 G1 EDU용 수정 펌웨어는 확인되지 않았습니다.
참고하실 만한 것
G1 EDU를 운용 중이라면 사용하지 않는 시간의 전원 관리와 블루투스 비활성화, 운용망 분리부터 점검해 보시기를 권합니다.
모바일 앱이 설치된 단말도 함께 관리 대상에 넣는 것이 좋습니다. 캐시의 평문 키가 별도 경로가 됩니다.
제조사 공지에서 펌웨어 버전 번호가 명시된 안내가 나오는지 확인하시고, 그 전까지는 물리적·망 분리에 의존하는 편이 안전합니다.
출처
- Boschko — UniBLEed: Unauthenticated Root RCE on Any Unitree G1 Within Bluetooth Range
- The Hacker News — Two Unitree G1 EDU Humanoid Robot Flaws Enable Root RCE
- SC Media — Two root remote code execution flaws found in Unitree G1 EDU robot
- Security Affairs — Hack One Robot, Reach the Next: Unitree G1 Security Flaws
- GBHackers — Unitree G1 Humanoid Robot Flaws Allow Unauthenticated Root RCE Over Bluetooth
- Cyber Press — Unitree G1 Humanoid Robot Flaws Enable Unauthenticated Root RCE Over Bluetooth
- The Hacker Wire — Unitree G1 EDU Firmware RCE (CVE-2026-76639)
- arXiv — Cybersecurity AI: Humanoid Robots as Attack Vectors
- GuardianMSSP — Two Unitree G1 EDU Humanoid Robot Flaws Enable Root RCE
협업문의 : kuroicode@gmail.com
블로그 : https://blog.svil.dev/
홈페이지 : https://svil.dev/