Praxisbeispiel MiFare

Ähnliche Dokumente
RFID & der MIFARE Hack

Begrife RFID NFC Gerhard Klostermeier 2

Kaba Partnerforum 2013 MIFARE Basiswissen für Partner

Gone in 360 Seconds Hijacking with Hitag2

Einführung in die Kryptographie

Welche Normen spezifizieren APDUs als Teil des Protokolls? ISO/IEC

RFID Zwischen Paranoia und Innovation. Frank Rosengart

RFID-Sicherheit. Theorie und Praxis. Gerhard Klostermeier. Hochschule für Technik und Wirtschaft Aalen. 24. September 2013

Die Chipkarte kommt! - Info-Veranstaltung für Studierende der HAW Hamburg Thorsten Ebert IT Beratung

Die (Un-)Sicherheit von DES

SmartMX, NFC & Arygon. Ralf Kretschmann, Achim Kretschmann, Bernd Fleischmann

Vortrag Die Thoska-Karte in der Kritik. Jena, den 23. Januar 2009 Proseminar Alltag Überwachung (WS 08/09) Referent: Matthias Gothe

RFID + Wiegand Kurzanleitung

Batteriegestütze Transponder in ISO/IEC Eine neue Transponder-Klasse

Near Field Communication (NFC) in Cell Phones

Fakultät Informatik, Proseminar Technische Informationssysteme Sind Handyverbindungen abhörsicher?

Die Gefahren von RFID, TPM/TC & Co.

ISO7816. Spezifiziert die wesentlichen Merkmale von Chipkarten. Unterteilt in:

CodeMeter. Ihr Führerschein zum Kryptographie-Experten. Rüdiger Kügler Professional Services

Mehr als nur ein Passwort: Wie sicher sind Smartcards? Technologien, Angriffe und Schutzmaßnahmen David Oswald, Kasper & Oswald GmbH

Rechneranmeldung mit Smartcard oder USB-Token

Angewandte Kryptographie. Mathematical Weaknesses of Cryptosystems

HANDBUCH LSM KARTENMANAGEMENT

Busse. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

Socrative-Fragen aus der Übung vom

Busse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Funktion und Einsatz von RFID

Bestandteile eines RFID-Systems

Grundlagen der Verschlüsselung und Authentifizierung (1)

Alice (A) und Bob (B) wollen sicher kommunizieren (vgl. Schutzziele) Oskar (O) versucht, die Schutzziele zu durchbrechen

9.5 Blockverschlüsselung

Inhaltsverzeichnis. Wolfgang Ertel. Angewandte Kryptographie. ISBN (Buch): ISBN (E-Book):

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Analyse des Studentenausweises und daraus resultierende Hacks Gerhard K.

Sicherheit von PDF-Dateien

Kryptologie. Bernd Borchert. Univ. Tübingen SS Vorlesung. Teil 10. Signaturen, Diffie-Hellman

17 Ein Beispiel aus der realen Welt: Google Wallet

Kryptografie in UHF Tags Aktueller DIN-Vorschlag zur Standardisierung einer Crypto-Suite

Netzsicherheit. Teil 7: CSS und DeCSS. Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit

Vorlesung Sicherheit

Chaos-based Image Encryption

RFID - Radio Frequency Identification

Perspektiven der Sicherheit kryptographischer Verfahren gegen starke Angreifer

4 Kryptologie. Übersicht

Teil 1: Digitale Logik

Vergleich von RFID Systemen. EM 410x, 125kHz hitag, 125kHz mifare 13,56 MHz Legic 13,56 MHz. Allgemeine Funktionsweise:

2.4 Diskussion und Literaturempfehlungen Lessons Learned A ufgaben Literatur... 62

Do It Yourself: Power Analysis

Angewandte Kryptographie

Wie sicher sind eigentlich die Daten auf dem biometrischen Pass?

Chiptunes Wie musikalisch ist mein Mikrocontroller?

Grundlagen WLAN. René Pfeiffer 18. Juni CaT. René Pfeiffer (CaT) Grundlagen WLAN 18.

Asymmetrische Verschlüsselungsverfahren

RFID Angriffe von Abhören bis Mini-Malware

Hardware Logik-Analysatoren

Sicherheitsrisiken bei WLAN

Peg-Solitaire. Florian Ehmke. 29. März / 28

