La connessione RFCOMM Bluetooth senza pairing e senza password è sicura?

3

Ho programmaticamente stabilito una connessione RFCOMM Bluetooth tra un PC desktop (client) e un Raspberry Pi (server, Bluetooth 4.1). Non c'è richiesta di password e nessuna richiesta di abbinamento durante il processo. Sono sicuro che la connessione funzioni perché sono in grado di inviare dati tra loro.

Non sono sicuro che la connessione RFCOMM sia crittografata, comunque. Le informazioni trovate sul Web sono vaghe o sembrano qualificare la condizione di sicurezza solo per dispositivi accoppiati o situazioni in cui vengono fornite le password. Ci sono anche indizi che le connessioni RFCOMM potrebbero essere al sicuro dopo tutto (ad esempio qui ). Non sono sicuro.

Qualcuno può dare una risposta definitiva?

    
posta Nick Lee 01.09.2017 - 12:15
fonte

1 risposta

0

È probabile che tu non abbia alcuna resistenza contro gli attacchi man-in-the-middle.

Ci sono due standard qui, Bluetooth (BT) e Bluetooth Low Energy (LE). Ognuno ha un approccio diverso alla crittografia e all'autenticazione e può supportare più livelli di sicurezza.

NIST ha un documento abbastanza fantastico sulla sicurezza Bluetooth su cui attingerò per la mia risposta, dal momento che è molto completo ma anche abbastanza facile da seguire.

BT ha quattro modalità di sicurezza in cui un dispositivo può operare. I dettagli di ciò che ciascuna modalità può fare sono piuttosto complessi, quindi lo semplificherò così: Modalità di sicurezza 1 non ha autenticazione o crittografia, Modalità sicurezza 2 impone l'autenticazione e la crittografia a livello di servizio, ma non autentica o cripta il livello di collegamento, la Modalità di protezione 3 è l'autenticazione e la crittografia al collegamento in seguito e la Modalità di protezione 4 è una versione più sicura della modalità 2 con più livelli di sicurezza che consentono selezione di autenticazione, nessuna autenticazione o sicurezza completamente disabilitata per ogni servizio offerto.

Durante l'autenticazione, BT utilizza uno qualsiasi dei numerosi metodi di scambio delle chiavi. Il più comunemente visto è un PIN di 4 cifre, che è una modalità di autenticazione legacy. C'è anche il supporto per i pin più lunghi, inclusa la voce alfanumerica, che offre maggiore sicurezza. Quindi hai Secure Simple Pairing (SSP) che funziona con Security Mode 4, che consente l'autenticazione tramite PIN, password, un meccanismo non autenticato chiamato "Just Works" (crittografia ma nessuna resistenza a MitM) e out-of-band ( OOB) scambio di chiavi su Internet, NFC o un altro canale.

LE ha il supporto per l'autenticazione, la crittografia e la firma, ma deve essere inserito in una delle due modalità di sicurezza. Ogni modalità ha livelli che controllano il tipo di sicurezza in uso.

  • Modalità di sicurezza 1 ha le seguenti opzioni:
    1. Nessuna autenticazione o crittografia.
    2. Nessuna autenticazione, ma il traffico è crittografato.
    3. Accoppiamento e crittografia del traffico autenticati.
  • Modalità di sicurezza 2 ha le seguenti opzioni:
    1. Accoppiamento non autenticato con la firma dei dati.
    2. Accoppiamento autenticato con la firma dei dati.

L'autenticazione è anche abbastanza configurabile. È possibile eseguire l'autenticazione OOB, che comporta lo scambio della chiave temporanea su un altro meccanismo di trasporto (ad esempio Internet, NFC), oppure è possibile utilizzare la voce PIN (molto comune) per generare la chiave temporanea su ciascun dispositivo. Esiste anche un meccanismo chiamato "Just Works", lo stesso di BT, che imposta la chiave temporanea su tutti gli zeri, che consente comunque la crittografia del trasporto, ma chiunque monitora le comunicazioni durante l'handshake può ottenere la chiave a lungo termine e decrittografare il traffico .

RFCOMM è un servizio sotto BT e LE, quindi la tua sicurezza dipende dal protocollo che stai utilizzando, dalla modalità di sicurezza in cui ti trovi e dal livello che utilizzi dove applicabile. Come hai detto che non stai affatto abbinando, mi viene da pensare che stai probabilmente usando LE, che non è realmente progettato per l'accoppiamento nello stesso modo in cui lo è BT. In entrambi i casi, non stai inserendo un PIN o esegui alcun tipo di autenticazione, il che significa che non hai affatto nessuna crittografia di trasporto (es. BT Security Mode 1 o LE Security Mode 1, Level 1) o hai abilitato la crittografia di trasporto ma su uno scambio di chiavi non autenticato (es. LE Security Mode 1, Level 2). In entrambi i casi puoi annusare il traffico con uno strumento come Ubertooth One e scaricare i contenuti.

    
risposta data 01.09.2017 - 13:06
fonte

Leggi altre domande sui tag