Domanda Sniffing e Analisi GSM con RTL-SDR

Stato
Discussione chiusa ad ulteriori risposte.

insidehackers

Utente Gold
28 Giugno 2013
641
30
222
318
Disclaimer: Questa guida è solo a scopo informativo non vogliamo incitare nessuno a violare la privacy altrui
In questa guida vediamo come intercetare alcuni paccheti che viaggiamo nella rete GSM, questi pacchetti non contengono dati riguardanti sms o chiamate cellulari ma sono solo la base per attacchi più complessi...
Vediamo alcune cose per capire meglio cosa stiamo per vedere

Broadcast Channels (BCH)

Un Broadcast Channel(BCH) è un canale di downlink in un sistema GSM che viene utilizzato dalle stazioni radio base(BTS) per fornire informazioni alle stazioni mobili. La stazione mobile ha bisogno di queste informazioni per trovare una rete, per la sincronizzazione con esso e la connessione alla stessa.
Ci sono tre tipi di canali di trasmissione:
  • Broadcast Control Channel (BCCH)
  • Synchronization Channel (SCH)
  • Frequency Correction Channel (FCCH)


Broadcast Control Channels (BCCH)
E' un canale di trasmissione logico utilizzato dalla stazione base in una rete GSM per inviare informazioni circa l'identità della rete . Queste informazioni sono utilizzate da una stazione mobile ad esempio un cellulare per ottenere l'accesso alla rete .
Queste informazioni includono il codice di rete mobile (Mobile Network Code o MNC) , il codice di posizione (Location Area Code o LAC ) e un elenco di frequenze usate dalle cellule vicini o (BA: BCCH Allocation List) .
Il Broadcast Control Channel trasporta le seguenti informazioni:
  • Location Area Identity (LAI).
  • Lista delle celle vicine che possono essere utilizzate dalla stazione mobile.
  • Lista di frequenze usate dalla stazione mobile.
  • L'indentificativo della cella.
  • Indicatore controllo potenza.
  • Discontinuous Transmission (DTX).
  • Controllo Accesso (le chiamate di emergenza , il blocco delle chiamate ecc...).


Mobile Network Code (MNC)
Il codice di rete mobile (MNC) è un numero univoco a 2 cifre per identificare una rete di telefonia mobile . E 'utilizzato all'interno della International Mobile Subcriber Identity (IMSI) per identificare in modo univoco gli abbonati mobili e all'interno di una Location Area Identification(LAI) per identificare in modo univoco un area di posizione all'interno della rete di telefonia mobile .
Ad esempio in italia il MNC di TIM è 01, oppure vodafon che è 10
Potete consultare la lista completa qui: http://www.mcc-mnc.com/



Mobile Country Code (MCC)
Il Mobile Country Code (MCC) è un numero unico a 3 cifre per identificare un paese. E 'utilizzato all'interno della International Mobile Subcriber Identity (IMSI), esso compone le prime 3 cifre del codice IMSI, serve per identificare in modo univoco gli abbonati mobili all'interno di una Location Area Identity (LAI) e per identificare in modo univoco un area di posizione all'interno di una rete mobile .
Esso e solitamente usato in combinazione con il Mobile Network Code(MNC) detta coppia "MCC/MNC".
Lista codici MCC:
https://it.wikipedia.org/wiki/Mobile_Country_Code



International Mobile Subscriber Identity (IMSI)
L'International Mobile Subscriber Identity (IMSI) è un numero unico standardizzato a livello internazionale per identificare un abbonato mobile . La IMSI è definito nella raccomandazione ITU-T E.212 . La IMSI è costituito dal Mobile Country Code(MCC) , un Mobile Network Code(MNC) e dal numero di identificazione della stazione mobile (MSIN o Mobile Station Identification Number).
Struttura dell'IMSI
what-is-imsi-number.jpg





