Podatności PraisonAI
126 znanych podatności CVE w PraisonAI, przetłumaczonych i ocenionych.
- CVE-2026-60088Średnie
Podatność w PraisonAI przed wersją 4.6.78 pozwala na odczyt plików poza obszarem roboczym poprzez nieprawidłową walidację ścieżek w szablonach poleceń. Atakujący mogą użyć sekwencji typu @../outside_secret.txt lub ścieżek bezwzględnych, aby wstrzyknąć zawartość plików do promptów modelu.
- CVE-2026-61437Wysokie
W pakiecie PraisonAI (pip praisonaiagents) przed wersją 1.6.78 wykryto niebezpieczne dynamiczne ładowanie modułów w funkcji AgentFlow._resolve_pydantic_class. Gdy krok przepływu pracy używa referencji output_pydantic, framework importuje plik tools.py z katalogu pliku przepływu bez piaskownicy, ignorując zmienne środowiskowe PRAISONAI_ALLOW_*_TOOLS. Atakujący kontrolujący plik przepływu i towarzyszący mu tools.py może wykonać dowolny kod Python z uprawnieniami uruchamiającego przepływ.
- 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-60086Średnie
Podatność w PraisonAI przed wersją 4.6.78 pozwala na ominięcie mechanizmu obrony przed wstrzykiwaniem promptów. Obrona blokuje tylko zagrożenia sklasyfikowane jako KRYTYCZNE, wymagając jednoczesnego dopasowania trzech lub więcej rodzin detektorów. Atakujący mogą tworzyć jedno- lub dwuwektorowe wstrzyknięcia promptów o poziomie zagrożenia WYSOKI, które przechodzą niezablokowane do modelu.
- CVE-2026-58653Średnie
PraisonAI przed wersją 0.1.7 nie weryfikuje, czy identyfikator projektu (project_id) w żądaniach tworzenia i aktualizacji zgłoszeń należy do obszaru roboczego (workspace) wskazanego w URL. Atakujący może tworzyć zgłoszenia odnoszące się do projektów z innych obszarów roboczych, powodując zanieczyszczenie danych między dzierżawcami w agregacji statystyk projektów bez ograniczeń obszaru roboczego.
- CVE-2026-56076Wysokie
PraisonAI w wersjach przed 1.5.128 zawiera podatność na wykonanie agenta z innego źródła w punkcie końcowym AGUI, co pozwala zdalnym atakującym na wywołanie dowolnego wykonania agenta. Brak uwierzytelnienia w punkcie końcowym POST /agui oraz hardkodowane nagłówki Access-Control-Allow-Origin: * umożliwiają obejście kontroli CORS.
- CVE-2026-56075Wysokie
PraisonAI w wersjach przed 4.5.128 zawiera podatność na wykonanie dowolnych poleceń powłoki, ponieważ moduły interfejsu użytkownika mają na stałe ustawiony tryb zatwierdzania na auto, co pomija konfigurację administratora z zmiennej środowiskowej PRAISON_APPROVAL_MODE. Uwierzytelnieni atakujący mogą zlecać agentowi LLM wykonywanie dowolnych poleceń powłoki.
- CVE-2026-56074Średnie
PraisonAI w wersjach przed 1.5.128 przechowuje decyzje o zatwierdzeniu narzędzi tylko na podstawie nazwy narzędzia, a nie argumentów wywołania, co pozwala na ominięcie komunikatów zatwierdzających przy kolejnych wywołaniach execute_command.
- 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.
- CVE-2026-40159Średnie
PraisonAI przed wersją 4.5.128 w integracji MCP pozwala uruchamiać serwery w tle przez stdio przy użyciu ciągów poleceń dostarczonych przez użytkownika. Domyślnie całe środowisko procesu nadrzędnego jest przekazywane do uruchamianego podprocesu, co ujawnia wrażliwe dane, takie jak klucze API, tokeny i poświadczenia baz danych.
- CVE-2026-40156Wysokie
PraisonAI automatycznie ładuje plik tools.py z bieżącego katalogu roboczego i wykonuje jego kod bez zgody użytkownika, walidacji ani piaskownicy. Samo umieszczenie złośliwego pliku tools.py w katalogu roboczym wystarcza do wykonania dowolnego kodu przy starcie. Problem naprawiono w wersji 4.5.128.
- CVE-2026-40151Średnie
PraisonAI przed wersją 4.5.128 udostępnia w platformie AgentOS endpoint GET /api/agents, który zwraca nieuwierzytelnionym wywołującym nazwy agentów, role oraz pierwsze 100 znaków instrukcji systemowych. Aplikacja FastAPI nie ma middleware uwierzytelniania ani walidacji klucza API i domyślnie używa CORS allow_origins=["*"] z hostem 0.0.0.0.
- CVE-2026-40148Średnie
W PraisonAI przed 4.5.128 funkcja _safe_extractall() w rejestrze przepisów waliduje elementy archiwum pod kątem path traversal, ale nie sprawdza rozmiarów poszczególnych elementów, łącznego rozmiaru ani liczby elementów przed wywołaniem tar.extractall(). Atakujący może opublikować złośliwy pakiet z wysoce kompresowalnymi danymi, który wyczerpie dysk ofiary.
- CVE-2026-40115Średnie
PraisonAI przed wersją 4.5.128 ma w serwerze rejestru przepisów opartym na WSGI (server.py) brak limitu rozmiaru ciała żądania HTTP odczytywanego na podstawie nagłówka Content-Length. W połączeniu z domyślnie wyłączonym uwierzytelnianiem dowolny lokalny proces może wysyłać ogromne żądania POST i wyczerpać pamięć serwera. Serwer oparty na Starlette ma limit 10 MB, ale serwer WSGI nie ma odpowiednika; problem naprawiono w 4.5.128.
- CVE-2026-40112Średnie
W PraisonAI przed wersją 4.5.128 endpoint Flask API w src/praisonai/api.py renderuje dane wyjściowe agenta jako HTML bez skutecznej sanityzacji. Funkcja _sanitize_html opiera się na bibliotece nh3, która nie jest wymieniona jako zależność w pyproject.toml; gdy nh3 jest nieobecne (domyślna instalacja), sanityzator nie działa i zwraca HTML bez zmian.
- CVE-2026-39891Wysokie
PraisonAI przed wersją 4.5.115 zawiera podatność na wstrzykiwanie szablonów w funkcji create_agent_centric_tools(). Dane wejściowe użytkownika przekazywane do agent.start() są przetwarzane bez odpowiedniego escapingu, co pozwala na wykonanie wyrażeń szablonów zamiast traktowania ich jako tekstu.
- CVE-2026-39889Wysokie
PraisonAI przed wersją 4.5.115 udostępnia serwer zdarzeń A2U (Agent-to-User) bez uwierzytelniania. Funkcja create_a2u_routes() rejestruje punkty końcowe /a2u/info, /a2u/subscribe, /a2u/events/{stream_name}, /a2u/events/sub/{id} i /a2u/health bez żadnych kontroli dostępu.
- CVE-2026-34955Wysokie
PraisonAI przed wersją 4.5.97 zawiera podatność w SubprocessSandbox we wszystkich trybach (BASIC, STRICT, NETWORK_ISOLATED). Funkcja subprocess.run() jest wywoływana z shell=True i polega wyłącznie na dopasowywaniu wzorców stringów do blokowania niebezpiecznych komend. Lista blokowanych nie zawiera sh ani bash jako samodzielnych plików wykonywalnych, co pozwala na łatwą ucieczkę z sandboksa w trybie STRICT poprzez sh -c '<polecenie>'.
- CVE-2026-34954Wysokie
W PraisonAI przed wersją 1.5.95 funkcja FileTools.download_file() nie waliduje parametru URL, przekazując go bezpośrednio do httpx.stream() z follow_redirects=True. Atakujący kontrolujący URL może uzyskać dostęp do dowolnego hosta dostępnego z serwera, w tym do metadanych chmury i usług wewnętrznych.
- CVE-2026-34939Średnie
Podatność w PraisonAI przed wersją 4.5.90, gdzie funkcja MCPToolIndex.search_tools() kompiluje dostarczony przez użytkownika ciąg znaków bezpośrednio jako wyrażenie regularne Pythona bez walidacji, sanityzacji lub limitu czasu. Specjalnie spreparowane wyrażenie regularne powoduje katastrofalne cofanie się w silniku re, blokując wątek Pythona na setki sekund i powodując całkowitą przerwę w działaniu usługi.
- CVE-2026-34937Wysokie
PraisonAI przed wersją 1.5.90 zawiera podatność na wstrzykiwanie poleceń w funkcji run_python(). Funkcja konstruuje polecenie powłoki z danych wejściowych użytkownika bez odpowiedniego escapowania, co pozwala na wykonanie dowolnych poleceń OS przed uruchomieniem Pythona.
- CVE-2026-34936Wysokie
PraisonAI przed wersją 4.5.90 zawiera podatność w funkcjach passthrough() i apassthrough(), które akceptują kontrolowany przez atakującego parametr api_base. Parametr ten jest łączony z endpointem i przekazywany do httpx.Client.request() bez walidacji schematu URL, filtrowania prywatnych adresów IP ani listy dozwolonych domen, co pozwala na wysyłanie żądań do dowolnego hosta osiągalnego z serwera. Problem został naprawiony w wersji 4.5.90.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

