JSEMTS搜尋引擎
 

Autore: Evil
Titolo: Bluetooth smartphone hacking for fun and profit
Versione: 1.0
Data: 14/10/2004
Http: www.eviltime.com
Email: webmaster@eviltime.com

---Sommario-------------------------------------------------------------------------

1. Introduzione
1.1 Installazione su linux

2. Il grande dente blu
2.1 I pericoli
2.2 Il Protocollo
2.3 Piconet
2.4 Pacchetti bluetooth

3. Scovare dispositivi bluetooth
3.1 Bluetooth visibili
3.2 Bluetooth 'nascosti'

4. Tecniche di attacco
4.1 Blue snarfing
4.2 Phone backdoor
4.3 Bluebug
4.4 Bluejacking
4.5 PIN Cracking

5. Hacking
5.1 Hacking dal portatile (o pc)

6. Sicurezza in campo
7. Conclusioni

---1. Introduzione------------------------------------------------------------------

Premetto che questo tutorial scritto da me 'Evil', in base a informazioni reperite
per la rete, tra le fonti certe di siti che spiegavano solo in parte teorica
l'argomento che ora io tratteranche in parte pratica, avendolo testato su
nokia 6600..
Come tutti ben sappiamo i cellulari di ultima generazione
ultimamente hanno tutti una tecnologia dal nome un pridicolo
'dente blu', in realtquesto nome ha un suo perchche riconduce
al passato, ma saltiamo direttamente a cose ben piu importanti.
Ultimamente si parla molto di Bluetooth hacking, snarfing e altro ancora
purtroppo la grande superficialitcon cui vengono affrontati questi
tipi di problemi in italia, non rispecchia il grado di rischio e dei danni
morali e finanziari che queste vulnerabilitpossono apportare all'utilizzatore
del cellulare 'buggato'.
Iniziamo col capire meglio la tecnologia in questione..

---1.1 Installazione su linux-------------------------------------------------------

I programmi da installare per il supporto bluetooth sono i seguenti:
Tutti i pacchetti BlueZ, vanno installati per implementare il supporto del
protocollo usato dal bluetooth, quindi downloaddate dal sito www.eviltime.com
nella sezione 'Bluetooth' tutti i pacchetti Bluez-* disponibili e installateli
con

./configure
make && make install

fatto ci aggiungete agli rc script lo start dei daemons all'avvio 'rc.M'

# Bluetooth

modprobe bluez
modprobe l2cap
modprobe sco
modprobe rfcomm
modprobe bnep

/usr/sbin/hcid
/usr/sbin/sdpd

dund --listen --channel 1 call dun

fatto questo installate il pacchetto OpenOBEX che trovate sempre sul mio sito
nella stessa sezione e installatelo, quindi downloaddate e installate KDE Bluetooth
che un utility grafica per linux, che gestisce connessioni bluetooth di vario
tipo..
Ora date un 'reboot' e controllate se tutto funziona, ma dovrebbe essere tutto ok
se il vostro kernel abbastanza recente..
Altri tool come ussp-push, saranno trattati nei capitoli seguenti a questo, e sono
sempre disponibili nello stesso sito.

---2. Il grande dente blu-----------------------------------------------------------

Ok.. partendo con la premessa che tutti voi lettori quando dico 'bluetooth'
sapete a grandi linee di cosa sto parlando, tenterdi trattare l'argomento
in modo piu approfondito, ovvero cercando di scoprire insieme come lavora
questa nuova tecnologia.
Il Bluetooth utilizza per la comunicazione onde radio a basso consumo, che
lavorano tra i 2,4 GHz e i 2,5 GHz in banda ISM, la stessa banda che usano
le wireless LAN, e usano FHSS per non interferire con altre apparecchiature,
la specifica FHSS usa un metodo molto interessante, per svolgere il suo compito
infatti divide la banda spettrale in tanti canali e riesce ad arrivare ad un
cambio di frequenza pari a piu di 1500 volte al secondo, saltando su 79 frequenze
diverse, "hopping".
I dati possono essere trasmessi su canali sincroni (SCO) e asincroni (ACL) con
l'unica differenza che i primi sono tipicamente utilizzati per il traffico
vocale point-to-point a commutazione di circuito e ACL invece per trasmettere
dati di qualunque altro tipo (point-multipoint a commutazione di pacchetto).
Esistono tre classi generali con le quali possiamo distinguere un dispositivo
da un altro, e si contraddistinguono inizialmente per il range (in metri) che
riescono a coprire, riconosciamo quindi i:

Dispositivi di Classe 1: Hanno una potenza di 100mW e un uscita massima di 20dBm
e possono coprire fino a 100 metri di distanza
Dispositivi di Classe 2: Hanno una potenza di 2,5mW e un uscita massima di 4dBm
e possono coprire fino a 10 metri di distanza
Dispositivi di Classe 2: Hanno una potenza di 1mW e un uscita massima di 0dBm
e possono coprire fino a 10 metri di distanza

per il resto in tema di velocitdi trasferimento, tutte e 3 le classi supportano
fino ad un massimo di 721Kbit/s

I Dispositivi piu conosciuti che attualmente usano tecnologie Bluetooth sono:
.Cellulari
.Smartphones
.Palmari
.PC
.Computer Portatili
.Periferiche per computer
.Accessori per cellulari

E molto altro ancora..
Il protocollo Bluetooth, oltre che l'avere implementati dentro se stesso altri esempi
di protocollo quali il L2CAP ecc, possiede tre livelli di sicurezza in autenticazione
anche se comunque gli header del protocollo Bluetooth non sono criptati e questo
puessere solo che un elemento di insicurezza, visto gli svariati tipi di attacchi
conosciuti al link-layer.

---2.1 I Pericoli-------------------------------------------------------------------

Ne avevo giaccennato nell'introduzione, che purtroppo qui in italia a problemi
di questo tipo, non gli si dil giusto peso.. anzi vengono affrontati con
'menefreghismo' principalmente per ignoranza.
Ma forse tutti non sanno che con un attacco di tipo SNARF, l'attaccante puavere
accesso praticamente completo al cellulare di una potenziale vittima, e quindi
avere accesso a informazioni personali, quali la rubrica, i messaggi, i video,
le foto e quindi invasione della privacy, ma non ci fermiamo qui, perchil
'malfattore' potrebbe volendo anche arrecare danni di tipo finanziario, poich nel caso di una connessione 'trusted' potrebbe andare su internet usando la
connessione GPRS e WAP del cellulare vittima, fare telefonate, mandare messaggi,
e molto altro ancora.
Impensabile il fatto che l'attacker pusottrarre il codice IMEI
(International Mobile Equipment Identity) del vostro cellulare, ovvero quel codice
che identifica univocamente il vostro cellulare, e che usato illegalmente nel
Phone Cloning, ovvero le gitanto discusse operazioni illegali di Clonazione..

Spero che questo piccolo angolo di informazione sui potenziali pericoli, vi abbia
alertato abbastanza, come NON hanno fatto invece i "grandi" d'italia..

---2.2 Il Protocollo----------------------------------------------------------------

Adesso, parliamo dello stack di protocollo bluetooth.
Questo protocollo organizzato via una struttura stratificata, quindi in vari
layer, dove in ogni layer (o strato) interagisce con il layer adiacente offrendone
pure i servizi, possiamo quindi intuire che i layer comunicheranno tra di loro via
l'uso di un protocollo e quindi si avranno tante connessioni logiche quanti sono
i layers utilizzati, ma vediamo quindi di schematizzare lo stack di protocollo
per poi spiegarlo in parte, ovviamente togliendo le sue API ecc..


---------------------------------------------
| Applicazioni |
---------------------------------------------
|| || || || || ||
|| -------- ------ ------------ ||
|| | at.com || OBEX || TCP/IP | ||
|| -------- ------ ------------ ||
|| || || (PPP) || -----
------- ----------------------- || | SDP |
| TCS || RFCComm | || -----
------- ----------------------- || ||
---------------------------------------------
| L2CAP |
---------------------------------------------
------- -------------- -----
| Audio | | Link Manager | | HCI |
------- -------------- -----
---------------------------------------------
|//////////////// [BASEBAND] \\\\\\\\\\\\\\\\\|
---------------------------------------------
---------------------------------------------
|///////////// [Bluetooth RADIO] \\\\\\\\\\\\\|
---------------------------------------------


Bene come possiamo vedere il sovrastante grafico dello stack di protocollo,
privo di spiegazioni ecc.. quindi cominciamo con il trovare un ordine logico
dando spiegazione ai layer meno conosciuti..