Location Area Identity (LAI)
La Location Area Identity(LAI) identifica in modo univoco l'Area di una Località (Location Area o LA) all'interno di una rete di telefonia mobile . Consiste nell'insieme del Mobile Country Code (MCC) , il Codice di Rete Mobile (MNC) e la Location Area Code(LAC) .
La LAI è utilizzato per tenere traccia degli utenti di telefonia mobile nella rete. Questo record è conservato in una banca dati come il Visitor Location Register (VLR) nella rete GSM .



Location Area Code (LAC)
L'area di servizio di una rete cellulare è generalmente composta da aree, Le aree sono composte da una o piu celle radio. Ad ogni area viene assegnato un numero univoco all'interno della rete , la Location Area Code (LAC).
Questo codice viene utilizzato come riferimento unico per la posizione di un abbonato mobile ed è necessario a l'abbonato nel caso di una chiamata in arrivo.
La LAC forma una parte della Location Area Identifier(LAI) e viene trasmesso in broadcast tramite il Boradcast Control Channel(BCCH) .



Synchronisation Channel (SCH)
Il canale di sincronizzazione (SCH) è un canale di trasmissione downlink delle stazioni base di una rete GSM . L'SCH fornisce informazioni alle stazioni mobili necessari per la ricerca di stazioni base , identificarli e sincronizzarsi con loro.


Frequency Correction Channel (FCCH)
Il Frequency Correction Channel è un canale di trasmissione utilizzato dalle stazioni base GSM . Esso fornisce un tono unico di 67.7 kHz per stazioni mobili . Questo tono viene utilizzato per sincronizzare il clock del ricevitore mobile con la stazione base. Ciò è necessario per estrarre correttamente i dati.


Common Control Channel (CCCH)
Il Common Control Channel (CCCH) è responsabile per il trasferimento di informazioni di controllo tra tutti i cellulari e le BTS. Ciò è necessario per l'attuazione del "call origination" e funzioni di "call paging". Si compone dei seguenti elementi:
  1. Random Access Channel (RACH) Utilizzato dal cellulare quando si richiede l'accesso al sistema. Questo si verifica quando il dispositivo mobile avvia una chiamata o risponde a una pagina.
  2. Paging Channel (PCH) utilizzato dal BTS per chiamare il MS, (la richiesta può essere eseguita da un IMSI, TMSI o IMEI).
  3. Access Grant Control Channel (AGCH) utilizzato dalla BTS per assegnare un canale di controllo dedicato ad un master in risposta ad un messaggio di accesso ricevuti sul Random Access Channel. La MS si sposterà sul canale dedicato al fine di procedere sia con una configurazione chiamata, risposta ad un messaggio di allarme, Location Area Update o Short Message Service.
  4. Cell Broadcast Channel (CBCH) Questo canale è utilizzato per trasmettere messaggi in broadcast a tutti i MS all'interno di una cella. Il CBCH utilizza un canale di controllo dedicato per inviare i suoi messaggi, ma è considerato un canale comune perché tutti i cellulari nella cella possono ricevere i messaggi.
I MS attivi devono costantemente monitorare il BCCH e il CCCH. Il CCCH sarà trasmesso sulla portante RF con il BCCH.




Passiamo alla pratica...

Installazione del software
Dopo questa introduzione piena di teoria passiamo alla pratica, innanzitutto dobbiamo procurarci l'hardware.
L'hardware in questione può essere una chiavetta usb RTL-SDR acquistabile su amazon al prezzo di 20 dollari
http://www.amazon.com/NooElec-RTL-SDR-RTL2832U-Software-Packages/dp/B008S7AVTC
Prendiamo il nostro pc con kali linux installato (preferibilmente no VM) e passiamo all'installazione di gr-gsm

Codice:
sudo apt-get install git python-pip
Codice:
sudo pip install PyBOMBS

configuriamo PyBOMBS:
Codice:
sudo pybombs prefix init /usr/local -a default_prx
sudo pybombs config default_prefix default_prx

Scarichiamo tutto il necessario:
Codice:
sudo pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git
sudo pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git

Ed infine installiamo tutto:
Codice:
sudo pybombs install gr-gsm
al termine dell'installazione non dimentichiamo di digitare il comando seguente per aggiornare la cache
Codice:
ldconfig

