
PoC für Java-RMI-Deserialisierungsschwachstelle
POC für die Java-RMI-Deserialisierungsschwachstelle
Sie benötigen wahrscheinlich JDK 8, um diesen POC auszuführen.
Achten Sie auf die Message-Klasse sowohl auf Client- als auch auf Serverseite. Sie sind unterschiedlich. Und der Unterschied ist der Schlüssel zum Verständnis dieser Schwachstelle.
Der von Oracle veröffentlichte Fix besteht darin, dass der Entwickler eine Deserialisierungs-Whitelist/-Blacklist in der Java-Sicherheitsrichtlinie konfiguriert. Ich sage, wie viele Entwickler würden wissen, dass diese Liste existiert, bis sie gehackt werden?
Ich dachte daran, ein Testprogramm zu schreiben, aber ich bin faul... wenn Sie meinen Code verstehen, können Sie leicht Ihren eigenen schreiben. Ich schlage vor, dass Sie Java-Instrumentierung oder Reflection verwenden.
und Remote-Code-Ausführung ist möglich, wenn einige Klassen im Ziel-Classpath vorhanden sind:
http://www.freebuf.com/vuls/126499.html
Dieses Programm dient NUR zu Bildungs- und Testzwecken. Verwenden Sie es nicht ohne Erlaubnis. Verwenden Sie es nicht für böswillige Zwecke. Der übliche Haftungsausschluss gilt, insbesondere die Tatsache, dass ich nicht haftbar bin für Schäden, die durch direkte oder indirekte Nutzung der von diesen Programmen bereitgestellten Informationen oder Funktionalitäten entstehen. Der Autor oder jeder Internetanbieter übernimmt KEINE Verantwortung für den Inhalt oder Missbrauch dieser Programme oder deren Ableitungen. Durch die Nutzung dieses Programms akzeptieren Sie die Tatsache, dass jeglicher Schaden (Datenverlust, Systemabsturz, Systemkompromittierung usw.), der durch die Nutzung dieser Programme verursacht wird, nicht in meiner Verantwortung liegt.