Il baseband e il bluetooth radio, sono appunto gli strati (layers) piu bassi
dello stack di protocollo bluetooth, e servono a gestire la comunicazione 'fisica'
tra i dispositivi in collegamento, gestiscono quindi le onde radio, e preparano i
pacchetti che verranno poi trasmessi durante la comunicazione da un dispositivo
all'altro, compreso un controllo sugli errori e nel caso sia richiesta, pure
la crittazione dei dati
Sull'HCI non ci soffermiamo troppo, diciamo piuttosto che non un vero e proprio
layer, perchfunge da interfaccia di comandi per il link manager, che al contrario
dell'hci un vero e proprio layer, che pernon passa informazioni e servizi
ai layers che lo seguono ma comunica con il Link manager dell'altro dispositivo
gestendo la connessione, e controllandone la sicurezza, responsabile quindi di
qualsiasi tipo di operazione, comprese quelle dove si usano SCO e ACL per lo sambio
dati e contiene in esso gli algoritmi di criptazione usati durante la connessione.
Un layer molto importante, e di cui sicuramente vi sarete gia accorti del suo uso
durante una connessione, SDP (Service Discovery Protocol) ovvero il protocollo
che si occupa di trovare i servizi offerti su un altro dispositivo bluetooth
come trasmissione file, cuffie ecc.. ed costituito da 3 componenti:

1 Service Discovery Database
2 Service Discovery Server
3 Service Discovery Client

Nel database vengono registrati i servizi offerti agli altri dispositivi, il server
ha il compito di passare il database a un richiedente, e il client serve per leggere
il database di un altro dispositivo.

Possiamo quindi dire che le cose piu importanti sullo stack di protocollo bluetooth
le abbiamo spiegate in poche parole, e in modo esaudiente, ora sappiamo come funziona
questa nuova tecnologia..

---2.3 Piconet----------------------------------------------------------------------

Bene per capire di piu il funzionamento del protocollo usato nelle comunicazioni
Bluetooth, dobbiamo studiare in pratica come avviene una vera e propria connessione
e il miglior modo spiegare il funzionamento di una rete bluetooth, chiamata
Piconet.
Piconet il tipo di rete bluetooth piu semplice, e piu diffusa si tratta infatti
di una rete locale dove non ci possono essere piu di 8 dispositivi, e dove c un nodo chiamato "Master" che controlla tutti gli altri dispositivi, chiamati "Slave"
questi dispositivi riescono a connettersi tra loro, solo perchognuno di questi s l'indirizzo dell'altra, ovvero il bluetooth address che un pcome l'IP.. ovvero
identifica univocamente il vostro cellulare, nella rete bluetooth, quindi con un p di logica si puarrivare a capire che ancora prima di incominciare una connessione
bluetooth, i dispositivi devono ottenere l'uno dall'altro il BA (Bluetooth Address)
e per ottenerlo si funa inquiry, normalmente eseguita dal Master, e gli slave
settati in inquiry scanning risponderanno.. dopo la fase di inquiry, parte la vera
e propria connessione tra i dispositivi a questo punto, il Master praticher un Paging e gli slave settati in Paging scanning, risponderanno alla richiesta, e
la connessione andra buon fine, salvo imprevisti..
E quindi ora saremo pronti a comunicare sia via SCO che usando ACL di qui abbiamo
visto prima una abbastanza accurata descrizione..
Potrei proseguire a lungo su questo argomento, potrei ad esempio parlare di
scatternet, di alcune situazioni problematiche che si possono verificare durante
una connessione in piconet.. pervoglio saltare questo, perchl'argomento
che voglio trattare il bluetooth hacking degli smartphones, e le cose che salto
io in questo tutorial, sono di dominio pubblico, basta una piccola ricerca
su google per trovare informazioni, su piconet, scatternet e bluetooth in generale

---2.4 Pacchetti bluetooth----------------------------------------------------------

Prima di incominciare con l'hacking vero e proprio, accenno ancora qualche cosa
sulla comunicazione, e quindi parliamo giusto per quello ceh ci serve, dei pacchetti
Bluetooth..
Il formato standard di un pacchetto di questo tipo

[ Access code ][ Header ][ - - - - - - - - - Payload - - - - - - - - - ]
72 bit 54 bit da 0 a 2745 bit

L'ordinamento dei pacchetti segue la regola Little Endian, e ogni pacchetto
come abbiamo visto nel grafico sovrastante, divise in tre sezioni diverse
dove ognuna delle quali viene trasmessa partendo dal bit meno significativo (LSB)