Ora creiamo il file
Codice:
nano ~/.gnuradio/config.conf
Al suo interno scriviamo
Codice:
[grc]
local_blocks_path=/usr/local/share/gnuradio/grc/blocks


Ora possiamo avviare il tool semplicemente digitando da terminale
Codice:
airprobe_rtlsdr.py
nel caso non dovesse funzionare potete eseguire
Codice:
gnuradio-companion
e caricare il file .grc (grgsm_livemon.grc)

A questo punto apparira una finestra di questo tipo

gsm.png


Vediamo in alto alcuni settaggi, il PPM è un valore di correzione per la frequenza che verra lasciato a zero, il Gain è il guadagno del ricevitore e va settato a 30 o massimo 35 se il segnale e debole invece, se il segnale e forte il gain va lasciato basso più o meno sui 20-15, ok ora la parte più importante la frequenza, per trovare la frequenza possiamo fare una ricerca manuale aumentandola di volta in volta finche non ci troviamo di fronte ad un segnale di questo tipo

GSMNonHoppingWaterfall.png

Traccia audio di esempio del segnale

Affianchiamo il terminale alla finestra una volta trovato il segnale, cambiamo il valore della frequenza di -/+0.1Mhz finche non riusciamo a vedere i dati ricevuti sul terminale
gr-gsm.png


Ora avviamo wireshark, selezioniamo l'interfaccia Loopback:lo e mettiamo come filtro gmstap

wshark-1.PNG




Link base:
http://www.rtl-sdr.com

Buon divertimento a tutti :)
 
Ciao Ragazzi, sono nuovo del forum e non mi intendo di informatica. Vorrei chiedervi, secondo voi, qual'è il più sicuro sistema di pagamento, tramite blockchain o sim card?
 
Disclaimer: Questa guida è solo a scopo informativo non vogliamo incitare nessuno a violare la privacy altrui
In questa guida vediamo come intercetare alcuni paccheti che viaggiamo nella rete GSM, questi pacchetti non contengono dati riguardanti sms o chiamate cellulari ma sono solo la base per attacchi più complessi...
Vediamo alcune cose per capire meglio cosa stiamo per vedere

Broadcast Channels (BCH)

Un Broadcast Channel(BCH) è un canale di downlink in un sistema GSM che viene utilizzato dalle stazioni radio base(BTS) per fornire informazioni alle stazioni mobili. La stazione mobile ha bisogno di queste informazioni per trovare una rete, per la sincronizzazione con esso e la connessione alla stessa.
Ci sono tre tipi di canali di trasmissione:
  • Broadcast Control Channel (BCCH)
  • Synchronization Channel (SCH)
  • Frequency Correction Channel (FCCH)


Broadcast Control Channels (BCCH)
E' un canale di trasmissione logico utilizzato dalla stazione base in una rete GSM per inviare informazioni circa l'identità della rete . Queste informazioni sono utilizzate da una stazione mobile ad esempio un cellulare per ottenere l'accesso alla rete .
Queste informazioni includono il codice di rete mobile (Mobile Network Code o MNC) , il codice di posizione (Location Area Code o LAC ) e un elenco di frequenze usate dalle cellule vicini o (BA: BCCH Allocation List) .
Il Broadcast Control Channel trasporta le seguenti informazioni:
  • Location Area Identity (LAI).
  • Lista delle celle vicine che possono essere utilizzate dalla stazione mobile.
  • Lista di frequenze usate dalla stazione mobile.
  • L'indentificativo della cella.
  • Indicatore controllo potenza.
  • Discontinuous Transmission (DTX).
  • Controllo Accesso (le chiamate di emergenza , il blocco delle chiamate ecc...).


Mobile Network Code (MNC)
Il codice di rete mobile (MNC) è un numero univoco a 2 cifre per identificare una rete di telefonia mobile . E 'utilizzato all'interno della International Mobile Subcriber Identity (IMSI) per identificare in modo univoco gli abbonati mobili e all'interno di una Location Area Identification(LAI) per identificare in modo univoco un area di posizione all'interno della rete di telefonia mobile .
Ad esempio in italia il MNC di TIM è 01, oppure vodafon che è 10
Potete consultare la lista completa qui: http://www.mcc-mnc.com/



