GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa può fare un utente malintenzionato con il Bluetooth e come dovrebbe essere mitigato?

(Nota:questa risposta è del 2013. Da allora sono cambiate molte cose nel Bluetooth, in particolare il forte aumento della popolarità di BLE, i nuovi attacchi, le funzionalità obsolete. Detto questo, la maggior parte è ancora applicabile.)

Introduzione

Cercherò al meglio delle mie conoscenze di affrontare le tue domande senza toccare le parti tecniche della tecnologia Bluetooth stessa. Ho imparato molto di quanto segue mentre dovevo scrivere un rapporto sulla sicurezza per modellare una politica BYOD. Conoscendoti, non dovrò insegnarti che non c'è niente di sicuro al 100%, tutto ciò che facciamo è solo per rendere le cose più difficili ai cattivi.

Cosa NON è il Bluetooth

  • Il Bluetooth stesso come tecnologia non è sicuro, non riguarda solo l'implementazione, ci sono alcuni gravi difetti nel design stesso.

  • Il Bluetooth non è un metodo di comunicazione a corto raggio:solo perché sei un po' lontano non significa che sei al sicuro. I dispositivi Bluetooth di Classe I hanno una portata fino a 100 metri.

  • Il Bluetooth non è un metodo di comunicazione maturo (dal punto di vista della sicurezza). Con gli smartphone, si è trasformato in qualcosa di totalmente diverso da quello che doveva essere. È stato creato come un modo per collegare i telefoni alle periferiche. Il mio consiglio:non usare il Bluetooth per cose serie.

