Wie lässt sich macOS Sierra ohne Code sicher mit Bluetooth-Tastaturen koppeln?

8

Ich habe einen Mac Mini Ende 2014 mit macOS Sierra 10.12.5. Beim Koppeln mit meiner Bluetooth-Tastatur wurde ich nicht aufgefordert, eine Zahlenfolge einzugeben.

Wie überprüft und sichert macOS Verbindungen zwischen Bluetooth-Tastaturen, ohne zur Eingabe eines Codes aufzufordern? Verwendet es nur Trust-on-First-Verwendung? Ist es möglich, macOS zur Verwendung eines Pairing-Codes zu zwingen?

Eric Pruitt
quelle
Ist Ihre Bluetooth-Tastatur eine Apple-Tastatur?
Jahhein
@ Jahhein, nein ist es nicht.
Eric Pruitt
Das ist dann eine sehr gute Frage. Ich bin neugierig, selbst eine Antwort zu erfahren. Ich habe über Bluetooth gelesen und es fallen mir keine offensichtlichen Gründe ein, wenn es sich nicht um ein Apple-zertifiziertes Bluetooth-Gerät handelt.
Jahhein

Antworten:

6

TL; DR beantwortet Fragen

Wie überprüft und sichert macOS Verbindungen zwischen Bluetooth-Tastaturen, ohne zur Eingabe eines Codes aufzufordern?

Es ist nicht nur macOS - Ihre Tastatur ist auf Firmware-Ebene verbunden und verschlüsselt -, wenn dies nicht der Fall wäre, könnten Sie vor dem Laden des Betriebssystems keinen NVRAM-Reset durchführen.

Sie benötigen jedoch keinen Code, da moderne Bluetooth-Tastaturen einen Authentifizierungsalgorithmus zum Koppeln und einen generierten Authentifizierungsschlüssel basierend auf öffentlichen Schlüsseln verwenden, um die Datenübertragung zu sichern.

Verwendet es nur Trust-on-First-Verwendung?

Nein. Es überprüft seine Identität mithilfe eines Algorithmus und von 128-Bit-generierten Schlüsseln.

Ist es möglich, macOS zur Verwendung eines Pairing-Codes zu zwingen?

Warum? Dies würde auf Paarungsmethoden vor 2009 zurückgehen. Dies entspricht der Aktivierung von gemeinsam genutzten WEP-Schlüsseln in modernen WiFi-Netzwerken.


Bluetooth-Kopplung

Der von Ihnen beschriebene Vorgang zum Koppeln eines Bluetooth-Geräts (in Ihrem Beispiel eine Tastatur) verwendet eine alte Authentifizierungsmethode (Bluetooth 2.1), die als Simple Secure Pairing (SSP) bezeichnet wird.

Grundsätzlich verfügt SSP über 4 Assoziationsmodelle (Pairing-Modelle):

  • Numerischer Vergleich . Beide Geräte verfügen über eine Eingabe und Anzeige, sodass der Benutzer einfach "Ja" oder "Nein" auswählen kann, um das Gerät zu koppeln
  • Passkey Ein Gerät verfügt über Eingabefunktionen (wie eine Tastatur) und das andere über Anzeigefunktionen (wie ein Computer). Das Gerät mit Anzeigefunktion zeigt eine 4- bis 6-stellige Nummer an und das Gerät mit Eingabefunktion gibt diese ein.
  • Funktioniert nur Dies ist für Geräte ohne Anzeige- oder Eingabefunktion (wie Headsets), bei denen Sie keinen Passkey sehen oder eingeben können.
  • Out of Band (OoB) Dies ist für Geräte gedacht , die eine zusätzliche gemeinsame drahtlose Technologie (NFC) unterstützen, bei der sich die Geräte in unmittelbarer Nähe zueinander befinden müssen. Ein Gerät muss auf das andere Gerät "tippen", bevor eine Kopplung erfolgt.

Das Wichtigste ist, dass SSP NICHT der Verschlüsselungsschlüssel ist. Es ist lediglich der Paarungsmechanismus, um sich gegenseitig zu identifizieren . Die Verschlüsselung erfolgt über einen öffentlichen Schlüssel. Der von Ihnen eingegebene Code soll sicherstellen, dass dies das Gerät ist, mit dem Sie eine Verbindung herstellen möchten. Es ist nicht die Sicherheit.

Seit Bluetooth 3.0 (April 2009) verwenden Bluetooth-Geräte einen AMP-Schlüssel zur Authentifizierung, der den oben genannten Prozess automatisiert.

AMP-Schlüsselableitung Der AMP-Verbindungsschlüssel wird vom Bluetooth-Verbindungsschlüssel abgeleitet. Ein generischer AMP-Verbindungsschlüssel (GAMP_LK) wird vom AMP-Manager im Host-Stack generiert, wenn ein Bluetooth-Verbindungsschlüssel erstellt oder geändert wird

Authentifizierung

Das Authentifizierungsverfahren für Bluetooth-Geräte erfolgt in Form eines Challenge-Response-Schemas. Jedes Gerät interagiert in einem Authentifizierungsverfahren entweder als Antragsteller oder als Prüfer. Der Antragsteller ist das Gerät, das versucht, seine Identität nachzuweisen, und der Prüfer ist das Gerät, das die Identität des Antragstellers überprüft. Das Challenge-Response-Protokoll validiert Geräte, indem es die Kenntnis eines geheimen Schlüssels - des Bluetooth-Verbindungsschlüssels - überprüft.

Geben Sie hier die Bildbeschreibung ein

Verschlüsselung

Es gibt 4 Verschlüsselungsmodi

  • Modus 1 - Keine Verschlüsselung
  • Modus 2 - Individuell adressierter Verkehr wird basierend auf Schlüsseln verschlüsselt, die auf den Verbindungsschlüsseln basieren
  • Modus 3 - Der gesamte Datenverkehr wird mit Schlüsseln verschlüsselt, die auf dem Hauptschlüssel basieren
  • Modus 4 - (Bluetooth 2.1 + EDR) schreibt vor, dass der gesamte Datenverkehr mit Ausnahme der Diensterkennung verschlüsselt wird

Bluetooth-Tastaturen, die Bluetooth 2.1 (Tastaturen ab 2009 und darüber hinaus) verwenden und den gesamten Datenverkehr verschlüsseln.


QUELLE: SP 800-121 Rev. 2, Leitfaden zur Bluetooth-Sicherheit (Mai 2017)

Allan
quelle
Es hört sich so an, als ob Bluetooth im Allgemeinen während des Pairing-Vorgangs für MITM-Angriffe anfällig ist. Solange das Pairing jedoch sicher durchgeführt wurde, sollte die nachfolgende Kommunikation für das Abfangen anfällig sein. Ist mein Verständnis richtig?
Eric Pruitt
Nur wenn das Gerät schlechte Sicherheitspraktiken wie schwache und / oder statische Schlüssel, schwache Verschlüsselung, "Modus 1" -Sicherheit (keine) usw. verwendet. Jede Technologie weist Schwachstellen auf, aber das meiste, was BT anfällig macht, ist die Art und Weise, wie die Hersteller es implementieren. Bei einer Tastatur bleibt sie ständig gekoppelt (andernfalls können Sie Ihren Computer nicht aktivieren oder in einer Pre-Boot-Umgebung verwenden). In diesem Fall wäre es sehr schwierig, MITM zu werden, da zu Beginn des Angriffs das Pairing und die sichere Kommunikation bereits eingerichtet sind und funktionieren.
Allan