Vorlesung Sicherheit

Kapitel 9: Kryptographie: DES. Java SmartCards, Kap. 9 (1/19)

Teil 1: Digitale Logik

OpenBeacon Proximity - 2.4GHz RFID - 4. Wildauer Symposium RFID und Medien

Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik

Grundlagen und Anwendungsgebiete von Chipkarten

T. Schneider: Datensparsamkeit durch effizientes Rechnen unter Verschlüsselung

RFID TECHNOLOGIE R F I D FREQUENZBÄNDER HERSTELLER CHIPTYPEN AUFBAU EINES RFID-CHIPS CODIERUNG & AUSLESEN VON DATEN RFID ALS IDENTIFIKATIONSMITTEL

5. Aufgabenblatt mit Lösungsvorschlag

Verwendung von kryptographischen Schlüsseln in Fahrzeugnetzen. Alexander Kiening Fraunhofer AISEC

Wireless Security. IT Security Workshop Moritz Grauel Matthias Naber

CPU, GPU und FPGA. CPU, GPU und FPGA Maximilian Bandle, Bianca Forkel 21. November 2017

Adaption eines Conditional Access Systems für Eureka 147 DAB

Secure Sockets Layer (SSL) Prof. Dr. P. Trommler

N Bit Binärzahlen. Stelle: Binär-Digit:

Demonstrator für hochratige RFID- und NFC-Systeme

Erinnerung Blockchiffre

Großer Beleg. Arithmetische Optimierung eines kryptographischen Algorithmus für moderne FPGA-Architekturen. Peter Heinzig. 17.

Systemtheorie 1. Einführung Systemtheorie 1 Formale Systeme 1 # WS 2006/2007 Armin Biere JKU Linz Revision: 1.4

Asymmetrische Verschlüsselungsverfahren

Stream Cipher. Stromverschlüsselung. Mario Preishuber ( ) Thomas Hütter ( )

Transkript:

Praxisbeispiel MiFare in der Vorlesung Systemsicherheit Johannes Schlumberger asso@0xbadc0ee.de Friedrich-Alexander-Universität Erlangen/Nürnberg 11. Dezember 2008 Johannes Schlumberger Praxisbeispiel MiFare 1/

Inhalt 1 Überblick über MiFare 2 Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres 3 4 Johannes Schlumberger Praxisbeispiel MiFare 2/

Überblick über MiFare Johannes Schlumberger Praxisbeispiel MiFare 3/

technische Grundlagen passive, kontaktlose Smartcard RFID-Standard (Radio Frequency Identication) ISO/IEC 14443-2:2001(E) Standard 1 physikalische Eigenschaften (Gröÿe, Leistungsaufnahme, etc) 2 Codierung der Funkübertragung 3 Protokoll (Antikollission, etc) und Kommandosatz 4 Frequenzbereich (13.56 Mhz) Karte hat nichtüchtigen Speicher modellabhängig gegenseitige Authentizierung vor Speicherzugrien Crypto-1, shared secret (vom Betreiber des Systems festgelegt) eindeutige UID ab Werk fest Johannes Schlumberger Praxisbeispiel MiFare 4/

Kartenarten MiFare ist ein Warenzeichen von NXP-Semiconductors (Philips-spin-o) weltweit Milliarden Karten im Einsatz Johannes Schlumberger Praxisbeispiel MiFare 5/

Kartenarten MiFare ist ein Warenzeichen von NXP-Semiconductors (Philips-spin-o) weltweit Milliarden Karten im Einsatz Speicher Crypto Sonstiges UID Ultralight 64 Byte - 32 OTP-Bits 7 Byte Classic (Standard) 4 KByte Crypto-1-4 byte Weitere Varianten z.b. MiFare-DESFire - später Johannes Schlumberger Praxisbeispiel MiFare 5/

Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres Johannes Schlumberger Praxisbeispiel MiFare 6/

Eintrittskarten Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres Fussballweltmeisterschaft 2006 RFID-Karten personalisiert über Kundennummer und UID nur optisch lesbar auch Name des Inhabers unerlaubte Weitergabe invalidiert das Ticket RFID-Lesegeräte an den Stadioneingängen Schwarzmarkthandel eingeschränkt Johannes Schlumberger Praxisbeispiel MiFare 7/

