
PoC - Consegna di exploit tramite steganografia e Polyglots, CVE-2014-0282
di Charmve - yidazhang1 [at] gmail[dot]com, @Charmve @therealsaumil @amichael
Maggio 2021

Stegosploit crea un nuovo modo per codificare exploit browser "drive-by" e consegnarli attraverso file immagine. Questi payload sono indistinguibili con i mezzi attuali. Questo articolo discute due ampie tecniche sottostanti utilizzate per la consegna di exploit basati su immagini - Steganografia e Poliglotti. Gli exploit browser drive-by sono codificati steganograficamente in immagini JPG e PNG. Il file immagine risultante viene fuso con codice decoder HTML e Javascript, trasformandolo in un poliglotta HTML+Immagine. Il poliglotta ha l'aspetto e la sensazione di un'immagine, ma viene decodificato e attivato nel browser della vittima quando caricato.
Stegosploit comprende strumenti che permettono all'utente di analizzare immagini, codificare steganograficamente dati di exploit su file JPG e PNG, e trasformare le immagini codificate in file poliglotti che possono essere renderizzati come HTML o eseguiti come Javascript.
La versione corrente di Stegosploit è 0.2 e si trova nel Numero 0x08 del International Journal of Proof-of-Concept or Get The Fuck Out (Poc||GTFO). Nota che dovrai leggere fino alla fine dell'articolo in PoC||GTFO per trovare il suggerimento su come estrarre il toolkit.
README.mdcopying.txt - WTFPLstego/
image_layer_analysis.html - Analizza i layer di bit di un'immagineiterative_encoding.html - Codifica un exploit su un'immagine JPG o PNGimagedecoder.html - Decodifica un'immagine codificata steganograficamenteimagedecode.jshistogram.jsmd5.jsbase64.jsexploits/
exploits.js - Codice exploit predefinitodecoder_cve_2014_0282.html - Codice decoder + elementi HTML CVE-2014-0282jpegdump.c è scritto da Ralph Giles e può essere scaricato da https://svn.xiph.org/experimental/giles/jpegdump.c
In questo repo, importantemente, project-stegosploit è la parte chiave, che mostra come nascondere il Codice Exploit in un'immagine, per codificare/decodificare, e per eseguire il framework meterpreter.
Il codice exploit viene inserito all'interno dei pixel dell'immagine in modo che l'immagine contenga il codice exploit. IMAJS crea quindi un'immagine poliglotta che verrà letta come immagine e contiene un decoder che estrae ed esegue l'exploit javascript.
L'exploit che utilizzeremo è un exploit Use-after-free di Internet Explorer (CVE-2014-0282).
python -m http.server 8000
Punti salienti:
10.0.2.2:5000.html e .jpg) Refattorizzare CRC32.pm
Refattorizzare PNGDATA.pm
Refattorizzare html_in_jpg_ie.pl
Refattorizzare pngenum.pl
Server demo
/statictemplate_renderIl mio repository
Questo repository segue l'accordo open source GPL, assicurati di comprenderlo.
Vietiamo rigorosamente tutti gli atti che violano leggi nazionali attraverso questo programma, per favore usa questo programma entro i limiti legali.
Per impostazione predefinita, l'uso di questo elemento sarà considerato come il tuo accordo con le nostre regole. Assicurati di rispettare gli standard morali e legali.
Se non ti conformi, sarai responsabile delle conseguenze, e l'autore non si assumerà alcuna responsabilità!
[2] https://conference.hitb.org/hitbsecconf2015ams/sessions/stegosploit-hacking-with-pictures/
[5] https://stackoverflow.com/questions/4110964/how-does-heap-spray-attack-work
[6] https://www.youtube.com/watch?time_continue=1&v=6lYUtIZHlJA
[7] https://www.owasp.org/images/0/01/OWASL_IL_2010_Jan_-_Moshe_Ben_Abu_-_Advanced_Heapspray.pdf
[8] https://en.wikipedia.org/wiki/Heap_spraying
[9] https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
yidazhang1[#]gmail[dot]com
imajs/
html_in_jpg_ie.pl - Genera poliglotta JPG+HTML per IEhtml_in_jpg_ff.pl - Genera poliglotta JPG+HTML per Firefoxhtml_in_png.pl - Genera un poliglotta PNG+HTML (per qualsiasi browser)pngenum.pl - Enumera i chunk FourCC di un file PNGjpegdump.c - Enumera i segmenti di un file JPGCRC32.pmPNGDATA.pmproject-stegosploit/ - Parte Principale video mostra 1 | testo mostra 1
encoding/ - nucleo
iterative_encoding.html - Codifica steganografica del codice exploitimage_layer_analysis.htmlimagedevoder.htmldecode_and_run_cinput_withjs.htmlexploits/ - decoder.htmlimages/ - immagini codificate e originalipolyglots/ - lena_poly_demo.htmlscripts/ - Crea un poliglotta HTML+PNG polyglot_with_jpg.pytmp/ esegui --/tools/msf4$ ./msfconsole -r ./tmp/load_meterpreter.rc video mostra 2README.md - Mostra come usare questo project-stegosploit