giovedì 29 settembre 2016

Steganalisi, ossia trovare messaggi nascosti con la Steganografia

https://hacktips.it

stego
La Steganalisi è il processo inverso della Steganografia. L’obiettivo della steganalisi è determinare se un mezzo o file contiene un messaggio e nel caso l’esito sia positivo, trovare quali sono le informazioni nascoste. Prendendo spunto dalla lezione del prof. Battiato, si hanno diversi tipi di attacchi:

  • stego only: l’attaccante riesce ad intercettare il frammento stego e lo analizza;
  • stego attack: il file originale viene comparato con il file steganografato e vengono rilevate le differenze;
  • cover stego attack: l’attaccante riesce ad intercettare il frammento stego e sa quale cover è stato usato per crearlo;
  • chosen stego attack: il software e l’oggetto stenografato sono conosciuti e viene quindi trovato il messaggio nascosto;
  • manipulating the stego/cover data: l’attaccante può manipolare i frammenti stego/il cover.
Il cover è quindi il mezzo con cui viene nascosto il messaggio segreto; i più utilizzati e interessanti da analizzare sono le immagini, i file audio e video.
Le tecniche più comuni per nascondere i messaggi sono:
  • aggiungere il messaggio alla fine di quel file;
  • nascondere il messaggio nella porzione dell’header non utilizzata (solitamente all’inizio);
  • usufruire di un algoritmo che disperde il messaggio all’interno del file. Il più famoso è la Modifica del LSB (Least Significant Bit).
I metodi principali per trovare un file steganografato sono quindi:
  1. Rilevazione visuale consiste nell’osservare i file immagine come Jpeg, Bmp, Gif e trovare le differenze;
  2. Rilevazione sonora nei file audio come Wav, Mpeg, etc;
  3. Rilevazione statistica (analizzando LSB) o analisi dell’istogramma;
  4. Rilevazione strutturale osservando le proprietà come il peso del file e il checksum.
Esempio di rilevazione strutturale base
La rilevazione strutturale cerca quindi di scoprire se in un file immagine sono presenti informazioni nascoste e prova ad estrarle. In rete ci sono molto software per verificarlo e anche distribuzioni linux specifiche per l’analisi forense (come Deft Linux, Cyborg o Caine).
Steganografia: Con StegoSuite inserisco il messaggio nascosto in un immagine Jpeg. Per farlo basta cliccare suFile->Open, inserire il messaggio che si vuole, proteggerlo opzionalmente con password e cliccare su Embed
screenshot-from-2016-09-21-17-51-12

Steganalisi: Ovviamente per estrarre il messaggio si può utilizzare lo stesso software, ma questo è possibile solo se l’attaccante sa quale è. Nel caso non si sapesse, è molto più difficile trovare l’informazione nascosta.
Per prima cosa, confronto le due immagini per vedere le differenze
screenshot-from-2016-09-21-18-05-02
A sinistra l’immagine originale, a destra quella steganografata
I comandi che ho eseguito sono:
  • file: determina il tipodi file e le caratteristiche;
  • identify: descrive le forme e le caratteristiche di un file immagine;
  • exiv2: è un software di manipolazione dei metadati, il quale permette anche la stampa degli stessi.
Come si può ovviamente notare le due immagini sono cambiate, soprattutto nel peso: mentre la prima pesa 80Kb, quella steganografata pesa circa la metà.
Un software che può venirci incontro per verificare se un immagine è steganografata è stegdetected (nel link trovate le informazioni su come installarlo su kali linux). Funziona solo con Jpeg, quindi nel nostro caso va benissimo:
root@kali:~/Desktop# stegdetect steganografata.jpg 
steganografata.jpg : f5(***)
E come si può vedere è riuscito a capire con che tecnica steganografica il file è stato creato. “Rompere” questo algoritmo non penso sia nelle mie capacità, ma vi lascio un paper nel quale viene spiegato come farloteoricamente.

Conclusioni

Per trovare le informazioni nascoste bisogna riuscire a trovare il software con cui è stata steganografato il file, in modo da riuscire poi ad utilizzarlo per effettuare l’operazione inversa. Con molti file si potrebbe trovare un pattern simile o una firma del programma ed utilizzarlo in modo inverso.  Ammetto di non aver mai approfondito l’argomento, ma dopo questo articolo penso che cercherò di compiere analisi complete con immagini e file audio e pubblicarle. Per chi volesse già approfondire ho trovato questo sito contenente alcune importati pubblicazioni in merito, mentre una lista dei principali software steganografici si può trovare qui.

Nessun commento:

Posta un commento