„`html
Zusammenfassung
Eine Path-Traversal-Schwachstelle wurde in ANTLR4 bis Version 4.13.2 entdeckt. Die Anfälligkeit befindet sich in der Funktion getImportedVocabFile der Datei tool/src/org/antlr/v4/parse/TokenVocabParser.java. Das Exploit ist öffentlich verfügbar und kann remote ausgenutzt werden. Der Hersteller wurde informiert, reagierte aber nicht.
Betroffene Systeme
- ANTLR (Another Tool for Language Recognition) Version 4.x bis 4.13.2
- Alle Systeme, die ANTLR4 als Abhängigkeit verwenden
- Entwicklungsumgebungen mit integriertem ANTLR4-Compiler
- Produktive Systeme mit ANTLR4-basierten Parsern
Technische Details
Die Schwachstelle liegt im tokenVocab Grammar Option Handler. Die Funktion getImportedVocabFile validiert Dateipfade unzureichend, was Angreifern ermöglicht, mittels Path-Traversal-Sequenzen (z.B. ../) auf beliebige Dateien zuzugreifen. Ein Angreifer kann durch manipulierte Grammatik-Dateien den Dateizugriff außerhalb des vorgesehenen Verzeichnisses lenken.
Angriffsvektor: Das Exploit erfordert die Verarbeitung einer speziell präparierten ANTLR-Grammatik-Datei (.g4) durch das Tool. Dies kann durch Hochladen von Dateien oder direktes Einschleusen in Build-Prozesse geschehen.
Empfohlene Massnahmen
- Sofortige Maßnahme: Aktualisieren Sie auf eine patched Version über 4.13.2, falls verfügbar
- Überprüfen Sie alle ANTLR4-Abhängigkeiten in Ihren Projekten
- Implementieren Sie Eingabevalidierung für Grammatik-Dateien
- Beschränken Sie Dateisystem-Zugriffe durch Sandboxing
- Aktualisieren Sie Build-Pipelines und CI/CD-Systeme
- Monitoren Sie Dateizugriffe auf verdächtige Path-Traversal-Muster
Bewertung
CVSS-Score: 5.3 (Medium)
Die Schwachstelle stellt ein moderates Risiko dar. Sie erfordert aktive Eingabe durch den Angreifer, kann aber remote ausgeführt werden. Das öffentliche Exploit erhöht die Gefährdung. Priorisieren Sie Updates basierend auf der Verbreitung von ANTLR4 in Ihrer Infrastruktur und dem Umgang mit untrusted Grammatik-Dateien.
„`