🇰🇷 한글 설명
Microsoft UFO 3.0.9 미만 버전에서 인증된 공격자가 WebSocket 엔드포인트를 조작하여 서버가 내부 호스트로 연결을 시도하도록 유도할 수 있는 취약점입니다. WebSocket 연결 과정에서 리다이렉트를 허용하고 IP 검증 전에 연결이 이루어짐으로써 내부 네트워크로의 요청이 가능해집니다. 이 취약점은 내부 연결 및 핸드셰이크 요청을 허용하지만, 임의의 HTTP 메서드 실행이나 데이터 유출로 이어지지는 않습니다.
💡 쉬운 설명
공격자가 조작된 주소를 이용해 서버가 내부 네트워크에 있는 다른 컴퓨터에 몰래 접속을 시도하게 만드는 보안 허점입니다. 다행히 내부 연결 시도까지만 가능하며, 서버의 중요한 데이터를 직접 빼가거나 제어하는 것은 불가능합니다.
🇺🇸 원문 (English)
Microsoft UFO is an open-source framework for intelligent automation across devices and platforms. Prior to 3.0.9, authenticated device registration through /api/devices can supply a permitted attacker-controlled WebSocket endpoint while aip/transport/websocket.py applies pinned_addresses only to the initial destination. The pinned websockets.connect() client follows cross-origin redirects and opens a new TCP connection before Galaxy performs its post-handshake peer-IP validation, allowing WebSocket upgrade requests to internal hosts reachable from the server. The confirmed impact is the internal connection and handshake request, and does not establish arbitrary HTTP methods, response-body disclosure, a completed AIP session, or cloud metadata access. This issue is fixed in version 3.0.9.
📍 영향받는 시스템
Microsoft UFO versions prior to 3.0.9
⚔️ 공격 벡터
인증된 사용자가 /api/devices를 통해 조작된 WebSocket 엔드포인트를 등록하여 서버의 내부 네트워크 연결을 유도하는 방식
🛡️ 대응 방법
Microsoft UFO를 최신 버전인 3.0.9 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 Version 값이 3.0.9보다 낮으면 취약한 상태이며, 3.0.9 이상이면 안전합니다.
pip show microsoft-ufo | grep -E 'Version'