Access Code: Questo campo lungo 72 bit ed identifica ogni pacchetto nel canale,
e ha il compito di sincronizzare una connessione, e quindi affrontare
le giviste fasi di inquiry e page, durante una connessione, i primi
pacchetti sono infatti costituiti solo dall'Access code, e hanno il
compito di identificarci al ricevente.
I due tipi piu importanti di Access code sono IAC (Inquiry Access Code)
che viene utilizzato durante la fase di inquiry e puessere di due
tipi GIAC e DIAC, il primo uno standard mentre il secondo dedicato
ad un certo tipo di dispositivi;
e DAC (Device Access Code) che viene utilizzato anche lui dal mittente
ma nella fase di paging e lo otteniamo dai dati ricevuti in risposta
dall'inquiry, quindidestinato soltanto al dispositivo che ha risposto
all'inquiry per inizializzare la fase di page.
Molto importante troviamo anche il CAC (Channel Access Code)
che identifica una intera piconet, ed contenuto in ogni scambio di
informazione avvenuto dentro una piconet.


Header: Campo lungo 54 bit e suddiviso in sei sottocampi:

AM_ADDR per lndirizzo di ogni slave in stato attivo.
TYPE per il tipo di pacchetto.
FLOW per il controllo di flusso.
ARQ (Automatic Retrasmission Query).
SEQN ovvero l'ordine dei pacchetti.
HEC (Header-Error-Check) meccanismo di check drrore.

ancora poco da dire, basti precisare che AM_ADDR serve per identificare
un dispositivo bluetooth univocamente in una PICONET, fino ad un massimo
di 7 slave, (una piconet composta da 7 + 1), mentre TYPE specifica
il tipo di pacchetto usato in conversazioni ACL e SCO.

Qui di seguito lascio un disegno schemattizzato della struttura di un packet
header:

[ AM_ADDR ][---TYPE---][FLOW][ARQ][SEQN][--------HEC--------]
3 bit 4 bit 1b 1b 1b 8 bit

L'avviso del successo o meno della consegna di un pacchetto contenuto nel
bit di ARQ che mostra al mittente se i dati inviati precedentemente sono stati
ricevuti correttamente o meno, e in caso di fallimento, il mittente riprover a rimandare i dati.

Payload: Questo campo ha una lunghezza variabile da 0 a 2745 bit, e contiene
i dati veri e propri che il mittente manda al ricevente..

---3. Scovare dispositivi bluetooth-------------------------------------------------

Bene dopo aver parlato di cosa il bluetooth e di come lavora in modo abbastanza
esaudiente, il momento di trattare il succo del tutorial, ovvero il bluetooth
hacking negli smartphone.

---3.1 Bluetooth visibili-----------------------------------------------------------

Bluetooth visibili, ovvero Discoverable bluetooth, questo un tipo di settaggio
che possibile fare anche a livello software sul proprio smartphone, solitamente
settato di default, e rende il tuo BA (bluetooth address) pubblico, e quindi
visibile ad altri dispositivi.
In questo caso, il livello di sicurezza basso o quasi inesistente, e chiunque
usando il suo cellulare o portatile, putrovare e negoziare informazioni col
vostro cellulare, sia che voi ne veniate a conoscenza o meno..

---3.2 Bluetooth 'nascosto'---------------------------------------------------------

Bluetooth 'nascosto', ovvero Non-Discoverable Bluetooth, con questo settaggio
possibile non rendersi visibili alla normale ricerca di altri dispositivi,
effettuata da un dispositivo sconosciuto.
Purtroppo per'nascosto' non vuol dire affatto sicurezza, perchil bluetooth
del dispositivo settato in ND, non rende pubblico il proprio BA, ma risponderebbe
comunque a richieste da parte di un altro dispositivo se mai gli venissero
fatte, quindi in questa occasione che bisogna praticare uno scan cieco..
dico cieco, perchnoi non siamo a conoscenza di niente, nemmeno di una parte
dell'indirizzo, a facilitare questo ci sono gia dei tool disponibili su internet
come "bluesniff" e altri progetti ancora..
Se non avete capito, basta solo ragiornarci un attimo sopra..
allora il BD_ADDR molto simile per natura ad un MAC address ed lungo 9 bytes
di cui 3 bytes indicano il vendor, a questo punto basterelidere i primi
3 bytes che non ci servono, e fare uno scan completo degli ultimi 6, mandando ad
ogni BA generato una richiesta inquiry, fino a che non ne troviamo uno che
risponda alla nostra richiesta..

