CVE-2019-5418 ist eine Schwachstelle zur Offenlegung von Dateiinhalten, die im März 2019 in der Komponente Action View von Ruby on Rails entdeckt wurde. Diese Schwachstelle betrifft Action View-Versionen unter 5.2.2.1, 5.1.6.2, 5.0.7.2, 4.2.11.1 sowie alle Versionen der v3-Serie.
| Produkt | Ruby on Rails, Ruby-on-Rails |
| Datum | 2025-07-09 07:36:20 |
| Informationen |
|
Technische Zusammenfassung
Details: Die Schwachstelle nutzt einen Pfad-Traversal-Fehler im Rendering-Prozess von Action View aus, insbesondere in der Methode find_file in template_renderer.rb. Wenn die Render-Methode Ansichten außerhalb des Anwendungsbereichs verarbeitet, verwendet sie die Methode find_templates von PathResolver, um den Pfad aufzulösen. Diese Methode akzeptiert ein Muster, das aufgelöst werden soll, um den Pfad zu finden; die Schwachstelle ergibt sich aus der Möglichkeit, ein Payload zu manipulieren und einzuschleusen, das zum Aufbau dieses Musters in der Methode build_query verwendet wird: Beispiel: Muster template.:variants und die Variable variants als [‘mobile’, ‘tablet’, ‘desktop’] ergibt: template.{mobile,tablet,desktop} Die Variable variants kann über den Accept-Header manipuliert werden: Accept: ../../../../../../../../../etc/passwd{{
Nicht authentifizierter Angriff: Es ist keine vorherige Authentifizierung erforderlich.
Diese Designschwäche im Template-Auflösungsmechanismus ermöglicht es Angreifern, sensible Systemdateien zu lesen, indem sie die Accept-Header manipulieren, um den anfälligen Codepfad auszulösen. Dadurch werden Dateizugriffskontrollen auf Anwendungsebene über das Template-Rendering-System effektiv umgangen.
Empfehlungen
- Patch umgehend anwenden: Aktualisieren Sie auf eine Version von Ruby on Rails 5.2.2.1 oder höher.
- Web Application Firewall (WAF): Implementieren Sie WAF-Regeln, um bösartige Accept-Header zu filtern.
- Berechtigungen anwenden: Beschränken Sie die Dateisystemberechtigungen, um die Offenlegung sensibler Dateien zu minimieren.
[Callforaction-THREAT-Footer]
Leave a Reply