Mobile Country Code (MCC)
Il Mobile Country Code (MCC) è un numero unico a 3 cifre per identificare un paese. E 'utilizzato all'interno della International Mobile Subcriber Identity (IMSI), esso compone le prime 3 cifre del codice IMSI, serve per identificare in modo univoco gli abbonati mobili all'interno di una Location Area Identity (LAI) e per identificare in modo univoco un area di posizione all'interno di una rete mobile .
Esso e solitamente usato in combinazione con il Mobile Network Code(MNC) detta coppia "MCC/MNC".
Lista codici MCC:
https://it.wikipedia.org/wiki/Mobile_Country_Code



International Mobile Subscriber Identity (IMSI)
L'International Mobile Subscriber Identity (IMSI) è un numero unico standardizzato a livello internazionale per identificare un abbonato mobile . La IMSI è definito nella raccomandazione ITU-T E.212 . La IMSI è costituito dal Mobile Country Code(MCC) , un Mobile Network Code(MNC) e dal numero di identificazione della stazione mobile (MSIN o Mobile Station Identification Number).
Struttura dell'IMSI
what-is-imsi-number.jpg





Location Area Identity (LAI)
La Location Area Identity(LAI) identifica in modo univoco l'Area di una Località (Location Area o LA) all'interno di una rete di telefonia mobile . Consiste nell'insieme del Mobile Country Code (MCC) , il Codice di Rete Mobile (MNC) e la Location Area Code(LAC) .
La LAI è utilizzato per tenere traccia degli utenti di telefonia mobile nella rete. Questo record è conservato in una banca dati come il Visitor Location Register (VLR) nella rete GSM .



Location Area Code (LAC)
L'area di servizio di una rete cellulare è generalmente composta da aree, Le aree sono composte da una o piu celle radio. Ad ogni area viene assegnato un numero univoco all'interno della rete , la Location Area Code (LAC).
Questo codice viene utilizzato come riferimento unico per la posizione di un abbonato mobile ed è necessario a l'abbonato nel caso di una chiamata in arrivo.
La LAC forma una parte della Location Area Identifier(LAI) e viene trasmesso in broadcast tramite il Boradcast Control Channel(BCCH) .



Synchronisation Channel (SCH)
Il canale di sincronizzazione (SCH) è un canale di trasmissione downlink delle stazioni base di una rete GSM . L'SCH fornisce informazioni alle stazioni mobili necessari per la ricerca di stazioni base , identificarli e sincronizzarsi con loro.


Frequency Correction Channel (FCCH)
Il Frequency Correction Channel è un canale di trasmissione utilizzato dalle stazioni base GSM . Esso fornisce un tono unico di 67.7 kHz per stazioni mobili . Questo tono viene utilizzato per sincronizzare il clock del ricevitore mobile con la stazione base. Ciò è necessario per estrarre correttamente i dati.


Common Control Channel (CCCH)
Il Common Control Channel (CCCH) è responsabile per il trasferimento di informazioni di controllo tra tutti i cellulari e le BTS. Ciò è necessario per l'attuazione del "call origination" e funzioni di "call paging". Si compone dei seguenti elementi:
  1. Random Access Channel (RACH) Utilizzato dal cellulare quando si richiede l'accesso al sistema. Questo si verifica quando il dispositivo mobile avvia una chiamata o risponde a una pagina.
  2. Paging Channel (PCH) utilizzato dal BTS per chiamare il MS, (la richiesta può essere eseguita da un IMSI, TMSI o IMEI).
  3. Access Grant Control Channel (AGCH) utilizzato dalla BTS per assegnare un canale di controllo dedicato ad un master in risposta ad un messaggio di accesso ricevuti sul Random Access Channel. La MS si sposterà sul canale dedicato al fine di procedere sia con una configurazione chiamata, risposta ad un messaggio di allarme, Location Area Update o Short Message Service.
  4. Cell Broadcast Channel (CBCH) Questo canale è utilizzato per trasmettere messaggi in broadcast a tutti i MS all'interno di una cella. Il CBCH utilizza un canale di controllo dedicato per inviare i suoi messaggi, ma è considerato un canale comune perché tutti i cellulari nella cella possono ricevere i messaggi.