Warentracking Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres in Kaufhäusern, Warenlagern, bei grossen Abnehmern, etc Produkt/Paket hat aufgedruckten RFID-Chip einfache Erfassung bei Lieferung/Kauf (WALMART) eventuell automatisierte Abrechnung eigentlich nur UID nötig Johannes Schlumberger Praxisbeispiel MiFare 8/

Warentracking Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres Privacy in Kaufhäusern, Warenlagern, bei grossen Abnehmern, etc Produkt/Paket hat aufgedruckten RFID-Chip einfache Erfassung bei Lieferung/Kauf (WALMART) eventuell automatisierte Abrechnung eigentlich nur UID nötig Chips werden nicht deaktiviert. Tracking von Kunden auch auÿerhalb des Geschäfts durch Zusammenführen von Leserdaten möglich. Grundsätzliches Problem der RFID-Technologie. Johannes Schlumberger Praxisbeispiel MiFare 8/

Fahrkartensysteme Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres MiFare Ultralight für einfache Fahrten (alle gleichartig, keine Tarifzonen) bis zu 32 Einzelfahrten einfach per OTP realisierbar nicht gebuchte Fahrten bei Kauf entwerten Johannes Schlumberger Praxisbeispiel MiFare 9/

Fahrkartensysteme Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres MiFare Ultralight für einfache Fahrten (alle gleichartig, keine Tarifzonen) bis zu 32 Einzelfahrten einfach per OTP realisierbar nicht gebuchte Fahrten bei Kauf entwerten MiFare Classic für komplexere Fahrkarten Karte hält Datum, Zugbindung, Personenbindung evtl. Preis verschlüsselt abgelegt Kontrolleuer mit Lesegerät ausgestattet Authentizität der Karten anhand der UID-Range prüfbar Johannes Schlumberger Praxisbeispiel MiFare 9/

Zugangssysteme Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres verschiedene Variationen denkbar Leser speichern UID Leser speichern UID und Berechtigungen Berechtigung verschlüsselt auf der Karte abgelegt Backendsystem prüft anhand der UID die Berechtigungen Backendsystem prüft anhand der UID und verschlüsselter Kartendaten Johannes Schlumberger Praxisbeispiel MiFare 10/

Bezahlsysteme Überblick über MiFare Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres in vielen Mensen,... MiFare Classic Karten best. Kommandos zum sicheren Lesen und Schreiben von Geldbeträgen sicher bzgl. Datenintegrität und Vertraulichkeit Lesegeräte modizieren die Geldbeträge beim Auaden und Bezahlen verschiedene Schlüssel für Schreiben und Lesen möglich Johannes Schlumberger Praxisbeispiel MiFare 11/

Weitere Anwendungsmöglichkeiten Eintrittskarten Warentracking Fahrkartensysteme Zugangssysteme Bezahlsysteme Weiteres Es existieren zahlreiche weitere Anwendungen Autoschlüssel sog. Firmenkreditkarten Personalausweise/Reisepässe (EU, UNO Empfehlung) Bücherei/Videotheksausweise 24h Videotheken Kopierkarten, Getränkeautomaten,... UMTS (Universal Mate Tracking System)... Johannes Schlumberger Praxisbeispiel MiFare 12/

Johannes Schlumberger Praxisbeispiel MiFare 13/

Kartenemulator Wenn man einen Emulator hätte UID einstellbar Inhalte frei wählbar Karten clonbar, wenn Inhalt des Originals lesbar immer möglich für Ultralight, Crypto-1 bei Classic Johannes Schlumberger Praxisbeispiel MiFare 14/

Kartenemulator Wenn man einen Emulator hätte Tada! UID einstellbar Inhalte frei wählbar Karten clonbar, wenn Inhalt des Originals lesbar immer möglich für Ultralight, Crypto-1 bei Classic Solche Projekte existieren und sogar unter freien Lizenzen (SW und HW-Design) (z.b. http://openpicc.org, http://proxmark.org) Johannes Schlumberger Praxisbeispiel MiFare 14/

OpenPICC MiFareClassic Chip Atmega Microcontroller 32-bit-ARM 64 Kbyte SDRAM 256 Kbyte Flash kontrolliert MiFare Chip voll programmierbar Johannes Schlumberger Praxisbeispiel MiFare 15/

Lesegerät OpenPCD Schwesterprojekt des OpenPICC vollständige Kontrolle über RFID-Signal weitere Hardware on board Johannes Schlumberger Praxisbeispiel MiFare 16/

Wenn man den Cipher gebrochen hätte freie Manipulation von Inhalten auch auf MiFare Classic Erzeugung gültiger verschlüsselter Inhalte auf dem Emulator beliebige verschlüsselte Inhalte mit beliebiger UID Auslesen fremder Kartendaten Cipher zu brechen ist ein lohnenswertes Ziel Johannes Schlumberger Praxisbeispiel MiFare 17/

Crypto-1 proprietärer Cipher von NXP Semiconductors Website verrät: stromsparender als AES approved authentication advanced security levels 48-Bit key (Brute Force: 2 48 keys 25ms 230.000 Jahre) key wenig Information security by obscurity Johannes Schlumberger Praxisbeispiel MiFare 18/

Crypto-1 proprietärer Cipher von NXP Semiconductors Website verrät: stromsparender als AES approved authentication advanced security levels 48-Bit key (Brute Force: 2 48 keys 25ms 230.000 Jahre) key wenig Information security by obscurity Kerckhos Maxime Die Sicherheit eines Verschlüsselungsverfahrens beruht auf der Geheimhaltung des Schlüssel, und nicht auf der Geheimhaltung des Verschlüsselungsalgorithmus. Johannes Schlumberger Praxisbeispiel MiFare 18/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen 3 Fotos machen Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen 3 Fotos machen 4 Bildanalysesoftware schreiben die best. Gatemuster sucht Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen 3 Fotos machen 4 Bildanalysesoftware schreiben die best. Gatemuster sucht 5 Flipopreihen / XOR-Dichte hoch? / autonomer Teil? Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen 3 Fotos machen 4 Bildanalysesoftware schreiben die best. Gatemuster sucht 5 Flipopreihen / XOR-Dichte hoch? / autonomer Teil? 6 Schaltung reproduzieren Johannes Schlumberger Praxisbeispiel MiFare 19/

Reverse Engineering Gruppe CCC-naher Hacker 1 MiFarekarte in Aceton auösen Chip 2 mittels Poliergerät für Optiklinsen abschleifen 3 Fotos machen 4 Bildanalysesoftware schreiben die best. Gatemuster sucht 5 Flipopreihen / XOR-Dichte hoch? / autonomer Teil? 6 Schaltung reproduzieren Schaltplan des Algorithmus Johannes Schlumberger Praxisbeispiel MiFare 19/

Was fällt auf? 1 PRNG nur 16 bit (Gleicher Zustand alle 0.6 Sekunden) Wert hängt von Anschaltezeit ab Timing durch Open{PICC,PCD} kontrollierbar Zufallszahlen kontrollierbar Johannes Schlumberger Praxisbeispiel MiFare 20/

Was fällt auf? 1 PRNG nur 16 bit (Gleicher Zustand alle 0.6 Sekunden) Wert hängt von Anschaltezeit ab Timing durch Open{PICC,PCD} kontrollierbar Zufallszahlen kontrollierbar 2 LFSR (linear feedback shift register) basierte Crypto rückgekoppeltes Schieberegister jeden Takt wird rausfallendes Bit mit anderen verxort und rückgekoppelt mathematisch leicht beschreibbar (rein linear) üblicherweise mit nichtlinearen Funktionen gekoppelt (nicht hier) Charakteristisches Polynom des PNRG-LFSR ist Beispiel von Wikipedia Johannes Schlumberger Praxisbeispiel MiFare 20/

Was heisst das? sehr schwacher PRNG keine komplexen (nichtlinearen) Funktionen in der Schaltung mathematisch gut beschreib- und handhabbar insbes. möglich den Zustand des LFSR voraus und rückwärts zu berechnen, wenn Zustand zu einem Zeitpunkt bekannt ist Johannes Schlumberger Praxisbeispiel MiFare 21/

Was heisst das? sehr schwacher PRNG keine komplexen (nichtlinearen) Funktionen in der Schaltung mathematisch gut beschreib- und handhabbar insbes. möglich den Zustand des LFSR voraus und rückwärts zu berechnen, wenn Zustand zu einem Zeitpunkt bekannt ist known-plaintext-attack auf den key vermutlich deutlich ezienter als brute-force Johannes Schlumberger Praxisbeispiel MiFare 21/

FPGA-Cluster einfach auf FPGAs zu implementieren $100-Cracker 14 FPGA-Boards 1 Woche aber: known plaintext nötig Johannes Schlumberger Praxisbeispiel MiFare 22/

Algebraischer Angri Summary of Claims We can recover the full 48-bit key of MiFare Crypto-1 algorithm in 200 seconds on one 1.66 GHz Centrino CPU, given 1 known IV and 50 output bits (from one single encryption). With 4 chosen IVs we can recover the key in 12 seconds. (Karsten Nohl e.a., April 2008) Johannes Schlumberger Praxisbeispiel MiFare 23/

Algebraischer Angri Summary of Claims We can recover the full 48-bit key of MiFare Crypto-1 algorithm in 200 seconds on one 1.66 GHz Centrino CPU, given 1 known IV and 50 output bits (from one single encryption). With 4 chosen IVs we can recover the key in 12 seconds. (Karsten Nohl e.a., April 2008) Algorithmus in einfache Schritte zerlegen symbolische boolesche Gleichungen über F x 2 Einschluss von IV, keybits, outputbits Übersetzung in SAT-Problem SAT-Solver Johannes Schlumberger Praxisbeispiel MiFare 23/

LFSR-Rollback Crypto-1 basiert ebenfalls auf LFSR ohne nichtlineare Funktionen shared secret ist IV Rückrechnung möglich wenn Zustand zu einem Zeitpunkt bekannt Sning in der Authentizierungsphase daraus aktuellen Zustand berechnen anschliessend rollback (in Software) Schlüssel Kommunikation vollständig entschlüsselbar (eavesdropping) Johannes Schlumberger Praxisbeispiel MiFare 24/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID 6 Karte antwortet mit Typ (MiFare Classic) Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID 6 Karte antwortet mit Typ (MiFare Classic) 7 Reader schickt auth-request Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID 6 Karte antwortet mit Typ (MiFare Classic) 7 Reader schickt auth-request 8 Karte antwortet mit challenge Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID 6 Karte antwortet mit Typ (MiFare Classic) 7 Reader schickt auth-request 8 Karte antwortet mit challenge 9 Reader antwortet mit challenge und response Johannes Schlumberger Praxisbeispiel MiFare 25/

Authentizierungsprotokoll gegenseitige Authentizierung 1 Reader loopt Request card 2 Karte bekommt Strom und meldet sich 3 Reader fragt ab welche Karten im Feld sind 4 Karten antworten mit UID 5 Reader selektiert eine Karte über UID 6 Karte antwortet mit Typ (MiFare Classic) 7 Reader schickt auth-request 8 Karte antwortet mit challenge 9 Reader antwortet mit challenge und response 10 Karte schickt response an Leser Johannes Schlumberger Praxisbeispiel MiFare 25/

im Trace Step Sender base 16 Bedeutung 01 Leser 26 req type A 02 Karte 04 00 answer req 03 Leser 93 20 select 04 Karte c2 a8 2d f4 b3 uid, checksumme 05 Leser 93 70 c2 a8 2d f4 b3 ba a3 select(uid) 06 Karte 08 b6 dd MiFare 1K 07 Leser 60 30 76 4a auth(block 30) 08 Karte 42 97 c0 a4 c K 09 Leser 7d db 9b 83 67 eb 5d 83 c R 1, ks r R ks 2 10 Karte 8b d4 10 08 r K ks 3 Johannes Schlumberger Praxisbeispiel MiFare 26/

Weitere Erkenntnisse Bitipping (UID, c K ), wiederholtes sning und Analyse Crypto-1 initialisiert während Authentizierungsphase Key in LFSR (7) dann c K uid in LFSR shiften (9) c R in LFSR shiften (10) Möglichkeit jetzigen LFSR-Zustand zu bestimmen existiert (11) Johannes Schlumberger Praxisbeispiel MiFare 27/

Code u i n t 6 4 _ t r e c o v e r _ k e y ( s t r u c t s n i f f d a t a s d ) { s t r u c t C r y p t o 1 S t a t e r e v s t a t e ; uint32_t ks2, ks3 ; u i n t 6 4 _ t l f s r ; / * k s 2 = s u c 2 ( t a g _ c h a l l e n g e ) ^ e n c A r ( s u c 2 = 2 *3 2 s t e p s ) * / ks2 = sd >reader_response_enc ^ prng_ successor ( sd >tag_ challenge, 6 4 ) ; / * k s 3 = s u c 3 ( t a g _ c h a l l e n g e ) ^ e n c A t ( s u c 3 = 3 * 3 2 s t e p s ) * / ks3 = sd >tag_response_enc ^ prng_ successor ( sd >tag_ challenge, 9 6 ) ; / * r e v e r s e, and c o m p u t e the c u r r e n t l s f r s t a t e f r o m k e y s t r e a m * / l f s r _ r e c o v e r y (& r e v s t a t e, ks2, k s 3 ) ; / * r o l l b a c k l f s r to g e t k e y * / l f s r _ r o l l b a c k (& r e v s t a t e, 0, 0 ) ; l f s r _ r o l l b a c k (& r e v s t a t e, 0, 0 ) ; l f s r _ r o l l b a c k (& r e v s t a t e, sd >r e a d e r _ c h a l l e n g e _ e n c, 1 ) ; l f s r _ r o l l b a c k (& r e v s t a t e, sd >u i d ^ sd >t a g _ c h a l l e n g e, 0 ) ; } c r y p t o 1 _ g e t _ l f s r (& r e v s t a t e, & l f s r ) ; r e t u r n l f s r ; Johannes Schlumberger Praxisbeispiel MiFare 28/

Emulator und Crypto-1 Ursprüngliche Sicherheitsziele Datenvertraulichkeit Datenintegrität Authorisierung Authentizierung Verbindlichkeit Johannes Schlumberger Praxisbeispiel MiFare 29/

Emulator und Crypto-1 Ursprüngliche Sicherheitsziele Datenvertraulichkeit Datenintegrität Authorisierung Authentizierung Verbindlichkeit KTHNXBYE Alle Sicherheitsziele verletzt und angreifbar! Das System ist restlos oen. Johannes Schlumberger Praxisbeispiel MiFare 29/

Johannes Schlumberger Praxisbeispiel MiFare 30/

Lösungen? MiFare DESFire können 3DES/AES neue Leser die Classic/DESFire können aber Austausch aller Reader (und aller Karten) notwendig das kostet! Johannes Schlumberger Praxisbeispiel MiFare 31/

Lösungen? MiFare DESFire können 3DES/AES neue Leser die Classic/DESFire können aber Austausch aller Reader (und aller Karten) notwendig das kostet! Backendsysteme alle Transaktionen auf Schattenkonten laufende Prüfung durch Backendsystem Alarm bei Ungereimtheiten (Fehlalarm) Daten auf Karte unsinnig Leser müssen dauerhaft online sein das kostet! Johannes Schlumberger Praxisbeispiel MiFare 31/

Lektion gelernt? Kerckhos Maxime security by obscurity hilft nur kurzzeitig fehlende peer reviews kosten später richtig Geld MiFare Classic nur für Kleinstwerte ausreichend sicher Johannes Schlumberger Praxisbeispiel MiFare 32/

Lektion gelernt? Kerckhos Maxime security by obscurity hilft nur kurzzeitig fehlende peer reviews kosten später richtig Geld MiFare Classic nur für Kleinstwerte ausreichend sicher... und im Alltag Augen oenhalten nach interessanten RFID Anwendungen ;-) Johannes Schlumberger Praxisbeispiel MiFare 32/

Literatur Henryk Plötz, MiFare Classic - eine Analyse der Implementierung. Diplomarbeit, Humboldt-Universität zu Berlin, 2008. Flavio D. Garcia e.a., Dismantling MiFare Classic. Radboud University Nijmegen, 2008. Karsten Nohl, Henryk Plötz, MiFare, little security, despite obscurity. Präsentation auf der 24C3 des Chaos Computer Clubs in Berlin, 2007. Auguste Kerckhos, La cryptographie militaire. Journal des Sciences Militaires IX, 5-38, 1883. Karsten Nohl, Henryk Plötz, D. Evans, starbug Reverse-engineering a cryptographic RFID tag. USENIX Security 2008, 2008. Johannes Schlumberger Praxisbeispiel MiFare 33/