„`html
Zusammenfassung
Die Schwachstelle CVE-2026-74792 betrifft Scriban in Versionen bis einschließlich 6.6.0 und ermöglicht einen Denial-of-Service-Angriff durch Stack Overflow. Ein Angreifer kann durch speziell konstruierte, verschachtelte Array-Initialisierer eine nicht abfangbare StackOverflowException auslösen, die den betroffenen Prozess sofort beendet.
Betroffene Systeme
Betroffene Versionen:
- Scriban <= 6.6.0
- Scriban 7.0.0 ist nicht betroffen
Alle Anwendungen, die Scriban zur Template-Verarbeitung einsetzen und untrusted Input akzeptieren, sind potentiell vulnerabel. Dies umfasst Web-Anwendungen, die Benutzer-Templates verarbeiten oder externe Datenquellen als Templates laden.
Technische Details
Der Fehler liegt in der rekursiven Parsing-Logik für verschachtelte Array-Initialisierer. Die Parse-Kette folgt diesem Pfad: ParseArrayInitializer → ParseExpression → ParseArrayInitializer. Der ExpressionDepthLimit Counter, der durch den Fix für GHSA-wgh7-7m3c-fx25 eingeführt wurde, kontrolliert diese Rekursion nicht vollständig.
Ein Angreifer kann ein Template mit extrem tief verschachtelten Array-Strukturen wie [[[[[...]]]]] bereitstellen. Diese Verschachtelung führt zu einer unkontrollierten Stack-Ausbreitung, die den Stack Overflow verursacht, bevor der Tiefenlimit greifen kann. Die resultierende StackOverflowException ist nicht abfangbar und terminiert den gesamten Prozess.
Empfohlene Massnahmen
- Sofortiges Update: Upgrade auf Scriban 7.0.0 oder höher
- Input-Validierung: Implementieren Sie strenge Validierung für Template-Input, insbesondere Längenlimits
- Process-Isolation: Führen Sie Template-Verarbeitung in isolierten Prozessen aus mit Ressourcenlimits
- Monitoring: Überwachen Sie unerwartete Prozess-Terminierungen
Bewertung
CVSS-Score: 7.5 (High)
Angriffsvektor: Network | Angreifer kann remote exploiten | Kein Patch verfügbar | Kritische Verfügbarkeits-Auswirkung durch DoS-Szenario.
„`