---4. Tecniche di attacco-----------------------------------------------------------

Eccoci alla parte indubbiamente piinteressante del tutorial,
saltiamo inutili disclaimer e premesse sull'argomento "responsabilit perch credo non ce ne sia bisogno..
Quindi cominciamo subito ad analizzare e conoscere gli attacchi piu comuni per
vedere infine un accenno ai nuovi tipi di attacco, tengo a precisare che questa
ancora parte teorica, vedremo la parte pratica, nel capitolo 5 di questo tutorial

---4.1 Blue snarfing----------------------------------------------------------------

Il primo tipo di attacco di cui andremo a parlare lo SNARF.
Questo tipo di attacco consiste in una richiesta OBEX di tipo PULL, la richiesta
in questione non sarvisibile da chi la riceve, e noi avremo accesso e quindi
potremo sottrarre informazioni in una "limitata" area di dati, che fortunatamente
o sfortunatamente, include Rubrica telefonica, Video, Foto, SMS,
registro di chiamate, calendario, codice IMEI, e molto altro ancora.
L'attacco praticabile sia nel caso di un bluetooth visibile sia nel caso di un
bluetooth 'nascosto' e ne sono vulnerabili molti modelli Nokia, ericsson e altri..
Si purtroppo non affligge tutti i modelli di queste case o comunque tutti gli
smartphone, perchdipende soprattutto dall'implementazione dell'OBEX nello stack
di protocollo da parte delle case..
Come abbiamo gia detto l'attacco praticabile usando una richiesta OBEX - Pull
OBEX usato per le trasmissioni di dati e sta per Object Exchange Protocol,
e le sue funzionalitpiu utilizzate sono Pull e Push, e lo si pufare facilmente
utilizzando i tools contenuti in BlueZ nei kernel 2.4 e 2.6 (hci ecc..)

questa una normale richiesta OBEX usando il programma testuale obexapp.

# obexapp -a 00:0E:xx:xx:xx:xx -C IrMC
obex> get
get: remote file> dir/file.wwi
get: local file> /root/file.wwi
Success, response: OK, Success (0x20)
obex> di
Success, response: OK, Success (0x20)

un tool veramente valido per l'occasione btscanner:
http://www.pentest.co.uk/cgi-bin/viewcat.cgi?cat=downloads
creato per cercare di prelevare le maggiori informazioni possibili da un dispositivo
bluetooth vittima..

---4.2 Phone backdoor---------------------------------------------------------------

Qui invece si parla di ottenere una connesione "trusted" sul cellulare vittima
usando il meccanismo di "pairing"..
Molto probabilmente la maggior parte di voi non ha capito, questo perchnon abbiamo
ancora parlato di questo tipo di connessione, quindi..
Un Pairing avviene quando 2 dispositivi bluetooth accettano di comunicare assieme
e quindi si entra in una Trusted Pair connection, quello che succede si divide in
5 fasi:

1. Il dispositivo A cerca altri dispositivi 'discoverable' nell'area
2. A trova un dispositivo B e inizia la connessione
3. A chiede di inserire un PIN (qualunque cosa va bene)
4. A manda il PIN a B
5. B manda il PIN ad A

Bene se queste 5 fasi riescono con successo, avremo ora una connessione di tipo
trusted pair, e non ci sarnemmeno bisogno di autenticarsi, gli unici accertamenti
da fare sono, il rendersi invisibili alla lista "trusted" del dispositivo vittima
e assicurarsi che al momento della connessione, la vittima non abbia sotto gli occhi
il cellulare.
Se l'attacco andato a buon fine ora noi abbiamo completo accesso alle risorse del
cellulare, compresi servizi come WAP e GPRS..

---4.3 Bluebug----------------------------------------------------------------------

Un attacco Bluebug, lo si effettua sfruttando un conosciuto bug del servizio
in questione, e in questo modo otteniamo una connessione Serial Port Profile
che ci darcompleto accesso ai comandi AT, in questo modo se ci sappiamo
muovere per bene, una volta dentro potremo fare diverse azioni, tra le tante
troviamo: fare chiamate, mandare o leggere sms, usare la connessione gprs, vedere
i video, le foto, la rubrica e molto ancora, tutto questo con permessi di lettura e
di scrittura... di solito una volta dentro la prima cosa che si desidera fare,
venire a conoscenza del numero di questa persona, bhe, basterquindi inviare da
quel cellulare un sms o una richiesta di chiamata, verso il nostro cellulare..

