CVE-2026-47393
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 33 - wyżej niż 33% wszystkich znanych CVE
Streszczenie
PraisonAI domyślnie generuje serwer API Flask bez uwierzytelniania, który nasłuchuje na wszystkich interfejsach sieciowych (0.0.0.0) i udostępnia wrażliwe endpointy. Atakujący może wysyłać żądania do endpointów /chat i /agents bez żadnego uwierzytelnienia, co pozwala na wykonanie kodu LLM z kluczami API dostępnymi w środowisku.
Ocena ryzyka
Organizacja naraża się na nieautoryzowany dostęp do funkcji LLM oraz potencjalną kradzież kluczy API, co może prowadzić do wycieku danych lub niekontrolowanego użycia zasobów.
Rekomendacja
Zaktualizuj PraisonAI do wersji 4.6.40 i włącz uwierzytelnianie poprzez APIConfig(auth_enabled=True, auth_token=...).
Inne podatności w PraisonAI
Zobacz wszystkie- CVE-2026-57132Wysokie
W systemie PraisonAI przed wersją 4.6.62 ustawienie zmiennej PRAISONAI_CALL_AUTH na wartość disabled powoduje, że funkcja verify_token akceptuje żądania do /api/v1/agents/{id}/invoke bez uwierzytelniania CALL_SERVER_TOKEN. Wdrożenia korzystające z reklamowanego wyłączenia uwierzytelniania mogą narazić zarejestrowanych agentów oraz ich narzędzia i prywatny kontekst na nieuwierzytelnione wywołania.
- CVE-2026-57119Wysokie
W systemie PraisonAI przed wersją 4.6.59 nieuwierzytelnione API Jobs akceptuje bezwzględną lub podatną na traversację ścieżkę agent_file w POST /api/v1/runs i przekazuje ją do wykonawcy zadania bez listy dozwolonych obszarów roboczych ani sprawdzenia granic. Zdalny wywołujący może spowodować otwarcie przez serwer plików dostępnych dla konta usługi, ujawniając poświadczenia, klucze, zmienne środowiskowe i inne lokalne dane.
- CVE-2026-56839Wysokie
W systemie PraisonAI przed wersją 4.6.59 wrappery CODE_TOOLS utrzymują _workspace_root jako None i przekazują workspace=None do funkcji pomocniczych read_file, search_replace i apply_diff, które wymuszają ograniczenie ścieżek tylko dla niepustego workspace. Aplikacja udostępniająca code_read_file, code_search_replace lub code_apply_diff przed set_workspace może pozwolić na odczyt i modyfikację plików poza zamierzonym katalogiem projektu.
- CVE-2026-61434Wysokie
Podatność w PraisonAI przed wersją 4.6.78 umożliwia ominięcie listy dozwolonych poleceń powłoki poprzez użycie wbudowanych akcji find (-exec, -execdir, -delete). Atakujący może wykonać nieautoryzowane polecenia, odczytać lub usunąć pliki bez uruchamiania filtrów znaków specjalnych.
- CVE-2026-61432Średnie
Podatność typu path traversal w bibliotece PraisonAI (praisonaiagents) przed wersją 1.6.78 w funkcji FastContext. Funkcja FastContextAgent.execute_tool() nie sprawdza poprawnie ścieżek bezwzględnych ani nie kanonizuje ścieżek względnych, co pozwala na odczyt, przeszukiwanie i wyliczanie plików poza dozwolonym katalogiem roboczym.
- CVE-2026-61431Średnie
PraisonAI przed wersją 4.6.78 zawiera podatność na przechodzenie po ścieżkach w komponencie ContextGatherer, który nie waliduje ścieżek dołączanych w plikach .praisoncontext i .praisoninclude. Atakujący mogą podać ścieżki bezwzględne lub sekwencje przejścia do katalogu nadrzędnego, aby odczytać dowolne pliki poza obszarem roboczym i dołączyć ich zawartość do wygenerowanego pakietu kontekstu.
- CVE-2026-60091Wysokie
PraisonAI przed wersją 4.6.78 zawiera nieuwierzytelnioną podatność na fałszowanie żądań po stronie serwera (SSRF) w endpointcie Jobs API /api/v1/runs. Parametr webhook_url jest walidowany w momencie żądania, ale ponownie rozwiązywany w momencie połączenia, co pozwala atakującym na wykorzystanie ponownego wiązania DNS do dotarcia do wewnętrznych usług w ramach ślepego ataku SSRF.
- CVE-2026-60089Średnie
Podatność w pakiecie PraisonAI (praisonaiagents) przed wersją 1.6.78 pozwala na automatyczne ładowanie konfiguracji z pliku .praisonai/config.toml bez walidacji ścieżki output.output_file. Atakujący może ustawić tę ścieżkę na absolutną lub zawierającą '..', co przy wywołaniu agent.start() bez parametru output prowadzi do nadpisania plików poza katalogiem projektu.
- CVE-2026-44340Wysokie
W systemie multi-agentowym PraisonAI przed wersją 4.6.37 występuje luka, która pozwala na wykorzystanie symlinków do zapisu dowolnych danych w wybranej lokalizacji na systemie ofiary. Problem dotyczy braku walidacji dla member.linkname oraz nieodrzucania członków symlink/hardlink.
- CVE-2026-44334Wysokie
W systemie multi-agentowym PraisonAI, w wersjach od 4.5.139 do przed 4.6.32, występuje luka związana z nieautoryzowanym importem plików. W pliku tool_override.py brak jest zabezpieczeń, co pozwala na zdalne wywołanie kodu przez atakującego.
Oryginalny opis (angielski, źródło NVD)
PraisonAI is a multi-agent teams system. CVE-2026-44338 (GHSA-6rmh-7xcm-cpxj) documents that PraisonAI ships a code-generator (`praisonai.deploy.api.generate_api_server_code`) that emits a Flask API server with authentication disabled by default. Users who follow the documented quickstart (`praisonai deploy --type api`) get a server that binds to `0.0.0.0` per the recommended sample YAML, exposes `/chat` and `/agents` endpoints, runs `praisonai.run()` on user-supplied JSON input — LLM orchestration with the API key materials present in the process environment, and does not require any authentication. Versions prior to 4.6.40 still ship the generator with `auth_enabled` defaulting to `False`. The fix shape is opt-in via `APIConfig(auth_enabled=True, auth_token=...)`. Version 4.6.40 fixes the issue.

