Zum Inhalt springen
Neuigkeiten 8 Min. Lesezeit

FireID Connect: Anmeldung per QR-Code und 24fire-App

Mit FireID Connect meldest du dich per QR-Code und 24fire-App im Control Panel an, ohne Passwort und Zwei-Faktor-Code. Wir erklären, wie die Anmeldung technisch abläuft, auf welchen kryptografischen Verfahren sie beruht und wie sie gegen Angriffe abgesichert ist.

Lars Kiefer

Lars Kiefer

Mit FireID Connect bekommt das Control Panel einen weiteren Anmeldeweg. Die Anmeldeseite zeigt einen QR-Code, du scannst ihn mit der 24fire-App und bestätigst die Anmeldung auf deinem Smartphone. E-Mail-Adresse, Passwort und Zwei-Faktor-Code gibst du dabei nicht ein.

Voraussetzung ist die 24fire-App für iPhone oder Android auf einem Gerät, das mit deinem Konto gekoppelt ist. Die bisherigen Anmeldewege mit Passwort, Zwei-Faktor-Code und Passkeys bleiben unverändert bestehen.

Wer sich ohne Passwort anmeldet, fragt sich zu Recht, wie sicher das ist. Über das Control Panel verwaltest du Server, Domains und Guthaben, und entsprechend hoch ist unser Anspruch an jeden Anmeldeweg. FireID Connect bietet ein deutlich höheres Schutzniveau als die Anmeldung mit Passwort und Zwei-Faktor-Code, denn es wird kein Geheimnis übertragen, das sich abfangen, erraten oder an anderer Stelle wiederverwenden ließe. Damit du das selbst beurteilen kannst, erklären wir in diesem Beitrag nach einer kurzen Anleitung, wie eine Anmeldung technisch abläuft, auf welchen kryptografischen Verfahren sie beruht und wie sie gegen Angriffe abgesichert ist.

Anmeldung in drei Schritten

  1. Wähle auf der Anmeldeseite „Mit FireID Connect anmelden“. Der Browser zeigt einen QR-Code, der rund zwei Minuten gültig ist und danach automatisch erneuert wird.
  2. Tippe in der 24fire-App auf der Übersicht auf das QR-Symbol und scanne den Code. Die Kamera deines Smartphones erkennt den Code ebenfalls und führt dich in die App.
  3. Die App zeigt, welcher Browser sich anmelden möchte, mit IP-Adresse, Land und Uhrzeit. Du bestätigst mit Face ID, Fingerabdruck oder der Displaysperre. Der Browser ist anschließend angemeldet.

Mehr ist für die Anmeldung nicht nötig. Die folgenden Abschnitte beschreiben, was dabei im Hintergrund geschieht und warum Dritte diesen Ablauf nicht für sich nutzen können.

Technischer Ablauf

Eine Anmeldung besteht aus vier Vorgängen zwischen deinem Browser, der 24fire-App und unseren Systemen.

Anfrage erzeugen. Wenn du FireID Connect öffnest, erzeugen unsere Systeme zwei voneinander unabhängige Zufallswerte aus einem kryptografisch sicheren Zufallsgenerator. Der erste wird im QR-Code dargestellt. Der zweite wird an die Sitzung des Browsers gebunden, der den Code anzeigt. Er ist weder im QR-Code enthalten noch für die App sichtbar. Angaben zu einem Konto enthält der QR-Code nicht.

Code einlösen. Die App überträgt den gescannten Wert über ihre angemeldete Verbindung an 24fire. Jeder Code wird dort nur ein einziges Mal angenommen. Anschließend legen unsere Systeme eine Freigabe-Anfrage an, die an das scannende Gerät gebunden ist, und erzeugen dafür eine Challenge. Das ist ein weiterer Zufallswert, der nur für diese eine Anfrage gilt.

Freigabe signieren. Die App zeigt die Eckdaten der Anmeldung an. Nach deiner Bestätigung erzeugt das Smartphone eine digitale Signatur. Sie umfasst die Kennung der Anfrage, die Challenge, den Zweck „Anmeldung“, einen Hash der angezeigten Eckdaten und deine Entscheidung. Eine Ablehnung wird auf dieselbe Weise signiert.