Finisco quindi qui, poichsu questo bug non conosco altro, e non sono mai riuscito
a mettere in pratica quanto conosco.

---4.4 Bluejacking------------------------------------------------------------------

Questo tipo di attacco, non come su molti documenti ho potuto notare
l'attacco "meno pericoloso", vero che lo si pupraticare con facilited
molto usato per scambiare messaggi anonimi e per fare scherzi, ma cdietro un
meccanismo che permetterebbe con facilitdi abusare del servizio e ottenere un
pairing con il device destinatario dell'attacco.
Il bluejacking infatti praticato richiedendo una connessione pairing, il
destinatario vedrappunto il campo NAME durante l'handshake della connessione
e rispondera accettando o rifiutando, il campo NAME puessere lungo fino a 248
caratteri, ed quindi possibile far visualizzare alla vittima un messaggio vero
e proprio lungo fino a 248 caratteri al posto del nome del dispositivo..
Beh finora niente di allarmante, ma provate a pensare.. Se l'handshake avviene
con successo, l'attacker otterrebbe una connessione paired, e avrebbe accesso
a molte risorse offerte dalla vittima, e questo un'altro dei tanti seri problemi
del bluetooth..

---4.5 PIN Cracking-----------------------------------------------------------------

Okey questa l'ultima tecnica di attacco che spieghernel tutorial, ed a mio parere la piu interessante..
Si tratta infatti di riuscire a crackare il PIN, e non usando il solito bruteforce
anche perchtra una richiesta di PIN e un altra intercorre un arco di tempo
non troppo stretto, ma si tratta infatti di crackare il PIN con una sola richiesta,
il tutto sta nello sniffare i dati passati da un dispositivo all'altro durante il
processo di autenticazione, e poi provare le migliaia di combinazioni tra i dati
ottenuti, i dati che ci servono sono:

Initial RAND
XORed RAND
AUTH SRES
AUTH RAND

Una volta ottenuti i dati possiamo dare in pasto il tutto ad un programma come
libmcrypt, e a seconda della lunghezza del PIN potremo metterci dai pochi secondi,
a (purtroppo) sino a decine e decine di anni..

E' proprio con questo che chiudo definitivamente la parte teorica, se avete letto
il tutto con attenzione, la parte pratica vi risultersemplice da capire
e ben documentata per potere riprodurre le stesse condizioni, con i vostri
strumenti.

---5 Hacking------------------------------------------------------------------------

Possiamo ora, usando le basi teoriche che avete appreso leggendo il tutorial,
trattare la parte pratica..
Abbiamo giparlato di cosa possiamo ottenere con le piu svariate tecniche
di bluetooth hacking, qui vedremo solo come metterne in pratica alcune..
I tool usati saranno: hcitool, sdptool e ussp-push

---5.1 Hacking da portatile---------------------------------------------------------

Ecco questa la parte che ho testato io di persona, e quindi potrdocumentarvela
per intero, in prima fase si installano i tools necessari, premettendo che io ho
testato il tutto con Slackware 10.0 - kernel 2.4.26, i tool che ci servono sono
BlueZ (tutti i pacchetti) www.bluez.org, e kdebluetooth che potete scaricare
anche lui gratuitamente su kde-bluetooth.sourceforge.net..
Fatto questo, si incomincia:
Per prima cosa si cercano dei dispositivi utilizzando il comando hcitool:

root@eviltime-labs:~# hcitool -i hci0 scan
Scanning ...
00:0E:xx:xx:xx:xx pizza

Perfetto ora sappiamo che cun dispositivo a nostra portata con indirizzo BD_ADDR
00:0E:xx:xx:xx:xx, allora la seconda cosa da fare chiedergli un service list
usando una richiesta al database SDP:

root@eviltime-labs:~# sdptool browse 00:0E:xx:xx:xx:xx
Browsing 00:0E:xx:xx:xx:xx ...
Service Name: Fax
Service RecHandle: 0x10000
Service Class ID List:
"Fax" (0x1111)
"Generic Telephony" (0x1204)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Fax" (0x1111)
Version: 0x0100

Service Name: Dial-up Networking
Service RecHandle: 0x10001
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

