CVE-2026-58413
ŚrednieCVSS 6.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
Podatność w Network-AI (wersje przed 5.12.2) w funkcji przywracania środowiska. Funkcja restore() nie sprawdza, czy ścieżka kopii zapasowej znajduje się w dozwolonym katalogu, co pozwala na podanie identyfikatora z sekwencją ../ i przywrócenie plików z dowolnego katalogu.
Ocena ryzyka
Organizacja ryzykuje nadpisanie plików w środowisku danymi z zewnętrznych katalogów, co może prowadzić do uszkodzenia danych lub wstrzyknięcia złośliwej treści.
Rekomendacja
Zaleca się aktualizację Network-AI do wersji 5.12.2, która waliduje identyfikator kopii zapasowej i odrzuca ścieżki zawierające separatory lub ..
Inne podatności w Network-AI
Zobacz wszystkie- CVE-2026-120314Wysokie
Network-AI w wersjach od 5.14.0 przed 5.15.5 zawiera podatność braku uwierzytelniania w klasie A2AServer, która pozwala nieuwierzytelnionym atakującym na dostęp do operacji na zadaniach, gdy nie skonfigurowano sekretu. Atakujący mogą wysyłać żądania JSON-RPC do tasks/send, tasks/get i tasks/cancel bez tokenu Bearer, aby wykonywać zadania, odczytywać wyniki i anulować zadania.
- CVE-2026-120313Wysokie
Network-AI przed wersją 5.15.5 zawiera podatność path traversal w InputSanitizer.sanitizePath(), która pozwala atakującym na wyjście poza katalog bazowy przy użyciu ścieżek do katalogów siostrzanych. Atakujący mogą podać ścieżki, których nazwa katalogu dzieli prefiks z katalogiem bazowym, omijając niezabezpieczone sprawdzenie startsWith, aby czytać, listować lub zapisywać pliki poza piaskownicą.
- CVE-2026-120312Wysokie
Network-AI w wersjach od 5.13.4 przed 5.15.5 zawiera podatność path traversal w AgentVCR, która pozwala atakującym kontrolującym nazwę kasety na odczyt lub zapis dowolnych plików .json. Atakujący mogą przekazać sekwencje traversal do load() lub save(), aby ujawnić wrażliwe dane JSON lub nadpisać pliki polityk, takie jak konfiguracja poziomu zaufania AuthGuardian.
- CVE-2026-120311Wysokie
Network-AI w wersjach od 5.13.4 przed 5.15.5 zawiera podatność path traversal w FileJobStore, która pozwala atakującym na odczyt lub usunięcie dowolnych plików .json poprzez podanie sekwencji traversal w identyfikatorze zadania. Atakujący kontrolujący id przekazywane do FileJobStore.get(), FileJobStore.delete() lub JobQueue.getJob() może ujawnić dane uwierzytelniające i tokeny uprawnień lub usunąć pliki konfiguracyjne, osłabiając autoryzację AuthGuardian.
- CVE-2026-54051Krytyczne
Podatność w bibliotece Network-AI (TypeScript/Node.js) przed wersją 5.9.1 umożliwia ominięcie listy dozwolonych poleceń powłoki. Atakujący może wykonać dowolne polecenia przez wstrzyknięcie znaków specjalnych (np. `;`).
- CVE-2026-109332Niskie
W Network-AI (npm network-ai) przed wersją 5.15.2 wykryto błąd walidacji pochodzenia w McpSseServer._handleRequest w lib/mcp-transport-sse.ts, który odzwierciedla localhost Origins w nagłówku Access-Control-Allow-Origin niezależnie od interfejsu wiązania. Gdy serwer wiąże adres niepętlowy, strona atakującego z Origin localhost odwiedzona przez ofiarę może odczytać nieuwierzytelnione endpointy, takie jak /health, w trybie cross-origin.
- CVE-2026-109331Wysokie
Network-AI od wersji 5.14.0 przed 5.15.2 zawiera podatność obejścia kontroli bezpieczeństwa w hooku ClaudeHookBridge PreToolUse, który dopasowuje wzorce deny tylko do pierwszego obecnego pola kandydata. Agent z prompt injection może umieścić niebezpieczne ładunki w polach takich jak Write content lub parametr skryptu MCP obok nieszkodliwego file_path lub command, omijając denyPatterns w celu zapisania web shelli lub wykonania skryptów.
- CVE-2026-109330Średnie
Network-AI w wersjach od 5.0.0 do 5.15.2 zawiera lukę cross-site WebSocket hijacking w DashboardServer, która pozwala zdalnym atakującym odczytać topologię agentów na żywo, ponieważ handleUpgrade nie wykonuje walidacji Origin ani tokenu. Atakujący mogą zwabić ofiarę uruchamiającą dashboard na złośliwą stronę, która otwiera WebSocket do lokalnego dashboardu i eksfiltruje identyfikatory agentów, role, opisy zadań i budżety tokenów.
- CVE-2026-73615Wysokie
Network-AI przed wersją 5.15.1 zawiera podatność polegającą na obejściu matchera zabezpieczeń, gdzie SandboxPolicy ocenia surowe ciągi poleceń z zachowanymi cudzysłowami, podczas gdy executor tokenizuje polecenia, usuwając cudzysłowy przed wykonaniem. Atakujący mogą tworzyć polecenia z cudzysłowami, które omijają listy blokad i bramki zatwierdzania, podczas gdy executor wykonuje identyczne niecytowane niebezpieczne argv.
- CVE-2026-73614Wysokie
Network-AI ClaudeHookBridge przed wersją 5.15.1 obcina ciąg docelowy do 500 znaków przed oceną denyPatterns, podczas gdy Claude Code wykonuje pełne, nieobcięte polecenie. Atakujący mogą umieścić niebezpieczną treść poza 500 bajtem w polu polecenia Bash, aby ominąć twardą listę blokad operatora i wykonać dowolne polecenia.
Oryginalny opis (angielski, źródło NVD)
Network-AI is a TypeScript/Node.js multi-agent orchestrator. Prior to version 5.12.2, `EnvironmentManager.restore(env, backupId)` computes the backup path with `join(envDir, '.backups', backupId)` and only checks that this path exists. It does not resolve the result or verify that it remains under `data/<env>/.backups`. A caller can pass a traversal backup ID such as `../../../outside/source-dir` to restore files from an arbitrary directory into the target environment data directory. The issue is fixed in v5.12.2. `restore()` now validates `backupId` against `/^[\w\-]+$/` and asserts `dirname(resolve(join(backupsDir, backupId))) === resolve(backupsDir)` before touching the filesystem. Backup IDs containing path separators or `..` are rejected, so a crafted ID can no longer copy directories from outside `.backups/` into the environment.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