Come viene protetto ora il Bluetooth?

  • Salto di frequenza come un matto:il Bluetooth utilizza qualcosa chiamato AFH (Adaptive Frequency Hopping). Fondamentalmente utilizza 79 canali nella banda ISM a 2,4 Ghz e continua a saltare da uno all'altro a una velocità di 1600 salti/s, osservando l'ambiente ed escludendo qualsiasi frequenza esistente dall'elenco di salto. Ciò riduce notevolmente le interferenze ei tentativi di inceppamento.

  • Suite di cifratura E0:utilizza una cifratura a flusso con una chiave a 128 bit.

  • Non rilevabilità:a meno che non imposti il ​​tuo dispositivo su "rilevabile", non risponderà ai tentativi di scansione e il tuo BD_ADDR a 48 bit (l'indirizzo che identifica il tuo dispositivo abilitato Bluetooth) non verrà rivelato.

  • Accoppiamento:a meno che i dispositivi non siano accoppiati con il consenso delle parti, non saranno in grado di comunicare. Una richiesta di associazione può essere effettuata solo se conosci il BD_ADDR dell'altro dispositivo (tramite scansione o conoscenza precedente).

È una buona idea rimuovere e riaccoppiare i miei dispositivi a intervalli prestabiliti (pensando che questo stia cambiando il PIN Bluetooth)

Sì. È un'ottima idea. Stai eliminando i rischi di essere sfruttato dai tuoi dispositivi fidati. Dato che di solito accoppiamo i dispositivi per motivi insignificanti (inviare un file a un conoscente, ottenere una VCard da una persona che hai incontrato da qualche parte...) è molto probabile che crei un elenco enorme di dispositivi "fidati" se usi molto il Bluetooth.

Qual ​​è l'impatto sulla sicurezza del rendere il mio dispositivo o computer "rilevabile"?

Il problema nel rendere rilevabile il tuo dispositivo è che stai pubblicizzando il tuo BD_ADDR a chiunque lo richieda. L'unico modo per eseguire l'accoppiamento con un altro dispositivo è conoscere BD_ADDR. In un attacco mirato, ci vorrà del tempo per applicare la forza bruta al BD_ADDR a 48 bit.

Normalmente, conoscere il tuo BD_ADDR non dovrebbe essere un grosso problema, ma nel caso in cui ci sia una vulnerabilità nel tuo telefono o nel software Bluetooth sul tuo computer, è meglio essere sotto il radar. Un altro problema è l'impatto sulla privacy; essendo rilevabile, fai sapere alle parti non accoppiate (non attendibili) quando sei nei paraggi.

Che tipo di accesso ottiene un dispositivo abilitato Bluetooth sul mio sistema?

Nel caso normale (nessuna vulnerabilità per consentire l'esecuzione di codice arbitrario) tutto dipende dai profili Bluetooth supportati dal dispositivo. Di solito, puoi presumere che il tuo computer supporti tutti i profili. Ne elencherò solo alcuni:

  • BHIDP (Bluetooth Human Interface Device Profile) darà accesso all'attivazione degli eventi del mouse e della tastiera (spostamento del mouse e invio dei tasti della tastiera).
  • BIP (Basic Imaging Profile) darà accesso alla tua fotocamera.
  • A2DP (Advanced Audio Distribution Profile) darà accesso al tuo MIC e alla tua uscita audio.
  • OBEX (OBject EXchange) è ciò di cui di solito ti devi preoccupare. A seconda dell'implementazione, potrebbe dare accesso a file, rubrica, messaggi, ecc.

Ci sono funzioni di sicurezza Bluetooth che potrebbero (o potrebbero non essere abilitate)? Come posso verificare la presenza (o la mancanza di) di queste funzionalità?

Prima di Bluetooth V2.1, durante l'implementazione del protocollo stesso, lo sviluppatore aveva la possibilità di utilizzare la modalità di sicurezza n. 1, il che significa nessuna sicurezza. I dispositivi possono comunicare senza necessità di associazione e la crittografia non viene utilizzata.

Bluetooth V2.1 e successivi richiedono la crittografia.

Come utente, ci sono alcune cose che puoi fare per rendere più sicuro il tuo utilizzo del Bluetooth. (Vedi sotto)

Supponendo che la crittografia sia una funzione di sicurezza che può essere abilitata, è obbligatoria o facoltativa?

Come nella domanda precedente, dipende dall'implementazione. Solitamente la crittografia viene utilizzata di default nelle comunicazioni PC-PC, smartphone-smartphone e PC-smartphone. A partire da Bluetooth V2.1, la crittografia è abilitata per impostazione predefinita.

Cosa può fare un utente malintenzionato una volta che un dispositivo dannoso è associato al mio?

Fondamentalmente, tutto ciò che supporta il tuo dispositivo. Per dimostrarlo, basta usare un'applicazione chiamata Super Bluetooth Hack, vedrai cose molto spaventose tra cui:

- Suoneria:riproduzione di suoni di chiamata in arrivo, sveglia.
- Chiamate:composizione di un numero, conclusione di una chiamata.
- Tasti, tasti premuti:premere e guardare i tasti premuti
- Contatti
- Leggere SMS
- Modalità silenziosa:accensione o spegnimento
- Funzionalità del telefono:spegnimento della rete / telefono
- Allarmi
- Orologio:modifica data e ora
- Cambiare operatore di rete
- Java:avvia, cancella applicazioni java
- Calendario
- Stato della memoria
- Blocco tasti

Allora, cosa c'è che non va nel Bluetooth?

  • Completa fiducia nel dispositivo accoppiato: Un dispositivo associato ha accesso praticamente a tutti i profili supportati dall'altro dispositivo. Questo include OBEX e FTP (File Transfer Profile).

  • I profili hanno troppa libertà: I profili possono scegliere la modalità di sicurezza che desiderano. Puoi persino implementare la tua versione di OBEX senza che il Bluetooth richieda l'utilizzo della crittografia o dell'autenticazione. (Prima di Bluetooth V2.1)

  • Punti deboli in E0: Dal 1999, le vulnerabilità E0 hanno iniziato a manifestarsi. È stato dimostrato che è possibile decifrare E0 con 2 anziché con i 2 precedentemente creduti. Anno dopo anno, i ricercatori hanno scoperto più vulnerabilità, portando all'attacco del 2005 di Lu, Meier e Vaudenay. L'attacco ha dimostrato la possibilità di recuperare la chiave con 2 operazioni.

  • L'accoppiamento è definito in modo generico: I dispositivi possono implementare i propri metodi di accoppiamento, incluso un PIN di 4 cifre che può essere decifrato in pochissimo tempo.

Infine, per le linee guida di buona pratica:

Elencherò alcune delle importanti raccomandazioni sulla sicurezza Bluetooth dell'NSA (ne ho modificate alcune e ne ho aggiunte altre personali):

  • Attiva la funzionalità Bluetooth solo quando necessario.
  • Abilita il rilevamento Bluetooth solo quando necessario.
  • Tieni vicini i dispositivi accoppiati e monitora ciò che accade sui dispositivi.
  • Accoppia i dispositivi utilizzando una passkey lunga sicura.
  • Non inserire mai passkey o PIN quando richiesto inaspettatamente.
  • Aggiorna regolarmente e patch i dispositivi abilitati Bluetooth.
  • Rimuovi i dispositivi associati subito dopo l'uso.

Aggiornamento: Un'ora fa mi stavo tuffando nelle specifiche Bluetooth V4.0 e, con mia sorpresa, sembra che stiano ancora usando E0 per la crittografia e non ci sono state buone modifiche al meccanismo di accoppiamento. Quel che è ancora peggio è che stanno spingendo in avanti il ​​meccanismo di accoppiamento del confronto dei numeri, in cui agli utenti viene mostrato un numero di sei cifre sui due dispositivi e viene chiesto di verificare se sono uguali. Il che, a mio parere, apre enormi porte agli attacchi di social engineering.

Per gli scenari di associazione che richiedono l'interazione dell'utente, la protezione da intercettazioni rende una semplice passkey a sei cifre più efficace di un codice PIN casuale a 16 caratteri alfanumerici.

Fonte

Aggiornamento 2: Sembra che questo PIN a 6 cifre "Funziona e basta" sia davvero problematico. Mike Ryan ha dimostrato un attacco a BLE e ha rilasciato il codice mentre il suo strumento "crackle" forza la chiave temporanea e decrittografa il traffico.


La sicurezza del dispositivo è limitata al tipo di dispositivo.

Quali sono i rischi per la sicurezza del Bluetooth e quali tecnologie e best practice dovrebbero essere utilizzate per proteggere il mio dispositivo?

Ogni dispositivo fornisce un livello di servizi. I servizi forniti creano le restrizioni o le limitazioni per l'accesso e lo sfruttamento. La migliore protezione è mantenere il Bluetooth disattivato (se sei paranoico). Un paio di letture interessanti sul sito di Symantec e su Dark Reading.

Cosa può fare un utente malintenzionato una volta che un dispositivo dannoso è associato al mio?

Alcune cose che potrebbero accadere:

  • Qualcuno potrebbe:rubare rubriche telefoniche, foto, video, calendari o consentire di effettuare chiamate telefoniche, inviare e leggere e-mail, fissare appuntamenti e inviare messaggi SMS.

  • Dopo aver sfruttato un telefono cellulare potresti potenzialmente inviare un messaggio SMS con una minaccia di bomba alla stazione di polizia locale. I record di fatturazione indicherebbero certamente direttamente a te come proprietario del telefono e vero mittente dell'SMS. Dipende davvero dall'implementazione dello standard Bluetooth da parte del sistema di destinazione. Norton

  • Potrebbero anche potenzialmente ascoltare le telefonate (se hanno falsificato un auricolare) e controllare il cursore del mouse sul desktop (se hanno falsificato il mouse).

Mi sono divertito un po 'con un'autoradio in una concessionaria Nissan mentre ero annoiato ad aspettare che il mio servizio fosse finito. Lo stereo in una delle auto dimostrative era rilevabile, quindi ho eseguito l'accoppiamento durante una demo quando il venditore stava mostrando le nuove funzionalità a un potenziale acquirente, hanno eseguito l'accoppiamento con il mio dispositivo, quindi quando il potenziale cliente ha indicato che il loro accoppiamento non era riuscito, hanno riprovato (eravamo entrambi accoppiati). Poi, dopo che il personale di vendita se ne è andato, ho "posseduto" lo stereo, trasmettendo in streaming brani casuali e controllando il volume. Qualcuno si allontanava dalla macchina, lo stereo diventava più forte. Qualcuno si sarebbe avvicinato alla macchina, poi lo stereo sarebbe diventato più silenzioso. È stato tutto divertente finché non ho ricevuto una telefonata e lo stereo ha risposto automaticamente e mi ha quasi fatto saltare la copertura (ho ignorato la chiamata).

È una buona idea rimuovere e riaccoppiare i miei dispositivi a intervalli prestabiliti (pensando che questo stia cambiando il PIN Bluetooth)

Poiché il sistema è facilmente sfruttabile, ciò non rimuove le vulnerabilità originali che esistono nei limiti di comunicazione dell'hardware di destinazione con altri dispositivi (il suo livello di affidabilità). lettura oscura

Qual è l'impatto sulla sicurezza del rendere il mio dispositivo o computer "rilevabile"?

Rendendo il tuo sistema "rilevabile" permetti a qualcuno di impersonare il tuo dispositivo rinominando il proprio dispositivo in modo che corrisponda. Questo è inevitabile su alcuni dispositivi.

Che tipo di accesso ottiene un dispositivo abilitato Bluetooth sul mio sistema?

Questo dipende dalle restrizioni in atto sul sistema stesso. Se il tuo sistema presuppone che tutti i mouse wireless o le cuffie wireless si comportino allo stesso modo perché lo sviluppatore del software non si è preso il tempo per proteggere gli scambi e qualcuno impersona il tuo mouse wireless, potrebbe avere accesso a tutto ciò che è consentito nei servizi del tuo sistema. Su Windows apparentemente questo potrebbe significare il pieno controllo.

Come posso controllare l'ambito di accesso di un dispositivo Bluetooth? (se il mio telefono fosse compromesso, vorrei limitare l'esposizione del mio PC)

Qualsiasi sistema Bluetooth può potenzialmente essere compromesso a suo modo a causa delle limitazioni nell'implementazione della sicurezza. Qualcuno nel raggio d'azione può facilmente compromettere il tuo desktop o laptop "rilevabile" così come il tuo telefono cellulare, le tue cuffie, il tuo mouse, il tuo frigorifero abilitato Bluetooth, ecc. Disaccoppia e disabilita il Bluetooth quando non lo usi. Spegni i dispositivi stupidi quando non li usi.

Ci sono funzionalità di sicurezza Bluetooth che potrebbero (o potrebbero non essere abilitate)? Come posso verificare la presenza (o la mancanza di) di queste funzionalità?

Questo dipende dal dispositivo. Dispositivi come i mouse wireless non avranno un registro delle attività. I desktop possono. Alcuni telefoni cellulari no.

Supponendo che la crittografia sia una funzione di sicurezza che può essere abilitata, è obbligatoria o facoltativa? (si potrebbe inoltre creare una striscia SSL per Bluetooth?)

La crittografia può essere gestita solo dai dispositivi che la supportano. Nell'handshake iniziale se indichi che il tuo dispositivo non dispone di funzionalità di crittografia, il sistema non tenterà di crittografare le transazioni. I mouse wireless, ad esempio, non trasmetteranno segnali sicuri.

Vulnerabilità Bluetooth del Mac sfruttata per l'implementazione del trojanVulnerabilità di Windows

Un utente malintenzionato potrebbe quindi installare programmi; visualizzare, modificare o eliminare i dati; o creare nuovi account con diritti utente completi. Questa vulnerabilità riguarda solo i sistemi con funzionalità Bluetooth.

L'exploit Bluetooth di Linux include la manipolazione e la lettura dello stack di memoria.

Buona fortuna.


Questa risposta potrebbe essere incompleta o errata poiché la mia conoscenza sull'argomento è limitata, ma la mia comprensione del Bluetooth è che si tratta di uno stack abbastanza sciolto su cui è possibile sviluppare diversi protocolli (chiamati profili). Molti dei dettagli della sicurezza dipenderanno dal particolare stack e profilo Bluetooth che hai sul tuo hardware.

Supponendo che il tuo stack Bluetooth (i driver per il tuo hardware) non abbia difetti di sicurezza, avere un dispositivo rilevabile non dovrebbe fare alcuna differenza fintanto che l'accoppiamento automatico è disattivato. Il peggio che qualcuno potrebbe fare è fare una richiesta di associazione che tu potresti poi rifiutare.

Il livello di accesso che un dispositivo Bluetooth ottiene a un sistema è interamente determinato dal modo in cui lo stack e i profili Bluetooth sono implementati e configurati, quindi non è davvero possibile rispondere direttamente a questa parte della domanda.

Forse il miglior parallelo sarebbe pensare al Bluetooth come a un piccolo server che fornisce una varietà di servizi diversi su un collegamento radio a corto raggio. I servizi offerti e le modalità di implementazione dei servizi possono differire notevolmente, ma il protocollo utilizzato per ciascun tipo di profilo è coerente. (Ad esempio, l'audio delle cuffie è un profilo comune, così come AVRCP (protocollo di controllo remoto audio/video)).

Per quanto riguarda l'accoppiamento, durante il processo di accoppiamento viene sviluppata una chiave segreta condivisa da utilizzare in futuro. Finché il segreto condiviso non viene trapelato da nessuno dei due dispositivi, un altro dispositivo non può impersonare quella coppia. Inoltre, fintanto che le comunicazioni sono crittografate con quella chiave, anziché solo con una stretta di mano, le comunicazioni stesse sarebbero sicure.

Secondo Wikipedia, la crittografia era facoltativa in Bluetooth prima della 2.1 e poteva essere facilmente violata se utilizzata per più di un giorno circa, tuttavia la 2.1 e le versioni più recenti di Bluetooth risolvono questo problema richiedendo la crittografia su qualsiasi cosa diversa dall'individuazione del servizio e una migliore gestione delle chiavi condivise.


Linux
  1. Che cos'è un Makefile e come funziona?

  2. Che cos'è un comando Chown in Linux e come usarlo

  3. Che cos'è un comando cURL e come utilizzarlo?

  4. Che cos'è la posta e come viene navigata?

  5. Come posso utilizzare i caratteri jolly in stile ms-dos con ls e mv?

Che cos'è chroot jail e come usarlo?

Linux Tail Command:cos'è e come usarlo

Come escludere file e directory con Rsync

Come connettersi tramite Bluetooth in GNOME su Linux

Come eseguire il backup e il ripristino di Ubuntu con TimeShift

Che cos'è Crontab e come automatizzare le attività in Linux con Crontab