Katalog CVE

CVE-2026-56838

WysokieCVSS 7.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Streszczenie

W PraisonAI ścieżka recipe.run() egzekwuje politykę blokowania domyślnie zabronionych niebezpiecznych narzędzi przez _check_tool_policy(), ale ścieżka strumieniowa recipe.run_stream() ładuje tę samą receptę i wywołuje _execute_recipe() bez tej kontroli. W rezultacie recepta deklarująca execute_command w requires.tools jest odrzucana przez recipe.run(), ale osiąga silnik wykonania przez recipe.run_stream() mimo allow_dangerous_tools=False.

Ocena ryzyka

Polityka bezpieczeństwa narzędzi może zostać obejścia przez użycie ścieżki strumieniowej, co pozwala na wykonanie niebezpiecznych narzędzi, które powinny być zablokowane. Problem dotyczy wersji od 4.5.87 do przed 4.6.59.

Rekomendacja

Zaktualizuj PraisonAI do wersji 4.6.59 lub nowszej. Do czasu aktualizacji unikaj używania recipe.run_stream() z receptami deklarującymi niebezpieczne narzędzia.

Inne podatności w PraisonAI

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

PraisonAI is a multi-agent teams system. From version 4.5.87 to before version 4.6.59, PraisonAI recipe execution blocks default-denied dangerous tools unless the caller explicitly passes allow_dangerous_tools=True. The normal recipe.run() path enforces this with _check_tool_policy(). The streaming path, recipe.run_stream(), loads the same recipe, checks dependencies, and then calls _execute_recipe() without running the dangerous-tool policy check. As a result, a recipe that honestly declares execute_command in TEMPLATE.yaml requires.tools is denied by recipe.run(), but reaches the execution engine through recipe.run_stream() with allow_dangerous_tools=False. This issue has been patched in version 4.6.59.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS