Skip to main content
← All vulnerabilities
CVE-2026-57114GHSA-RJVW-7VVW-549VPYSEC-2026-3519

PraisonAI: Jobs webhook SSRF protection bypass via DNS rebinding

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.6.59
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

PraisonAI, a multi-agent teams system, is affected through its Async Jobs API webhook feature. An attacker could use a hostname that passes the initial address check but later resolves to internal or cloud-metadata addresses, letting the server send requests to private network resources it should not reach.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original description

PraisonAI is a multi-agent teams system. From version 4.5.126 to before version 4.6.59, PraisonAI's Async Jobs API validates webhook_url when a job request is parsed and again when the internal Job object is constructed. That validation blocks direct loopback/private targets, but it is not bound to the later network request. When a job completes, _send_webhook() passes the original hostname to httpx.AsyncClient.post() with no send-time validation, IP pinning, or guarded transport. An attacker-controlled hostname can therefore resolve to a public IP during Pydantic validation and later resolve to loopback/private/cloud-metadata infrastructure during webhook delivery. This bypasses the intended SSRF guard in current supported releases. This appears to be an incomplete fix / patch bypass for GHSA-8frj-8q3m-xhgm. This issue has been patched in version 4.6.59.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  4. Record last updated

Affected versions

  • MervinPraison PraisonAI

    From 4.5.126 · fixed in 4.6.59

  • praisonaiPyPI

    From 4.5.126 · fixed in 4.6.59

References 1

GitHub · MervinPraison/PraisonAI