Podatności PraisonAI
77 znanych podatności CVE w PraisonAI, przetłumaczonych i ocenionych.
- CVE-2026-61446Wysokie
PraisonAI przed wersją 1.6.78 zawiera podatność zdalnego wykonania kodu w menedżerze wtyczek. Ładuje on i wykonuje dowolne pliki Python (.py) z katalogów .praisonai/plugins/ bez weryfikacji podpisu, integralności ani izolacji. Atakujący, który może umieścić złośliwy plik .py w katalogu wtyczek (np. przez path traversal, atak na łańcuch dostaw lub skompromitowaną zależność), uzyskuje zdalne wykonanie kodu podczas inicjalizacji systemu wtyczek.
- CVE-2026-61443Wysokie
PraisonAI przed wersją 1.6.78 zawiera podatność zdalnego wykonania kodu w funkcji SkillTools.run_skill_script(), która wykonuje skrypty bez walidacji ścieżki. Atakujący mogą podać absolutne ścieżki plików, aby uruchomić dowolne skrypty z dowolnej lokalizacji systemu plików, w tym spoza zamierzonego katalogu roboczego.
- CVE-2026-61438Wysokie
PraisonAI przed wersją 4.6.78 zawiera podatność zdalnego wykonania kodu w funkcji JobWorkflowExecutor._exec_inline_python() z powodu niewystarczającej walidacji AST skryptów przepływu pracy. Atakujący mogą tworzyć złośliwe pliki YAML przepływu pracy z instrukcjami import os, a następnie wywołaniami os.system(), które omijają zabezpieczenia piaskownicy i wykonują dowolne polecenia systemowe z uprawnieniami procesu.
- CVE-2026-61436Wysokie
Podatność w PraisonAI przed wersją 4.6.78 w trybie webhook AgentMail nie weryfikuje podpisów webhook Svix, co pozwala nieuwierzytelnionym atakującym na fałszowanie zdarzeń message.received. Atakujący mogą wysyłać spreparowane ładunki JSON do punktu końcowego webhook, aby wywołać skonfigurowanych agentów z dowolnym adresem nadawcy i treścią wiadomości.
- CVE-2026-61435Wysokie
Podatność w PraisonAI przed wersją 4.6.78 umożliwia ominięcie uwierzytelniania w endpointach API agentów (agent_invoke.py) gdy opcja PRAISONAI_CALL_AUTH=disabled jest skonfigurowana. Zabezpieczenie ograniczające dostęp tylko do localhosta opiera się na nagłówku Host z żądania HTTP, który może być sfałszowany przez atakującego.
- CVE-2026-61433Wysokie
PraisonAI przed wersją 4.6.78 niebezpiecznie koduje wartości konfiguracji wdrożenia podczas generowania kodu źródłowego Python dla serwerów API. Atakujący mogą wstrzykiwać dowolne wyrażenia Python przez parametry konfiguracyjne deploy.api.host i agents_file, które wykonują się podczas uruchamiania serwera lub obsługi żądań.
- CVE-2026-61430Wysokie
PraisonAI przed wersją 1.6.78 zawiera podatność na fałszowanie żądań po stronie serwera (SSRF) w narzędziu web_crawl. Narzędzie to sprawdza nazwy hostów w momencie weryfikacji, ale ponownie je rozwiązuje przy nawiązywaniu połączenia, bez blokowania adresu IP. Atakujący mogą wykorzystać ponowne wiązanie DNS, aby ominąć ochronę SSRF i uzyskać dostęp do odpowiedzi z wewnętrznych usług HTTP, w tym z interfejsów pętli zwrotnej.
- CVE-2026-61427Wysokie
PraisonAI przed wersją 4.6.78 domyślnie udostępnia transport MCP HTTP-stream bez uwierzytelniania. Gdy operator uruchomi serwer bez klucza API, nieuwierzytelniony klient może zainicjować sesję, wyświetlić dostępne narzędzia i je wywołać. Dodatkowo serwer nie waliduje argumentów wywołań narzędzi względem zadeklarowanego schematu wejściowego.
- CVE-2026-60087Średnie
Podatność w PraisonAI przed wersją 1.6.78 polega na buforowaniu decyzji o zatwierdzeniu narzędzia wyłącznie na podstawie jego nazwy. Umożliwia to atakującemu ponowne wykorzystanie wcześniejszego zatwierdzenia dla kolejnych wywołań z dowolnymi argumentami.
- CVE-2026-60085Wysokie
PraisonAI przed wersją 4.6.78 zawiera podatność polegającą na ignorowaniu zdefiniowanych zasad bezpieczeństwa w domyślnym backendzie Subprocess Sandbox. Blokady komend, ścieżek, importów oraz ograniczenia dotyczące uruchamiania podprocesów i zapisu plików są całkowicie pomijane.
- CVE-2026-61439Wysokie
Podatność w PraisonAI przed wersją 4.6.78 wynika z błędnej konfiguracji obrony przed wstrzykiwaniem promptów, gdzie domyślny próg blokowania ustawiony jest na poziom CRITICAL. Pozwala to na przejście ataków o wysokiej dotkliwości (HIGH) bez blokowania, co umożliwia wyodrębnienie promptów systemowych i nieautoryzowane wywołania narzędzi.
- CVE-2026-61429Wysokie
Podatność SSRF w backendzie Crawl4AI/Chromium w PraisonAI przed wersją 1.6.78 umożliwia atakującym ominięcie walidacji poprzez DNS rebinding i przekierowania HTTP. Atakujący może skonstruować adres URL, który po wstępnej walidacji rozwiązuje się do wewnętrznych usług, pozwalając przeglądarce headless na odczyt wrażliwych danych.
- CVE-2026-61426Wysokie
PraisonAI przed wersją 1.7.3 zawiera niebezpieczną domyślną konfigurację, która wiąże się ze wszystkimi interfejsami sieciowymi, nie wymaga klucza API i zezwala na dowolne źródła CORS. Nieuwierzytelnieni atakujący mogą odczytać instrukcje agentów i podpowiedzi systemowe za pomocą żądania GET /api/agents lub wywołać agentów bez uwierzytelnienia przez POST /api/chat.
- 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-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-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.

