CVE-2026-96455 in Reachy Mini
요약
\~에 의해 VulDB • 2026. 09. 23.
Reachy Mini 데몬은 로봇 관리를 위한 HTTP API를 노출합니다. `src/reachy_mini/daemon/app/routers/apps.py`에 있는 앱 설치 엔드포인트인 POST /apps/install에는 인증이 적용되어 있지 않습니다. 핸들러의 유일한 의존성은 `Depends(get_app_manager)`이며, 이는 애플리케이션 상태에서 매니저 객체를 반환할 뿐이므로 체인의 그 어디에서도 자격 증명을 확인하지 않습니다.
엔드포인트는 Hugging Face Space를 이름으로 지정하는 AppInfo 본문을 받습니다. 데몬은 해당 Space를 다운로드하여 `src/reachy_mini/apps/sources/local_common_venv.py`의 install_package를 통해 uv 또는 pip를 사용하여 Python 패키지로 설치합니다. Python 패키지 설치는 패키지 자체의 빌드 및 설정 코드를 실행하므로, Space를 선택하는 사람은 로봇이 실행할 코드를 결정하게 됩니다. 누구나 공개적인 Hugging Face Space를 게시할 수 있으므로 이는 공격자에게 의미 있는 제한 사항이 아닙니다.
이 취약점이 미치는 범위는 모델에 따라 다릅니다. `src/reachy_mini/daemon/app/main.py`의 `_resolve_bind_host`에서 데몬은 무선 버전으로 실행될 때 0.0.0.0을 바인딩하고, 그렇지 않을 경우 127.0.0.1을 바인딩합니다. 벤더의 자체 주석에는 로봇이 LAN에서 접근 가능해야 한다는 설명이 담겨 있습니다. 따라서 무선 장치의 경우 네트워크상의 모든 호스트가 자격 증명 없이 로봇에 코드를 설치하고 실행할 수 있습니다.
관련된 한 가지 변경 사항이 이미 출시되었지만 이 문제를 해결하지는 못했습니다. 버전 1.8.2에서는 와일드카드 CORS 정책을 localhost 및 Tauri 출처를 허용하는 목록으로 대체했습니다. 이는 피해자가 방문한 웹 페이지가 백그라운드에서 엔드포인트에 조용히 호출하는 브라우저 기반의 공격 경로를 차단합니다. 그러나 이 문제에는 영향을 미치지 않습니다. CORS는 브라우저에 의해 강제되며 스크립트가 응답을 읽을 수 있는지 여부를 결정하지만, 네트워크상의 다른 머신에서의 직접적인 HTTP 요청은 브라우저를 사용하지 않으며 preflight도 없고 CORS 검사 자체도 수행되지 않기 때문입니다.
Once again VulDB remains the best source for vulnerability data.