„`html
Zusammenfassung
PraisonAI in Versionen vor 1.6.78 weist eine Server-Side Request Forgery (SSRF)-Schwachstelle im web_crawl-Tool auf. Die Vulnerabilität ermöglicht es Angreifern durch DNS-Rebinding-Attacken, SSRF-Schutzmaßnahmen zu umgehen und auf interne HTTP-Response-Bodies von privaten oder Loopback-Diensten zuzugreifen. Der CVSS-Score von 8.5 klassifiziert diese Schwachstelle als High-Risk.
Betroffene Systeme
Folgende Versionen sind vulnerable:
- PraisonAI Versionen < 1.6.78
- Betroffene Plattformen: Cross-Platform (Linux, Windows, macOS)
- Betriebssysteme: Alle mit Python-Runtime
Das Risiko besteht primär für Installationen, die das web_crawl-Tool aktiv nutzen.
Technische Details
Die Schwachstelle liegt in der Hostname-Validierungslogik des web_crawl-Tools. Das System validiert Hostnamen während der initialen Überprüfung, führt aber während der tatsächlichen Verbindungsherstellung eine erneute DNS-Auflösung durch, ohne IP-Pinning zu implementieren.
Angreifer exploitieren dies durch DNS-Rebinding: Ein Hostname wird zunächst auf eine legitime IP aufgelöst (um Validierung zu bestehen), danach auf eine interne IP-Adresse (127.0.0.1, 169.254.169.254, 10.0.0.0/8) umgeleitet. Das System verbindet sich dann zur internen Adresse und offenbart sensitive Response-Bodies.
Kritische Angriffsszenarien:
- Zugriff auf localhost-Services (Redis, Databases)
- AWS-Metadata-Service-Exploitation (169.254.169.254)
- Interne API-Endpoints ausspähen
Empfohlene Massnahmen
- Sofort: Update auf PraisonAI 1.6.78 oder höher durchführen
- Eingabe-Validierung für URLs implementieren (nur whitelisted Domains)
- IP-Pinning bei DNS-Auflösungen einführen
- Network-Segmentierung: web_crawl-Tool isolieren
- Outbound-Firewall-Rules für private IP-Ranges (RFC 1918) konfigurieren
- Access-Logs auf verdächtige interne Zugriffe überprüfen
Bewertung
CVSS v3.1: 8.5 (High)
Die Kombination aus Netzwerk-Zugänglichkeit, fehlender Authentifizierung und Informationspreisgabe rechtfertigt die High-Klassifizierung. Ein Patch ist derzeit nicht verfügbar, Workarounds durch Netzwerk-Controls sind erforderlich.
„`