Service Name: Bluetooth Serial Port
Service Description: Bluetooth Serial Port
Service Provider: Symbian Ltd.
Service RecHandle: 0x10002
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100

Service Name: OBEX File Transfer
Service RecHandle: 0x10003
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100

Service Name: OBEX Object Push
Service RecHandle: 0x10004
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 9
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100

Service Name: Handsfree Audio Gateway
Service RecHandle: 0x10005
Service Class ID List:
"" (0x111f)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"" (0x111e)
Version: 0x0101


Benissimo abbiamo ottenuto informazioni su ben 5 servizi!.. ma quello che ci interessa
di pisono le parti sul OBEX File transfer e push ..
Beh non resta che installare rfcomm e OpenOBEX, e incominciare ad affrontare un tipo di
attacco Snarf improvvisato per funzionare su Nokia 6600, purtroppo non sono riuscito
a fare altro su questo cellulare, ma in caso di novitvi sapro aggiornare..

Bene apriamo una connessione usando il device /dev/ttyU0 verso il nostr cellulare quindi:

# hcitool 0 00:0E:xx:xx:xx:xx 9
Connected /dev/ttyU0 to 00:0E:6D:67:79:69 on channel 9

Bene in questo caso io al messaggio sul mio smartphone
"Ricevere messaggio via bluetooth da: NOMEHOST ?" ho risposto si.. la cosa piu
'buffa' che il cellulare riconosce la connessione al canale del servizio
OBEX "Object Push" come se fosse un messaggio qualunque.. bhe questo un 'pro' per
noi, visto che il mittente vedendosi arrivare messaggi tipo "Ricevere messaggio via
bluetooth da: FRANCESCA?" non si allarmermai.. sempre bene mettere nomi del
sesso opposto alla persona che si ha come 'vittima', provatevi ad impersonificarvi
in un caso simile, e avrete la risposta e il perchdi questa scelta..
nel caso non accettasse, basta continuare a fare richieste fino a quando la 'vittima'
annoiata e turbata dalle richieste, provera farle smettere, accettando la nostra
richiesta.
Dopo che la 'vittima' ha accettato, non visualizzerniente sul proprio cellulare,
ma noi invece potremo usare la funzione obex_push() contenuta nel programma
OpenOBEX per 'pushare' ovvero inviare file dal nostro computer al telefonino, senza
bisogno che il destinatario accetti..
in poche parole anche nel caso il nostro file coincida con il nome di un altro file
sul telefonino destinatario, quel file verrsostituito senza alcuna richiesta e senza
la possibilitdi annullare l'operazione..
Beh non resta che vedere appunto come pushare il file, quindi usiamo
ussp-push (capitolo 1)

# ./ussp-push /dev/ttyU0 /home/evil/ksnap001.jpg nuovo.jpg
Sending file: nuovo.jpg, path: /home/evil/ksnap001.jpg, size: 89809
[...]

Perfetto ora il mio cellulare ha visualizzato 1 messaggio nuovo, ed ecco arrivata
l'immagine JPG..

