
Intercettazione video remota utilizzando una piattaforma software-defined radio
Questo progetto è un toolkit software per intercettare da remoto monitor video utilizzando un ricevitore Software Defined Radio (SDR). Sfrutta le emanazioni compromettenti provenienti dai cavi che trasportano segnali video.
Il video raster viene solitamente trasmesso una riga di pixel alla volta, codificato come una corrente variabile. Questo genera un'onda elettromagnetica che può essere captata da un ricevitore SDR. Il software mappa la forza del campo ricevuto di un pixel in una tonalità di grigio in tempo reale. Questo forma una stima a falsi colori del segnale video originale.
Il toolkit utilizza hardware standard non modificato, il che riduce i costi e aumenta la mobilità rispetto alle soluzioni esistenti. Consente un'ulteriore post-elaborazione che migliora il rapporto segnale/rumore. L'attaccante non ha bisogno di avere una conoscenza preliminare del display video target. Tutti i parametri come risoluzione e frequenza di aggiornamento vengono stimati con l'aiuto del software.
Il software è composto da una libreria scritta in C, una raccolta di plug-in per vari front-end Software Defined Radio (SDR) e un'interfaccia grafica (GUI) basata su Java. È un'applicazione multipiattaforma, con tutte le librerie native precompilate e impacchettate in un singolo file jar Java.
Fai doppio clic sul file JTempestSDR.jar per avviarlo. Se non si avvia, dovrai ricompilare il progetto.
Questo è il wrapper Java e la GUI. Compila tutti i progetti e i plugin supportati, inclusa la stessa GUI Java. Entra nella cartella JavaGUI e digita
make all
Se non riesce a trovare "jni.h", dovresti eseguire uno dei seguenti comandi:
make all JAVA_HOME=path_to_jdk_installation
Su Windows 8 x64 potrebbe essere simile a
make all JAVA_HOME=C:/PROGRA~2/Java/jdk1.7.0_45
Per forzare la compilazione per X64 o X32 (nel caso il tuo compilatore lo supporti), fai quanto segue
make all JAVA_HOME=C:/PROGRA~2/Java/jdk1.7.0_45 ARCHNAME=X64
Su Ubuntu con openjdk potrebbe essere simile a
make all JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
Nota: questo compilerà anche i plugin. Alcuni di essi richiedono librerie aggiuntive! Puoi disabilitare la compilazione dei plugin modificando il Makefile in JavaSDR.
Devi avere MinGW installato.
Su Windows, questo compilerà anche il plugin Mirics SDR per il dongle USB SDR FlexiTV™ MSi3101. Devi prima installare il driver SDR da http://www.mirics.com/
Per compilare il plugin, vai nella cartella del plugin e digita
make all MIRICS_HOME=path_to_mirics_installation
Su Windows 8 x64 potrebbe essere simile a
make all MIRICS_HOME=C:/PROGRA~1/MiricsSDR
Se utilizzi il plugin Mirics, assicurati che mir_sdr_api.dll sia nel percorso di libreria (o nella stessa directory dell'eseguibile). Puoi trovare la dll in C:/Program Files/MiricsSDR/API/x86 o C:/Program Files/MiricsSDR/API/x64 a seconda dell'architettura.
Se non intendi usare il dongle Mirics, puoi saltare questo passaggio modificando il Makefile nella directory JavaGUI. Rimuovi TSDRPlugin_Mirics dalla riga 89, cambiandolo da
PLUGINS += TSDRPlugin_Mirics TSDRPlugin_ExtIO
a
PLUGINS += TSDRPlugin_ExtIO
Su Linux e OS X, compilando la GUI verrà compilato anche il driver UHD, quindi dovrai avere installati UHD e le corrispondenti librerie boost (UHD le installerà automaticamente). Se non vuoi i driver UHD, puoi saltarne la compilazione rimuovendo la riga 91 per Linux e la riga 93 per OS X dal Makefile nella directory JavaGUI. Ecco come appaiono queste righe di default:
PLUGINS += TSDRPlugin_UHD
Tutti i progetti possono essere compilati sia con Eclipse che con make.
Entra nella cartella e digita
make all
Questo produrrà la libreria che può essere trovata nella sottodirectory bin. Le intestazioni necessarie per interfacciarsi con essa si trovano in src/include.
Entra nella directory di un plugin e digita
make all
Dovrebbe funzionare a meno che non ci sia qualcosa di specifico per il plugin stesso. In tal caso, cerca un README.
Le diverse cartelle contengono i diversi sottoprogetti. La cartella TempestSDR contiene la libreria principale in C. Il progetto mira a essere multipiattaforma con supporto plugin per front-end SDR in diverse cartelle.
Il progetto viene compilato con Eclipse con il plugin CDT (ma non è necessario). Attualmente supporta Windows, Linux e OS X. Alcuni plugin frontend potrebbero non essere multipiattaforma. Devi anche avere installato un Java Development Kit (JDK).
Devi avere MinGW installato e i comandi gcc e make devono essere nel tuo PATH. Anche javac e javah devono essere nel PATH.
Da annunciare a breve.