Prüfen und abholen. Wir prüfen die Signatur mit dem öffentlichen Schlüssel deines Geräts. Ist sie gültig, kann der Browser die Anmeldung abholen. Das gelingt nur der Sitzung, an die der zweite Zufallswert aus dem ersten Schritt gebunden ist, und nur ein einziges Mal. Bevor die Sitzung im Browser entsteht, durchläuft das Konto dieselben Prüfungen wie bei jeder anderen Anmeldung.

Kryptografische Grundlage

FireID Connect beruht auf asymmetrischer Kryptografie mit elliptischen Kurven. Dieselbe Verfahrensklasse verwenden auch Passkeys nach dem FIDO2-Standard und SSH-Schlüssel.

Schlüsselpaar pro Gerät. Beim Koppeln erzeugt dein Smartphone ein Schlüsselpaar. Der private Schlüssel liegt im hardwaregestützten Schlüsselspeicher des Geräts, lässt sich nicht auslesen und wird erst nach Face ID, Fingerabdruck oder Displaysperre für eine Signatur freigegeben. An 24fire wird nur der öffentliche Schlüssel übertragen. Mit ihm lassen sich Signaturen prüfen, aber nicht erzeugen. Schon bei der Kopplung prüfen wir, ob der übermittelte Schlüssel dem vorgesehenen Verfahren entspricht, und weisen alle anderen ab.

Challenge-Response-Verfahren. Bei einem Passwort wird das Geheimnis selbst übertragen. Bei FireID Connect schicken unsere Systeme einen Zufallswert an die App, und das Smartphone weist mit seiner Signatur nach, dass es den privaten Schlüssel besitzt. Der Schlüssel selbst wird nie übertragen. Wer die Verbindung mitliest, erhält nichts, was sich für eine weitere Anmeldung verwenden ließe.

Signatur über die konkrete Anfrage. Die Signatur gilt für genau eine Anfrage mit genau den Eckdaten, die die App angezeigt hat. Zwei Prüfungen stellen das sicher. Die App berechnet den Hash der angezeigten Eckdaten selbst und zeigt die Anfrage nicht an, wenn er von dem Wert abweicht, den wir ihr übermittelt haben. Auf unserer Seite wird die zu prüfende Nachricht aus den bei uns gespeicherten Werten zusammengesetzt. Aus der Antwort der App wird dafür nichts übernommen.

Einmalwerte. Die Challenge wird mit der Entscheidung verbraucht. Beides geschieht in einem einzigen Schritt, sodass zwischen Entscheidung und Verbrauch keine Lücke bleibt. Eine zweite Entscheidung zur selben Anfrage ist damit ausgeschlossen.

Speicherung als Hash. Der Wert aus dem QR-Code und der Wert der Browser-Sitzung liegen in unserer Datenbank nur als Einweg-Hash vor.

Die Sicherheit des Verfahrens hängt damit am privaten Schlüssel im Smartphone und nicht daran, dass der Ablauf geheim bleibt. Deshalb können wir ihn hier beschreiben. Nicht veröffentlicht werden lediglich Betriebsparameter wie die Grenzwerte der Missbrauchserkennung.

Schutz vor Angriffen und Manipulation

Abfotografierter oder weitergeleiteter QR-Code. Der Wert im QR-Code reicht nicht aus, um eine Sitzung zu erhalten. Abholen kann die Anmeldung nur der Browser, der den Code erzeugt hat. Wer deinen Code abfotografiert, kommt damit nicht in dein Konto.

Nachgebaute Anmeldeseite. Der wichtigste Angriff auf jede Anmeldung per QR-Code ist das sogenannte QRLjacking. Ein Angreifer erzeugt dabei in seinem eigenen Browser einen Code und zeigt ihn dir auf einer gefälschten Seite, damit du ihn scannst und bestätigst. Dagegen wirken drei Maßnahmen. Die App zeigt vor der Bestätigung Browser, IP-Adresse und Land der anfragenden Sitzung, in diesem Fall also die Daten des Angreifers, und diese Angaben sind Teil der Signatur. Der echte Browser zeigt nach dem Scan an, mit welchen Angaben er in der App erscheint, sodass du beide Anzeigen vergleichen kannst. Außerdem gilt ein Code nur rund zwei Minuten für Scan und Bestätigung zusammen. Die Entscheidung bleibt trotzdem bei dir: Passen die Angaben in der App nicht zu deinem Browser, lehne die Anfrage ab. Scanne Codes nur auf cp.24fire.de und gib sie nicht weiter.

