Criptare un messaggio in un immagine
Da Linux@P2P Forum Italia.
A molti sarà già capitato di vedere qualche film in tv in cui un provetto hacker o esperto informtico ci ha affascinato nascondendo i propi segretissimi documenti all'interno di un file multimediale o di un'immagine. In realtà la tecnica posta in essere (chiamata steganografia) è alla portata di tutti. Specialmente su linux grazie a programmi come snow, steghide, outguess ogniuno di noi potrà "giocare all'esperto informatico".
Di norma uso steghide quindi in questa guida farò riferimento a questo programma che ci permetterà di nascondere messaggi dentro altri file (apparentemente immodificati). Preciso inoltre che per questa guida userò come distro di riferimento una fiammante Ubuntu 7.10 ma presumo che volendo risulterà molto semplice adattarla ad altre distro.
All'inizio di ogni comando troverete uno di questi due simboli: $ (dollaro) e # (cancelletto). La presenza di $ indica che il comando può essere eseguito anche come normale utente, mentre il simbolo # indica che il comando che lo segue deve essere eseguito con privilegi di amministratore (root). Da utenti normali è possibile divenire root in questo modo: da terminale, si digiti:
$ su oppure, su Ubuntu e varianti: $ sudo su Verrà richiesta la password di amministratore (su Ubuntu e varianti quella dell'utente): per motivi di sicurezza e riservatezza non verrà mostrata durante la digitazione. A questo punto (si noti # al posto di $, segno che ora si è root) sarà possibile lanciare il comando: # comando NOTA: per Ubuntu e varianti, nel caso si necessiti di eseguire solo pochi comandi, esiste un'alternativa: basta far precedere il comando da eseguire da "sudo", in questo modo: $ sudo comando Per altre indicazioni sulle convenzioni della linea di comando vedere "introduzione all'uso della shell" | |
Indice |
Installazione del software necessario
Prima di tutto bisogna occuparsi dell installazione del programma. per far questo ci si puo avvalere del gestore dei pacchetti della rispettiva distro che stiamo usando (per vedere qualicomandi usare fare riferimento a link questa guida). In questo caso ci si avvalerà del gestore dei pacchetti APT
# apt-get install steghide
Criptare il messaggio nell'immagine
Scegliere un immagine contenitore
Installato il programma bisognerà innanzitutto scelgiere l immagine contenitore.l immagine contenitore deve avere obbligatoriamente una delle seguenti estensioni:
- JPEG
- BMP
- WAV
- AU
altra precisazione doverosa è che le immagini o i file audio possono contenere determinati kb (quindi non infiniti) e per capire di quanti kb dispone una determinata immagine o file audio basta dare il comando:
# steghide info IMMAGINE_CONTENITORE.jpg
e si riceverà un output simile a questo:
# steghide info IMMAGINE_CONTENITORE.jpg
"IMMAGINE_CONTENITORE.jpg":
format: jpeg
capacity: 3.5 KB
Try to get information about embedded data? (y/n)
in questo caso si risponderà di no in quanto sappiamo gai che il file immagine non ha niente di nascosto
Inserire il file nell immagine
N.B. In questo caso verrà utilizzato un messaggio di testo con estensione .txt .
# steghide embed -ef MESSAGGIO.txt -cf IMMAGINE_CONTENITORE.jpg
nel caso non si volesse modificare l immagine originale è possibile far creare al programma un nuovo file cosi da lasciare integri i due file aggiungendo l opzione -sf come nell esempio sottostante:
# steghide embed -ef MESSAGGIO.txt -cf IMMAGINE_CONTENITORE.jpg -sf NUOVO_FILE.jpg
in mancanza dell opzione -p il programma chiederà di inserire la passphrase (parola d'ordine) quindi inserire la password che nn apparirà a video e ridigitarla successivamente per confermare la passphrase scelta.
N.B. la passphrase per essere il più possibile robusta dovrà avere una combinazione di lettere,numeri,maiuscole,miniscole e punteggiatura di almeno 8 elementi
Decifrare il contenuto del file
Per decifrare o estrarre l'immagine dal file bastera semplicemente fornire al destinatario del file se diverso da noi stessi la password del file e aprendo una shell/Terminale/Konsole digitare il comando:
# steghide extract -sf IMMAGINE_CONTENITORE.jpg
verrà richiesta la passphrase e si troverà un file con il testo, in questo caso, con il messaggio stenografato nella directory da cui si è decifrato il file.
nel caso si volesse cambiare il nome al file decifrato basterà aggiungere l opzione -xf come nell esempio sottostante:
# steghide extract -sf IMMAGINE_CONTENITORE.jpg -xf segreto.txt
cosi si troverà un file chiamata segreto.txt nella directory in cui si sta lavorando.
