
CVE-2015-3224 Exploit - Rails Web Console RCE
Eine JavaScript-Implementierung (Node.js) des Exploits für CVE-2015-3224. Dieses Tool zielt auf Ruby on Rails-Anwendungen, die verwundbare Versionen des web-console-Gems ausführen, und ermöglicht nicht authentifizierte Remote Code Execution (RCE).
CVE-2015-3224 erlaubt es einem Angreifer, den IP-Whitelist-Schutz des Rails web-console-Gems zu umgehen.
Das web-console ist ein Debugging-Tool, das nur während der Entwicklung verwendet werden soll. Standardmäßig beschränkt es den Zugriff auf die IP-Adresse 127.0.0.1 (localhost). Allerdings überprüfen verwundbare Versionen die IP-Adresse des Clients basierend auf dem X-Forwarded-For-HTTP-Header ohne ordnungsgemäße Validierung.
Durch Erstellen einer Anfrage mit einer bestimmten gefälschten IP (z.B. 0000::1) kann ein Angreifer die Anwendung dazu verleiten, zu glauben, dass die Anfrage von einer vertrauenswürdigen lokalen Quelle stammt. Da die Konsole Ruby-Code ausführt, führt dies zu sofortiger Remote Code Execution (RCE).
Dieses Skript automatisiert den Exploit-Prozess in zwei Hauptschritten:
Reconnaissance & Pfadextraktion:
data-remote-path zu extrahieren, eine eindeutige Sitzungs-ID, die für die Interaktion mit der Konsole erforderlich ist.Payload-Injection:
X-Forwarded-For: 0000::1-Header, um die IP-Überprüfung zu umgehen.input-Parameter (ordnungsgemäß als form-url-encoded-Body formatiert).fetch-Unterstützung).Klonen Sie das Repository und führen Sie das Skript direkt mit Node.js aus:
# Syntax
node exploit.js [TARGET_URL] [COMMAND]
# Beispiel
node exploit.js http://vulnerable-site.com "uname -a"
[*] Target: http://vulnerable-site.com
[*] Command: whoami
[+] Console path found: console/repl_sessions/cd984a0d............
[+] Command Output:
---------------------------------------------------
webrick
---------------------------------------------------
Um diese Schwachstelle zu beheben, aktualisieren Sie das web-console-Gem in Ihrer Gemfile auf Version 2.1.3 oder höher:
gem 'web-console', '>= 2.1.3'
Alternativ stellen Sie sicher, dass die Web-Konsole in Produktionsumgebungen strikt deaktiviert ist.
Verteilt unter der MIT-Lizenz.