CVE-2026-105788
WysokieCVSS 8.8Streszczenie
Microsoft UFO przed wersją 3.0.10 zawiera podatność w narzędziach type_text i launch_app, gdzie parametry tekst i nazwa pakietu są przekazywane do poleceń adb shell bez odpowiedniej walidacji. Atakujący z ważnym kluczem API Mobile MCP może wykonać dodatkowe polecenia na autoryzowanym urządzeniu jako użytkownik Android shell.
Ocena ryzyka
Ryzyko obejmuje nieautoryzowane wykonanie poleceń na podłączonych urządzeniach z uprawnieniami użytkownika Android shell, co może prowadzić do naruszenia integralności urządzenia lub kradzieży danych.
Rekomendacja
Zaktualizuj Microsoft UFO do wersji 3.0.10 lub nowszej, która zawiera poprawkę. Dodatkowo ogranicz dostęp do kluczy API Mobile MCP i monitoruj autoryzowane urządzenia ADB.
Inne podatności w Microsoft UFO
Zobacz wszystkie- CVE-2026-105792Średnie
W Microsoft UFO przed wersją 3.0.9, endpoint /api/task_result/{task_name} wywołuje SessionManager.get_result_by_task() w pliku ufo/server/services/session_manager.py, który pozyskuje nieodnawialny lock i ponownie go próbuje, gdy nazwa zadania mapuje się na sesję. Uwierzytelniony atakujący może zablokować żądanie na czas nieokreślony, a w domyślnej konfiguracji jednego procesu zablokowany wątek uniemożliwia obsługę innych żądań HTTP, WebSocket i zależnych działań.
- CVE-2026-105791Wysokie
Narzędzie run_shell w komponencie CommandLineExecutor w Microsoft UFO przed wersją 3.0.9 waliduje tylko pierwszy token parametru bash_command i zezwala na explorer.exe. W systemie Windows explorer.exe przekazuje kolejny argument ścieżki do ShellExecute, co pozwala na uruchomienie dowolnego pliku wykonywalnego lub skryptu jako użytkownik pulpitu, mimo że podproces używa shell=False.
- CVE-2026-105790Średnie
Microsoft UFO przed wersją 3.0.9 zawiera podatność związaną z uwierzytelnioną rejestracją urządzenia przez /api/devices, która może dostarczyć kontrolowany przez atakującego punkt końcowy WebSocket, podczas gdy aip/transport/websocket.py stosuje pinned_addresses tylko do początkowego miejsca docelowego. Pinned websockets.connect() klient podąża za przekierowaniami między domenami i otwiera nowe połączenie TCP przed walidacją IP peer przez Galaxy, co pozwala na żądania uaktualnienia WebSocket do wewnętrznych hostów dostępnych z serwera. Potwierdzony wpływ to wewnętrzne połączenie i żądanie uaktualnienia, bez ustanawiania dowolnych metod HTTP, ujawniania treści odpowiedzi, ukończonej sesji AIP ani dostępu do metadanych chmury. Problem naprawiono w wersji 3.0.9.
- CVE-2026-105789Średnie
W narzędziu execute_command w Microsoft UFO (plik linux_mcp_server.py) polecenia sort i uniq są traktowane jako tylko do odczytu, mimo że ich opcje pozwalają na zapis do plików. Uwierzytelniony użytkownik może użyć sort -o lub drugiego argumentu uniq, aby tworzyć lub nadpisywać pliki z uprawnieniami procesu serwera UFO, bez użycia metaznaków powłoki. Podatność naprawiono w wersji 3.0.9.
- CVE-2026-55440Średnie
W frameworku Microsoft UFO przed wersją 3.0.7, handler COMMAND_RESULTS wywołuje funkcję get_or_create_session bez parametru owner_client_id, co pozwala uwierzytelnionemu klientowi na utworzenie sesji o dowolnej nazwie (np. constellation_task_id = f"{task_name}@{task_id}"). Może to prowadzić do odmowy dostępu prawowitemu właścicielowi lub wyczerpania pamięci przez tworzenie fikcyjnych sesji.
- CVE-2026-105793Krytyczne
Microsoft UFO przed wersją 3.0.9 zawiera podatność na wstrzyknięcie poleceń w narzędziu press_key w pliku ufo/client/mcp/http_servers/mobile_mcp_server.py. Parametr key_code jest przekazywany do `adb shell input keyevent`, a klient adb łączy argumenty w ciąg poleceń, co pozwala uwierzytelnionemu wywołującemu Mobile MCP na wykonanie dodatkowych poleceń jako użytkownik powłoki Android na autoryzowanym podłączonym urządzeniu. Wymaga to ważnego klucza UFO_MCP_API_KEY, adb na hoście i dostępnego autoryzowanego urządzenia.
- CVE-2026-73296Krytyczne
Framework Microsoft UFO przed wersją 3.0.8 udostępnia usługi MCP Streamable HTTP na portach TCP 8020 i 8021 bez uwierzytelnienia. Pozwala to nieuwierzytelnionemu zdalnemu atakującemu na wywoływanie funkcji takich jak przechwytywanie ekranu, dotknięcia, przesunięcia, wpisywanie tekstu, uruchamianie aplikacji i modyfikowanie stanu urządzenia z podłączonym Androidem.
- CVE-2026-62316Wysokie
Microsoft UFO, framework open-source do inteligentnej automatyzacji, przed wersją 3.0.8 zawiera serwer MCP na localhost:8010, który nie waliduje nagłówków Host, Origin ani Sec-Fetch-Site. Strona internetowa kontrolowana przez atakującego może użyć DNS rebinding, aby uzyskać dostęp do lokalnego punktu /mcp, wyliczyć schematy narzędzi i wywołać execute_command z ważnym kluczem UFO_MCP_API_KEY, co pozwala na odczyt plików lub wykonanie dozwolonych poleceń systemowych jako użytkownik ofiary. Problem został naprawiony w wersji 3.0.8.
- CVE-2026-73297Średnie
Framework Microsoft UFO przed wersją 3.0.8 nie blokuje prefiksów NAT64, 6to4 i Teredo oraz nie sprawdza ponownie osadzonych adresów IPv4, co pozwala zdalnemu atakującemu ominąć zabezpieczenie SSRF i uzyskać dostęp do metadanych chmury, wewnętrznych usług lub localhost.
- CVE-2026-54568Średnie
W frameworku Microsoft UFO w wersjach od 3.0.0 do 3.0.6 wykryto podatność polegającą na braku autoryzacji na poziomie obiektu. Klient podłączony jako URZĄDZENIE do serwera WebSocket mógł wysłać żądanie DEVICE_INFO_REQUEST z identyfikatorem innego urządzenia i uzyskać jego dane systemowe.
Oryginalny opis (angielski, źródło NVD)
Microsoft UFO is an open-source framework for intelligent automation across devices and platforms. Prior to 3.0.10, the type_text and launch_app tools in ufo/client/mcp/http_servers/mobile_mcp_server.py pass the authenticated caller-controlled text and package_name parameters into adb shell command argument positions without comprehensive validation. The adb client joins those arguments into a remote command string that the Android shell reparses, allowing shell metacharacters to execute additional commands on an authorized connected device as the Android shell user. Exploitation requires a valid Mobile MCP API key and a reachable device authorized for ADB, and it does not establish host operating-system execution, Android root execution, or access beyond the Android shell-user privileges. This issue is fixed in version 3.0.10.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