I MS attivi devono costantemente monitorare il BCCH e il CCCH. Il CCCH sarà trasmesso sulla portante RF con il BCCH.




Passiamo alla pratica...

Installazione del software
Dopo questa introduzione piena di teoria passiamo alla pratica, innanzitutto dobbiamo procurarci l'hardware.
L'hardware in questione può essere una chiavetta usb RTL-SDR acquistabile su amazon al prezzo di 20 dollari
http://www.amazon.com/NooElec-RTL-SDR-RTL2832U-Software-Packages/dp/B008S7AVTC
Prendiamo il nostro pc con kali linux installato (preferibilmente no VM) e passiamo all'installazione di gr-gsm

Codice:
sudo apt-get install git python-pip
Codice:
sudo pip install PyBOMBS

configuriamo PyBOMBS:
Codice:
sudo pybombs prefix init /usr/local -a default_prx
sudo pybombs config default_prefix default_prx

Scarichiamo tutto il necessario:
Codice:
sudo pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git
sudo pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git

Ed infine installiamo tutto:
Codice:
sudo pybombs install gr-gsm
al termine dell'installazione non dimentichiamo di digitare il comando seguente per aggiornare la cache
Codice:
ldconfig

Ora creiamo il file
Codice:
nano ~/.gnuradio/config.conf
Al suo interno scriviamo
Codice:
[grc]
local_blocks_path=/usr/local/share/gnuradio/grc/blocks


Ora possiamo avviare il tool semplicemente digitando da terminale
Codice:
airprobe_rtlsdr.py
nel caso non dovesse funzionare potete eseguire
Codice:
gnuradio-companion
e caricare il file .grc (grgsm_livemon.grc)

A questo punto apparira una finestra di questo tipo

gsm.png


Vediamo in alto alcuni settaggi, il PPM è un valore di correzione per la frequenza che verra lasciato a zero, il Gain è il guadagno del ricevitore e va settato a 30 o massimo 35 se il segnale e debole invece, se il segnale e forte il gain va lasciato basso più o meno sui 20-15, ok ora la parte più importante la frequenza, per trovare la frequenza possiamo fare una ricerca manuale aumentandola di volta in volta finche non ci troviamo di fronte ad un segnale di questo tipo

GSMNonHoppingWaterfall.png

Traccia audio di esempio del segnale

Affianchiamo il terminale alla finestra una volta trovato il segnale, cambiamo il valore della frequenza di -/+0.1Mhz finche non riusciamo a vedere i dati ricevuti sul terminale
gr-gsm.png


Ora avviamo wireshark, selezioniamo l'interfaccia Loopback:lo e mettiamo come filtro gmstap

wshark-1.PNG




Link base:
http://www.rtl-sdr.com

Buon divertimento a tutti :)

Complimentoni, come antenna hai usato quella di base della chiavetta?
PS.
La uso per ricevere i NOAA

Inviato dal mio D722P utilizzando Tapatalk
 
ho modificato la chiavetta collegandogli un connettore bnc in modo da poter utilizzare l'antenna installata sul tetto di casa (no quella della tv)
 
ma analisi di che? con quel dongle fai solo sniffing e basta. e come fare solo airodump con le wifi :)))
 
Scusate l'ignoranza,ma alla fine cosa fa? Intercetta le chiamate XD non ho capito

Inviato dal mio SM-G935F utilizzando Tapatalk
 
Ciao, avevo una domanda da farti, per quando riguarda le connessioni W-CDMA (3g) il tipo di comunicazione è uguale? Si può sniffare anche quel traffico? Stessa cosa per il 4g?
 
Stato
Discussione chiusa ad ulteriori risposte.