Medium

PraisonAI vulnerable to Server-Side Request Forgery via DNS rebinding bypass in webhook_url validation

  • Disclosed: 25.08.2026
  • Updated: 11.10.2026 15:18

Summary

The webhook_url field in the Jobs API silently passes validation when DNS resolution fails (socket.gaierror), enabling DNS rebinding attacks. An attacker's domain can initially resolve to a public IP (passing validation) then switch to an internal IP before the server makes the HTTP request.

Details

The validator catches socket.gaierror and silently allows the URL:

python
# src/praisonai/praisonai/jobs/models.py:55
try:
    ip = socket.gethostbyname(hostname)
    ip_obj = ipaddress.ip_address(ip)
    if ip_obj.is_private or ip_obj.is_loopback:
        raise ValueError("private address")
except socket.gaierror:
    pass  # BUG: DNS failure silently ignored → SSRF bypass

The HTTP call is made later with no re-validation:

python
# src/praisonai/praisonai/jobs/executor.py:402
async with httpx.AsyncClient() as client:
    await client.post(job.webhook_url, ...)  # no second IP check

Proof of Concept

DNS rebinding flow:

  1. Register attacker.com with TTL=1s → resolves to 1.2.3.4 (public IP)
  2. Submit job: webhook_url=http://attacker.com/callback
  3. Validation passes (public IP)
  4. Switch DNS: attacker.com → 127.0.0.1
  5. Job completes → server POSTs to 127.0.0.1 → internal SSRF

Unresolvable domain bypass (no DNS rebinding required):

bash
curl -X POST http://:8005/api/v1/runs \
  -d '{"prompt":"run","webhook_url":"http://unresolvable.internal/cb","agent_yaml":"..."}'
# Validation: gaierror → pass → URL accepted

Impact

SSRF to internal HTTP services: admin panels, databases, and cloud metadata APIs (e.g., http://169.254.169.254/). Exploitable without authentication.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Python (PyPI) praisonai < 4.6.58 4.6.58

References

CVSS score 6.8/10
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N
Weakness (CWE)
CWE-367, CWE-918
Platform
Python (PyPI)
Package
praisonai
Disclosed
25.08.2026
Updated
11.10.2026 15:18

Sources and licenses

OSV / GitHub Advisory Database - PYSEC-2026-3890 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-hmfx-4v44-9qw9 - CC BY 4.0

Vulnerability history: praisonai

All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (104) in the archive
Total entries
104
First → latest
04.2026 10.2026
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • Critical 27
  • High 60
  • Medium 17

Disclosures per year

  1. 2026: 104
Severity:
  1. High · 7.5 CVE-2026-61439 < 4.6.78 4.6.78
  2. PraisonAI vulnerable to Server-Side Request Forgery via DNS rebinding bypass in webhook_url validation this entry
    Medium · 6.8 CVE-2026-55535 < 4.6.58 4.6.58
  3. High · 7.3 CVE-2026-56839 < 4.6.59 4.6.59
  4. High · 7.2 CVE-2026-57114 >= 4.5.126, < 4.6.59 4.6.59
  5. Critical · 9.8 CVE-2026-57125 < 4.6.59 4.6.59
  6. High · 8.8 CVE-2026-57117 >= 4.6.10, < 4.6.59 4.6.59
  7. High · 7.8 CVE-2026-56838 >= 4.5.87, < 4.6.59 4.6.59
  8. High · 8.3 CVE-2026-56835 >= 3.11.0, < 4.6.59 4.6.59
  9. High · 8.2 CVE-2026-56836 >= 4.5.112, < 4.6.59 4.6.59
  10. High CVE-2026-47397 < 4.6.40 4.6.40
Show more (20) Showing 60 of 88

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.