Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. praisonai
  4. ›
  5. GHSA-5qw8-f2g9-ff29

GHSA-5qw8-f2g9-ff29: PraisonAI recipe serve Typer command bypasses the non-localhost authentication guard

June 18, 2026

PraisonAI’s installed console entrypoint is Typer-first. In current releases, the recipe command is registered in the Typer app and praisonai recipe serve dispatches to the deprecated Typer command in src/praisonai/praisonai/cli/commands/recipe.py.

That Typer command can start the Recipe HTTP server on a non-localhost interface with no authentication:

praisonai recipe serve --host 0.0.0.0 --admin

It prints a deprecation warning, then launches the server with:

{
"host": "0.0.0.0",
"config": {
"cors_origins": "*",
"enable_admin": true
}
}

Because config.auth is absent, create_app() does not attach the API-key or JWT middleware. Unauthenticated requests can then reach the recipe API and, when enabled, /admin/reload.

This is an incomplete hardening / sibling-callsite issue. The legacy feature handler in src/praisonai/praisonai/cli/features/recipe.py rejects the same non-localhost/no-auth combination, and current create_auth_middleware() now fails closed if API-key/JWT auth is selected without a secret. The installed Typer command bypasses both expectations by never requiring or setting auth.

References

  • github.com/MervinPraison/PraisonAI/security/advisories/GHSA-5qw8-f2g9-ff29
  • github.com/advisories/GHSA-5qw8-f2g9-ff29

Code Behaviors & Features

Detect and mitigate GHSA-5qw8-f2g9-ff29 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 4.5.112 before 4.6.59

Fixed versions

  • 4.6.59

Solution

Upgrade to version 4.6.59 or above.

Impact 8.2 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-287: Improper Authentication
  • CWE-306: Missing Authentication for Critical Function
  • CWE-862: Missing Authorization

Source file

pypi/praisonai/GHSA-5qw8-f2g9-ff29.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Tue, 23 Jun 2026 12:23:22 +0000.