Wiederholtes Einspielen einer Freigabe. Jede Signatur enthält die Challenge ihrer Anfrage. Da die Challenge mit der Entscheidung verbraucht wird, passt eine mitgeschnittene Signatur zu keiner späteren Anfrage. Auch das Einlösen des Codes und das Abholen der Anmeldung im Browser sind jeweils nur einmal möglich.

Erraten von Codes. Die Zufallswerte sind so lang, dass sich ein gültiger Code innerhalb seiner Gültigkeit nicht durch Ausprobieren finden lässt. Zusätzlich ist begrenzt, wie viele Codes in einem Zeitraum erzeugt und eingelöst werden können. Unbekannte, abgelaufene und bereits eingelöste Codes beantworten unsere Systeme gleich, sodass sich aus den Antworten nicht ablesen lässt, ob ein Code existiert.

Veränderte Anmeldedaten. Werden die Eckdaten auf dem Weg zur App verändert, passt der von der App berechnete Hash nicht mehr zu dem Wert, den wir übermittelt haben, und die App zeigt die Anfrage nicht an. Eine Signatur über andere als die bei uns gespeicherten Daten weisen wir zurück.

Freigabe von einem anderen Gerät. Entscheiden kann nur das Gerät, das den Code gescannt hat. Maßgeblich ist der Schlüssel, mit dem signiert wird. Ein kopiertes Sitzungs-Token der App genügt deshalb nicht, denn der private Schlüssel verlässt das Smartphone nicht.

Zugriff auf die Datenbank. In unserer Datenbank liegen Hashes der Codes und öffentliche Schlüssel. Aus beidem lässt sich weder ein gültiger Code noch eine gültige Signatur erzeugen.

Zwei-Faktor-Authentifizierung

FireID Connect fragt keinen Zwei-Faktor-Code ab, auch wenn du die Zwei-Faktor-Authentifizierung aktiviert hast. Die Freigabe enthält bereits zwei Faktoren: den Besitz des gekoppelten Smartphones mit seinem privaten Schlüssel sowie Face ID, Fingerabdruck oder Displaysperre auf dem Gerät. Ein sechsstelliger Code ist ein Wert, der sich abfangen und an anderer Stelle eingeben lässt. Eine Signatur ist an eine einzelne Anfrage gebunden und außerhalb dieser Anfrage wertlos.

Die übrigen Prüfungen deines Kontos gelten unverändert. Ein deaktiviertes oder vorübergehend geschütztes Konto lässt sich auch über FireID Connect nicht anmelden.

Verlust des Smartphones

Jede Freigabe setzt Face ID, Fingerabdruck oder die Displaysperre voraus. Ein gesperrtes Smartphone in fremder Hand lässt sich daher nicht für eine Anmeldung verwenden. Zusätzlich kannst du die Kopplung in den Sicherheitseinstellungen deines Kontos aufheben. Signaturen dieses Geräts nehmen wir danach nicht mehr an. Passwort, Zwei-Faktor-Einstellungen und Passkeys bleiben davon unberührt, du kannst dich also weiterhin wie gewohnt anmelden.

Einrichtung

  1. Lade die 24fire-App für iPhone oder Android und kopple dein Gerät. Wie das geht, zeigt die Vorstellung der App.
  2. Wähle bei der nächsten Anmeldung im Control Panel „Mit FireID Connect anmelden“.

Fragen und Rückmeldungen nimmt unser Support per Ticket entgegen.

Themen: #Sicherheit #24fire #App #FireID Connect
Lars Kiefer

Geschrieben von

Lars Kiefer

Das könnte dich auch interessieren

24fire jetzt auch als App für ios und android
Neuigkeiten 4 Min. Lesezeit

Die 24fire-App ist da – für iPhone und Android

Mit der 24fire-App verwaltest du deine Server, Webspaces und Domains, beantwortest Support-Tickets und bestätigst Anmeldungen direkt auf dem Smartphone. Die App ist kostenlos im App Store und bei Google Play erhältlich.

Lars Kiefer

Überzeuge dich selbst.

Teste deinen Server 24 Stunden kostenlos – automatisch eingerichtet, mit vollem Zugang zum Control Panel. Danach endet er von selbst.