Categories: Articoli

L’MP3 nasconde dei segreti

Diversi  possono essere i “contenitori” (i cosiddetti cover file) nei quali nascondere messaggi. Ottimi candidati sono i file audio nei diversi formati esistenti, nei quali, come vedremo, sarà possibile occultare testo, immagini e messaggi audio/video, senza alterare la qualità sonora dell’originale.
Qualunque sia il contenitore utilizzato e l’elemento che si vuole nascondere in esso, esistono alcuni aspetti comuni dai quali non è possibile prescindere. Ai primi posti si può annoverare sicuramente l’impercettibilità (undetectability), ovvero la capacità del metodo steganografico utilizzato di non far comprendere la presenza di informazioni nascoste nel file che si sta leggendo, osservando o ascoltando. Una caratteristica antitetica è la massima dimensione delle informazioni che si possono nascondere (embedding capacity o hiding rate nel caso di flussi audio) senza alterare apprezzabilmente la qualità del file contenitore. Sicurezza (security), una proprietà che si sovrappone, seppur non in toto, con il concetto di impercettibilità. Infatti, la sicurezza nel caso della steganografia è riferita in generale alla non conoscenza (non visibilità) di terzi della presenza di messaggi nascosti nel file cover e di riflesso l’incapacità di poter collegare il soggetto che sta inviando il file al file stesso. Non meno importante la proprietà della robustezza alla contraffazione (Tamper Resistance) con qualche sovrapposizione con sicurezza e impercettibilità in quanto sta a indicare la difficoltà, o la non facilità, del file cover utilizzato per nascondere il messaggio di essere craccato dall’utente. Un possibile ulteriore requisito vede la protezione dell’informazione nascosta crittografando la stessa prima di applicare la steganografia; in questo caso si parla di steganografia crittografica secondo lo schema di [figura #1].

FIG.1 – Nella foto sono riportate in maniera grafica le metodologie per la sicurezza digitale dei dati.

Alcune proprietà sono tra di loro  manifestamente antitetiche; per esempio fissato il tipo e la dimensione del file cover, non si può pensare di incrementare in maniera casuale l’embedding capacity poiché ciò determinerebbe una riduzione della sicurezza dovuta all’inevitabile degradazione del file che dovrà ospitare le informazioni nascoste. Analogamente alla steganografia sulle immagini o alla steganografia testuale, le tecniche utilizzate per nascondere le informazioni sono funzioni del formato audio che si vuole utilizzare come contenitore, in più uno stesso formato audio può essere oggetto di diversi algoritmi che si differenziano per le modalità con le quali l’informazione segreta viene a essere celata. Per tale motivo si considererà dapprima uno scenario generale per poi prendere in considerazione un formato particolare.

 

Metodi steganografici per file audio

La tendenza a nascondere informazioni all’interno di file audio deriva dalla particolare importanza che questa tipologia di file ha raggiunto oggigiorno come vettore di informazioni nella società umana (file musicali, podcast e trasmissioni in diretta). È proprio la diffusa disponibilità e la popolarità dei file audio a renderli idonei a fungere come vettore per il trasporto di informazioni nascoste. Tuttavia, l’azione del nascondere dati nei file audio è particolarmente impegnativa a causa della relativa sensibilità del sistema uditivo umano (HAS, Human Auditory System). Per tale motivo vengono sfruttate quelle che possiamo chiamare delle “zone d’ombra” dell’orecchio che nella pratica corrispondono a condizioni e proprietà sonore per le quali una loro alterazione permette di mascherare le inevitabili degradazioni del file stego (contenente le informazioni nascoste) rispetto al file cover (file originale). Il tipico esempio è la codifica degli MP3 i quali per ridurre la dimensione del file originale sfruttano, tra le altre cose, una deficienza dell’orecchio umano che consiste nell’incapacità di percepire suoni deboli che arrivano subito dopo – entro un limitato intervallo di tempo – un suono forte. Così come una certa tipologia di distorsioni ambientali e non che possono mascherare l’alterazione del file indotta dal nascondere dei messaggi al suo interno.

Un qualcosa di simile lo possiamo riscontrare nell’organo della vista con il fenomeno dell’abbagliamento avvenuto il quale non si riesce a distinguere con nitidezza ciò che ci circonda per un periodo di tempo più o meno prolungato. Una prima classificazione della steganografia audio riguarda il dominio di appartenenza dell’algoritmo utilizzato che può aversi nel dominio del tempo, nel dominio della trasformata (frequenza) e nel dominio dei codec. Tali algoritmi, definito il dominio di appartenenza, è possibile suddividerli ulteriormente in base al tipo di approccio in Pre-encoder embedding, quando il dato segreto è aggiunto allo streaming audio per poi far confluire entrambi nell’encoder; applicabile al dominio del tempo e della frequenza. L’approccio In-encoder embedding tipico del dominio dei codec nel quale lo streaming audio e il messaggio segreto confluiscono contemporaneamente nell’encoder originando il file (flusso) stego. Infine, l’approccio Post-encoder embedding nel quale il messaggio nascosto viene incorporato nel flusso audio già codificato, tipicamente in tecniche nel dominio del tempo.

 

File audio: alcune tecniche

La Echo Data Hiding [figura #2] è una tecnica nel dominio del tempo che prevede, come il nome suggerisce, che le informazioni da nascondere vengano inserite aggiungendo un’eco al file audio lavorando su parametri come la velocità di decadimento, ampiezza iniziale e ritardo: l’ampiezza iniziale viene usata per determinare i dati del suono originale, il tempo di decadimento per comprendere come l’eco debba e possa essere aggiunta e il ritardo per capire la massima distanza tra suono originale ed eco.

 

FIG.2 – In figura il flusso dati della steganografia audio in base alla tecnica Echo Data Hiding. Altre tecniche note: Silence Intervals, Phase Coding, Amplitude Coding, Tone Insertion e Cepstral Domain.

 

La capacità di occultamento può arrivare al più a 50bps (bit per secondo) di contro ha elevata resilienza anche nel caso venga applicato una codifica di tipo lossy (a perdita di dati). Una tecnica nel dominio della frequenza  considera un file, o segnale, audio come un insieme di frequenze e manipola questi “pacchetti di frequenze” per nascondere i dati. Il principio è simile al formato MP3 ma riferito alle frequenze laddove l’orecchio umano non è in grado di percepire una frequenza “debole” nelle vicinanze di una frequenza “forte”. Allora una opportuna alterazione della frequenza “più debole” ha notevoli chance di rimanere non rilevata poiché mascherata dalla vicina presenza di una frequenza “forte”. Una tecnica che sfrutta queste caratteristiche è la Spread Spectrum nella quale l’informazione da nascondere è codificata e distribuita negli spettri di frequenze disponibili. La tecnica è mutuata da un concetto proveniente dalle comunicazioni dei dati al fine di garantire un corretto recupero anche in canali rumorosi. Due le versioni utilizzabili, la DSSS (Direct-Sequence Spread Spectrum), applicata a file MP3 e WAV, e la FHSS (Frequency Hopping Spread Spectrum). La capacità di occultamento è tra le più basse delle tecniche disponibili, al più una decina di bps. La scelta dell’una o dell’altra tecnica e del dominio di appartenenza è funzione del campo di applicazione. In caso di comunicazione in tempo reale (dal vivo) l’incorporamento del messaggio non può che avvenire nel momento in cui si parla al microfono ovvero nel momento in cui il segnale viene trattato attraverso uno dei tre approcci riportati in precedenza. Va da sé che il segnale ricevuto dall’ascoltatore sarà diverso dal segnale trasmesso dall’oratore a causa dell’operazione di information hiding.

 

Coding LSB

Conosciuto anche con il termine di Low-bit encoding, il coding LSB (Least Significant Bit) è una tecnica di information hiding nel dominio del tempo. Nella sua “forma storica”, si caratterizza dalla sostituzione di ogni bit dell’informazione da nascondere nel bit meno significativo del file cover che poi originerà il file stego come riportato schematicamente in [figura #3].

FIG.3 – 1 bit del campione originale è sovrascritto da 1 bit del messaggio nascosto.

Questa sostituzione non apporta nessuna variazione significativa nella qualità audio o quanto meno nessuna variazione in grado di essere percepita dal sistema uditivo umano (HAS). Un file audio ha un fissato numero di bit per campione singolo e in genere una elevata frequenza di campionamento. Questo aspetto sovraintende pertanto un’elevata capacità di nascondere dati. Per esempio un file audio campionato a 16kHz (16.000 campioni al secondo) sostituendo il solo bit meno significativo (LSB) in 16.000 campioni per ogni secondo, potrà nascondere al più 16kbps (kilobit per secondo) di informazioni. A fronte della semplicità e facilità di nascondere un elevato quantitativo di informazioni (di fatto è la tecnica con i valori più alti) di contro c’è la facilità di estrazione e distruzione. Un formato al quale è possibile applicare agevolmente questa tecnica è il wav.

 

StegoLSB e WavSteg

Per il suo principio di funzionamento, la tecnica Coding LSB è applicabile non solo ai file audio ma anche ai file delle immagini in formato RGB (Red GreenBlu) come bmp o png. Il principio rimane lo stesso riportato in [figura #3]; per ogni colore del canale in ogni pixel dell’immagine, verrà sovrascritto il bit LSB dei dati che vogliamo occultare. Un programma in grado di permetterci di fare prove su immagini e file audio è stego-lsb che in realtà richiama come argomento altri programmi. Per la sua installazione assicuriamoci della presenza del tool pip3, eventualmente si proceda alla sua installazione selezionando python3-pip dal gestore dei pacchetti della distribuzione in uso; nel nostro caso è stato utilizzato dnf install python3-pip sulla distribuzione ROSA Linux. A questo punto il comando impartito da utente non amministratore pip3 install stego-lsb installerà il tool per l’utente.
Utilizzare WavSteg è alquanto semplice, per esempio:

stegolsb wavsteg -h -i file_
Esempio.wav -s Steganografia_
Audio.odt -o file_stego.wav -n 1

 

laddove l’opzione -h sta per hide (nascondere), -i per indicare percorso e file cover, -s per il percorso al file che si vuole occultare, -o per il nome e percorso del file stego e infine -n per il numero di bit LSB da utilizzare per ogni campione, di default è pari a 2.
Ma cos’è è stato nascosto nel file wav? Il comando che segue ce lo rivela:

stegolsb wavsteg -r -i file_stego.wav -o file_output -n 1 -b 50753

 

dove l’opzione -r sta per recupero, con -i si indica il percorso al file stego, con -o le informazioni/file da recuperare, con -n i bit LSB usati e con -b l’esatto numero di bit del documento originale. In definitiva l’informazione occultata nel file wav era il formato odt (LibreOffice) di ciò che state leggendo in questo momento [figura#4]! Naturalmente attraverso una rivista non è possibile dimostrare l’impercettibilità audio tra i due file. Provate per credere.

FIG.4 – Occultamento ed estrazione da formato wav.

 

Contromisure

Ne esistono diverse metodologie, basate, per esempio, su attacchi statistici con tool come Aletheia oppure, nei casi meno complessi, previo uso di programmi come StegDetect,  JPHide. Ulteriori tecniche possono far uso del software SonicVisualizer  in grado di analizzare il contenuto di file audio e di riflesso ritornare d’aiuto nella rivelazione dell’occultamento di informazioni. Anche binwalk, utilizzato per la ricerca binari nei file, permette di individuare informazioni nascoste in immagini e file audio, ma questo poi è un altro discorso!

 

 

Leggi anche: “Messaggi segreti a prova di spia


Hai trovato questo articolo interessante? Seguici su Facebook , Twitter, Mastodon

hj_backdoor

Share
Published by
hj_backdoor

Recent Posts

KDE Neon 6 è disponibile!

KDE neon è stato aggiornato con KDE Frameworks 6, Plasma 6 e con tutte le…

4 ore ago

Malware per il mobile banking in crescita

Secondo Kaspersky negli ultimi 12  mesi si è registrato un aumento significativo di malware per…

2 giorni ago

L’aspiratutto del Web!

Preleva i video da YouTube, Soundcloud, Vimeo, Dailymotion… e ne estrae l’audio. Ecco come fare

4 giorni ago

Blink presenta una videocamera compatta per uso interno ed esterno

La nuova Blink Mini 2 è dotata di notifiche intelligenti abilitate alla visione computerizzata, tra…

6 giorni ago

CrowdStrike presenta una nuova ed evoluta soluzione di threat hunting per Microsoft Azure

Durante la RSA Conference 2024, evento di rilievo nel settore della sicurezza informatica, CrowdStrike ha…

1 settimana ago

Remote control e WinRAR sotto attacco

L’ultima ricerca di Kaspersky ha rivelato che gli attori delle Advanced Persistent Threat (APT) stanno…

1 settimana ago

Abbonati ad Hackerjournal per un anno a 33,90 € con digitale in omaggio anziché 46,90 €!

CLICCA QUI PER ABBONARTI!