Purtroppo come ho gidetto prima, non sono riuscito a testare altre vulnerabilit
perchsembrerebbe non vulnerabile ai metodi fino ad ora conosciuti, ma vi
aggiorner.
Un altra bella idea quella comunque di provare a chiedere ripetutamente connessioni
'trusted pair' al cellulare della vittima, e se (nell'almeno 60% dei casi), un
utente medio, ovvero ignorante in materia smartphone e bluetooth, accetter.
magari non la prima volta, magari impostate un nome bluetooth che sia, invitante,
magari proporre una connessione trusted pair, da NOKIA o la marca del cellulare,
oppure dal gestore telefonico..
le possibilitsono molte, sta a voi la scelta, e se siete fortunati, avrete a
disposizione la maggior parte delle funzionalitdel dispositivo vittima..

---6 Sicurezza in campo-------------------------------------------------------------

Purtroppo non esistono metodi che assicurerebbero al 100% la sicurezza di un
dispositivo bluetooth, il metodo piu recente scoperto sarebbe una carta da applicare
alle pareti, che disturberebbe i segnali provenienti
dall'esterno e quindi proteggerebbe la rete WLAN o PICONET da potenziali attaccanti,
anche qui percun contro, ovvero le finestre, e il fatto che comunque questo
"muro" di carta riuscirebbe a disturbare solo un certo range di frequenze..
Anche qui, quindi possiamo capire che l'unico modo per proteggere il nostro
cellulare o dispositivo personale, quello di attivare il bluetooth solo nel
momento in cui sappiamo di dover avviare una connessione, e di pensare un pprima
di accettare una connessione (o un messaggio) da un dispositivo sconosciuto.

---7 Conclusioni--------------------------------------------------------------------

Siamo quindi arrivati alla fine del tutorial, tutto quello che avevo da dire in tema
l'ho scritto su questo file di testo, piu avanti molto probabilmente aggiorneril
testo affrontando altri tipi di problemi e tecniche, e approfondendo quello di cui
gia si parlato in questa prima release..
Visitate frequentemente il mio sito www.eviltime.com per tenervi aggiornati, nel
caso di una nuova release o qualsiasi altra cosa troverete i link al download
proprio li, oppure su www.mojodo.it

References:

Bluetooth: www.bluetooth.com
War Nibbling
Bluetooth Security @stake






搜尋引擎讓我們程式搜尋結果更加完美
  • 如果您覺得該文件有幫助到您,煩請按下我
  • 如果您覺得該文件是一個一無是處的文件,也煩請按下我

  • 搜尋引擎該文件您看起來是亂碼嗎?您可以切換編碼方式試試看!ISO-8859-1 | latin1 | euc-kr | euc-jp | CP936 | CP950 | UTF-8 | GB2312 | BIG5 |
    搜尋引擎本文件可能涉及色情、暴力,按我申請移除該文件

    搜尋引擎網址長?按我產生分享用短址

    ©2024 JSEMTS

    https://tw.search.yahoo.com/search;_ylt=A8tUwYgkQU1YcXoAUE9r1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC10dwRncHJpZAMxWU5tY2FYMVFGQ2ZvUXZGN1N0bzVBBG5fcnNsdAMwBG5fc3VnZwMwBG9yaWdpbgN0dy5zZWFyY2gueWFob28uY29tBHBvcwMwBHBxc3RyAwRwcXN0cmwDBHFzdHJsAzQ4BHF1ZXJ5AyVFNiVBRCVBMSVFNiVBRCU4QyUyMCVFNSVCMCU4OCVFNiU4MyU4NSVFNSU5QyU5OAR0X3N0bXADMTQ4MTQ1Nzk3Ng--?p=%E6%AD%A1%E6%AD%8C+%E5%B0%88%E6%83%85%E5%9C%98&fr2=sb-top-tw.search&fr=yfp-t-900-tw&rrjfid=7693684 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=9800889 https://tw.search.yahoo.com/search;_ylt=A8tUwYgkQU1YcXoAUE9r1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC10dwRncHJpZAMxWU5tY2FYMVFGQ2ZvUXZGN1N0bzVBBG5fcnNsdAMwBG5fc3VnZwMwBG9yaWdpbgN0dy5zZWFyY2gueWFob28uY29tBHBvcwMwBHBxc3RyAwRwcXN0cmwDBHFzdHJsAzQ4BHF1ZXJ5AyVFNiVBRCVBMSVFNiVBRCU4QyUyMCVFNSVCMCU4OCVFNiU4MyU4NSVFNSU5QyU5OAR0X3N0bXADMTQ4MTQ1Nzk3Ng--?p=%E6%AD%A1%E6%AD%8C+%E5%B0%88%E6%83%85%E5%9C%98&fr2=sb-top-tw.search&fr=yfp-t-900-tw&rrjfid=2116427 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=9084743 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=1816948 https://tw.search.yahoo.com/search;_ylt=A8tUwYgkQU1YcXoAUE9r1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC10dwRncHJpZAMxWU5tY2FYMVFGQ2ZvUXZGN1N0bzVBBG5fcnNsdAMwBG5fc3VnZwMwBG9yaWdpbgN0dy5zZWFyY2gueWFob28uY29tBHBvcwMwBHBxc3RyAwRwcXN0cmwDBHFzdHJsAzQ4BHF1ZXJ5AyVFNiVBRCVBMSVFNiVBRCU4QyUyMCVFNSVCMCU4OCVFNiU4MyU4NSVFNSU5QyU5OAR0X3N0bXADMTQ4MTQ1Nzk3Ng--?p=%E6%AD%A1%E6%AD%8C+%E5%B0%88%E6%83%85%E5%9C%98&fr2=sb-top-tw.search&fr=yfp-t-900-tw&rrjfid=4757486