CRITICAL🇬🇧 English

CVE-2026-47393

PraisonAI: brak uwierzytelnienia w generowanym serwerze Flask API

CVSS 9.8v3.1pub. 2026-07-21upd. 2026-07-22

PraisonAI w wersjach wcześniejszych niż 4.6.40 generuje serwer Flask API z domyślnie wyłączonym uwierzytelnieniem, co umożliwia nieautoryzowany dostęp do endpointów z poziomu sieci. Jest to szczególnie niebezpieczne, ponieważ serwer domyślnie nasłuchuje na wszystkich interfejsach sieciowych i przetwarza dane wejściowe użytkownika z dostępem do kluczy API LLM.

Pokaż oryginał (EN)

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.

🤖 Analiza AI
Jak działa

Generator kodu `praisonai.deploy.api.generate_api_server_code` tworzy serwer Flask, w którym parametr `auth_enabled` domyślnie ustawiony jest na `False`. Serwer uruchomiony zgodnie z dokumentowaną procedurą quickstart (`praisonai deploy --type api`) binduje się do adresu `0.0.0.0`, eksponując endpointy `/chat` oraz `/agents` bez żadnego mechanizmu uwierzytelniania. Każde żądanie do endpointu `/chat` powoduje wywołanie `praisonai.run()` na danych JSON dostarczonych przez użytkownika, przy czym w środowisku procesu dostępne są materiały kluczy API LLM. Podatność sklasyfikowana jest jako CWE-306 (brak uwierzytelnienia dla funkcji krytycznych) oraz CWE-1188 (niebezpieczna wartość domyślna).

Skutki

Nieuwierzytelniony atakujący zdalnie może wykonywać dowolne żądania orkiestracji LLM kosztem właściciela kluczy API, uzyskać dostęp do eksponowanych endpointów agentów oraz potencjalnie odczytać materiały kluczy API obecne w środowisku procesu.

Mitygacja

Należy zaktualizować PraisonAI do wersji 4.6.40 lub nowszej. Po aktualizacji uwierzytelnianie należy jawnie włączyć przez konfigurację `APIConfig(auth_enabled=True, auth_token=...)`, ponieważ poprawka ma charakter opt-in. Do czasu aktualizacji zaleca się ograniczenie dostępu do serwera API na poziomie firewall oraz unikanie wystawiania serwera publicznie.

Kogo dotyczy

PraisonAI w wersjach wcześniejszych niż 4.6.40, które korzystają z funkcji generowania serwera API (`praisonai deploy --type api`)

Uwagi

Podatność powiązana jest z wcześniej udokumentowanym zgłoszeniem CVE-2026-44338 (GHSA-6rmh-7xcm-cpxj). Poprawka dostępna w wersji 4.6.40 wprowadza uwierzytelnianie wyłącznie w trybie opt-in — sama aktualizacja nie włącza automatycznie ochrony bez zmiany konfiguracji.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje