Forskere har knækket sikkerheden på chipkort

Engelske forskere har fundet frem til et sikkerhedshul i chipkortsystemet EMV (Europlay, MasterCard og Visa). Med et angreb kan det lade sig gøre narre en kortlæser til at acceptere en vilkårlig pinkode - altså uanset, hvilke fire cifre, der bliver indtastet.

Angrebet er et såkaldt man-in-the-middle baseret angreb. I forbindelse med en almindelig verificeringsproces testes den indtastede pinkode op mod en kode, der ligger på chippen i kortet. Hvis pinkoden matcher, sender kortet koden 0x9000 retur til terminalen, der betyder, at den indtastede kode er accepteret.

Forskerne har indsat en bærbar computer, med et python-script og et FPGA-board mellem en smartcard-læser, der læser det originale kreditkort og så terminalen, der kommunikerer med kortudsteder.

Engelske forskere har nu knækket den sikkerhed, der beskytter chipkort som Visa og MasterCard. Illustration: Getty Images

Med setuppet er det lykkedes at omdirigere godkendelsesprocessen, hvorefter koden 0x9000 bliver returneret til terminalen hver gang, mens chippen på kortet får at vide, at der er brugt en anden valideringsform, nemlig underskrift. Det skriver ZDnet og flere andre medier.

Kan ikke bruges i pengeautomater

Tricket kan imidlertid kun lade sig gøre, hvis godkendelsen af den indtastede pinkode sker ved at sammenligne med den kode, der ligger på chippen i kortet. Det betyder, at det ikke kan lade sig gøre at misbruge angrebet i eksempelvis en pengeautomat i en bank, hvor den indtastede kode bliver verificeret op mod en central server.

Hos danske PBS, der står for terminalsikkerheden i Danmark, mener pressechef Søren Winge ikke umiddelbart, at angrebet vil kunne misbruges mod eksempelvis de chipbaserede Dankort, fordi pinkoder valideres centralt i modsætning til flere andre lande.

»I Danmark har vi et "online to issuer" set-up, så man validerer PIN-koden centralt ved at terminalen ringer op til PBS. Koden valideres ikke i teminalen, som det er tilfældet mange andre steder. Det skyldes dels historikken med Dankortsystemet, samt at vi i Danmark i vidt omfang anvender online miljøer,« oplyser Søren Winge til Ingeniøren.

Søren Winge fortæller desuden, at danskere heller ikke løber ind i problemer, hvis de bruger deres MasterCard i for eksempel England. I de danske kort ligger der nemlig en betingelse på chippen, der betyder, at hvis ikke kortet kan verificere pinkoden op mod en centralserver, så skal underskrift benyttes som autentifikation i stedet.

Dokumentation

ZDnet: Chip and PIN is broken, say researchers
Forskningsresultatet (PDF): Chip and PIN is Broken

sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først

"I de danske kort ligger der nemlig en betingelse på chippen, der betyder, at hvis ikke kortet kan verificere pinkoden op mod en centralserver, så skal underskrift benyttes som autentifikation i stedet. "

Er det ikke netop det der blev udnyttet? Der sendes besked om at der verificeres vha. underskrift til PBS, mens der reelt gives besked om at der er tastet en korrekt kode til terminalen. Ellers har jeg fået det galt ind :o)

  • 0
  • 0

Som jeg forstår det er teksten i artiklen ikke helt korrekt. Kig evt. på side 3 i PDFen.

Verificeringen foregår lokalt (mellem kort og terminal), kortet afviser (da PIN er forkert), den pågældende pakke (mellem kort og terminal) opsnappes og i stedet sendes en "rogue" pakke til terminalen om at PIN er korrekt.

Hvis det andet skulle være tilfældet, skulle PIN krypteres eller hashes på en måde så den kunne sendes på en sikker måde til en centralserver, der så kunne verificere PIN og sende et krypteret svar tilbage.

Afsnit IV på side 5 beskriver et helt scenarie: "Through a serial link, the FPGA is connected to a laptop, which is in turn connected to a standard smart card reader from Alcor Micro ($8) into which the genuine card is inserted. A Python script running on the laptop relays the transaction while waiting for the Verify command being sent by the terminal; it then suppresses it to the card, and responds with 0x9000. The rest of the communication is unaltered."

  • 0
  • 0

Substansen her, er ikke hvilke bits der er sat for danske kort, men at protokollen er usikker som designet.

At kortet sender en fast kode tilbage som "OK" er jo torskedumt, det skal naturligvis en kryptografisk signatur som kan valideres som kommende fra kortet...

Poul-Henning

  • 0
  • 0

Umiddelbart kan dette så vidt jeg kan se kun bruges til at misbruge stjålne chipkort, hvor pinkoden ikke er kendt.

Det kræver desuden adgang til en uovervåget og/eller modificeret kortterminal for at kunne opsnappe kommunikationen mellem terminalen og kortet.

Dette kunne så sagtens være en ATM et eller andet sted i udlandet, men de er typisk stadig videoovervågede (hvilket selvfølgelig ikke afskrækker alle kriminelle, men i det mindste burde forbedre efterforskningsmulighederne).

Men den vigtigste pointe er vel stadigvæk - pas på dit kort. Hvis det bliver stjålet kan det misbruges, så anmeld tyveri med det samme og få kortet spærret.

  • 0
  • 0

Det kræver desuden adgang til en uovervåget og/eller modificeret kortterminal for at kunne opsnappe kommunikationen mellem terminalen og kortet.

hvorfor tror du det ? man kan da sagtens lave et kort uden chip og bruge tynde disscrete ledninger til det rigtige kort og FPGA dimsen i en taske på ryggen, dem der står ved siden af vil ikke kunne se hvad du har gang i, og et uskarpt overvågnings kamera vil næppe kunne se ledningerne, hvis du trækker dem i ærmet, og "tilfældigt" holder hånden over kortet og koden du lader som om du taster.

Det skal altid smarte hackere til at checke systemer sådan at normale udviklere kan forbedre deres systemer, det er jo helt normalt. Desværre er det ikke alle hackere der har lige gode hensigter, som bare at gøre opmærksom på sikerheds problemerne

  • 0
  • 0

Claus Nielsen,

modificeret kortterminal for at kunne opsnappe kommunikationen mellem terminalen og kortet.

Du behøver ikke slæbe hele setup'et med.

Setup'et bør kunne pakkes ned i en mikrokontroller der sidder på bagsiden. På forsiden klæbes kontaktflader imod kortet og terminalen.

Terminalen kan måske drive strømmen til mikrokontrolleren, det kan evt. slåes op i http://www.pbs.dk/en/products/Certificatio...

Det ligner et angreb til 10 kr, som butik/bank personalet ikke vil bemærke.

  • 0
  • 0

Umiddelbart kan dette så vidt jeg kan se kun bruges til at misbruge stjålne chipkort, hvor pinkoden ikke er kendt.

Det tror jeg ikke.

Så vidt jeg forstår spørger terminalen kortet om den indtastede kode er korrekt. Hvis terminalen er kompromitteret, kan den sættes til at spørge om hver af de maksimalt 10^4 PINs, indtil den rammer den rigtige.

Det virker som en dårlig ide at tillade transaktioner, hvor der ikke kommunikeres med kortudstederen.

  • 0
  • 0

Så vidt jeg forstår spørger terminalen kortet om den indtastede kode er korrekt. Hvis terminalen er kompromitteret, kan den sættes til at spørge om hver af de maksimalt 10^4 PINs, indtil den rammer den rigtige.

Nej ... kortet kvittere med et OK hvis PIN koden er rigitig ... en angriber sætter sig mellem kortet og terminalen og svarer OK, selv når PIN koden er forkert. Herefter er transaktionen valideret med en ugyldig PIN kode.

Det virker som en dårlig ide at tillade transaktioner, hvor der ikke kommunikeres med kortudstederen.

Dette kan skyldes en data linie fejl, eller fejl hos PBS ... terminalerne kører derefter offline.

  • 0
  • 0

kortet kvittere med et OK hvis PIN koden er rigitig ... en angriber sætter sig mellem kortet og terminalen og svarer OK, selv når PIN koden er forkert. Herefter er transaktionen valideret med en ugyldig PIN kode.

OK.

Men udover at kunne misbruge kortet i den kompromitterede terminal, lyder det også som om angrebet kan bruges til at få oplyst kortets PIN. Herefter skulle der så være frit slag i enhver (kontant-)automat.

  • 0
  • 0

Men udover at kunne misbruge kortet i den kompromitterede terminal, lyder det også som om angrebet kan bruges til at få oplyst kortets PIN. Herefter skulle der så være frit slag i enhver (kontant-)automat.

Terminalen er ikke kompromitteret, men forbindelsen mellem kortet og terminalen er kompromitteret.

Hermed kan man snyde kortet til at sige OK, når terminalen spørger om PIN'en er gyldig ... det er ikke ensbetydende med kortets PIN kan oplyses.

  • 0
  • 0

Er det ikke netop det der blev udnyttet? Der sendes besked om at der verificeres vha. underskrift til PBS, mens der reelt gives besked om at der er tastet en korrekt kode til terminalen. Ellers har jeg fået det galt ind :o)

Ja, hvis du forsøger ovenstående vil transaktionen blive afvist. Uden at have læst rapporten, vil jeg gå ud fra at det drejer sig om offline transaktioner med chip+pin, hvor pin altså verificeres af chippen på kortet og ikke online. Men den funktion er så ikke aktiv i danske kort

  • 0
  • 0

Så vidt jeg forstår spørger terminalen kortet om den indtastede kode er korrekt. Hvis terminalen er kompromitteret, kan den sættes til at spørge om hver af de maksimalt 10^4 PINs, indtil den rammer den rigtige.

Dette trick kan ikke bruges, idet kortet efter tre fejlforsøg holder op med at besvare yderligere forsøg på at gætte koden. Så [i]lidt[/i] har man da tænkt over …

  • 0
  • 0

Fejlen, er så almindeligt, indenfor smart-kort, at den i mange år har gået som en joke. Tror det er 15 år siden, at de første kort, med den type fejl kom - her var det ikke en "ok kode", men en ok bit. Og det betød, at du med en simpel loddekolbe, kunne modificere smartkortet, til at sige ok hele tiden. De blev brugt i franske telefonautomater. Med en loddekolbe, og en strip ledning, kunne man opnå noget, der svarede til Anders Ands "genbrugsmønt". Det med en "ok" bit, eller en "ok" kode, har lige siden været en joke i smartcard sammenhæng.

Det kan vist ikke undre nogen, at en ingeniør har bygget den ind. Og det viser tydeligt, en total mangel på sikkerhed i projektet.

Det gælder altid, at man aldrigt bare siger "ok", til hverken pinkoder eller andet. Hellerikke på det elektroniske niveau. Der må hellerikke være "ok" koder på en ledning i terminalen, eller på ledningen mellem supermarked og central. Ok koder, må kun bruges, hvor de ikke har sikkerhedsmæssig karakter, f.eks. kan de bruges, for at fortælle en automat er oppe, eller et kort er isat. Men, de må ikke indgå i selve sikkerheden, så at det betyder noget for sikkerhed, hvis ok koden sættes på manuelt, eller med noget elektronik.

Efterhånden tror jeg, at rejsekortet er mere sikkert. Burde bankerne "købe" teknologien? Hvis et RFID kort bruges, går jeg dog ind for, at der enten skal monteres en kontakt på kortet, som skal aktiveres når kortet bruges aflæses, eller at den skal have en fotocelle, så der kan modtages data via lys, og at den dermed altid er slukket, hvis den opbevares i pung, eller der lægges en finger over chippen, så lyset afskærmes. Rejsekortet, er allerede lavet, så det kun er at ændre lidt i RFID kortet, og modulere det blå lys.

  • 0
  • 0

Uden at have læst rapporten, vil jeg gå ud fra at det drejer sig om offline transaktioner med chip+pin, hvor pin altså verificeres af chippen på kortet og ikke online. Men den funktion er så ikke aktiv i danske kort

Det er IKKE offline-transaktioner, der angribes. Det er online-transaktioner. De får terminalen til at vise PIN OK på skærmen så angriberen får varen, mens banken og kortet tror, at der bliver underskrevet på gammeldags vis.

Angrebet kan forhindres ved kun at tillade PIN, dvs. forbyde underskrift. Held og lykke med det.

  • 0
  • 0

Angrebet kan forhindres ved kun at tillade PIN, dvs. forbyde underskrift. Held og lykke med det.

Det har man da i stort omfang afskaffet ved at hæve transaktionsgebyret.

På samme vis kan Folketinget eliminere svindlen med kreditkort totalt: Lad kortudstederen bære alle tab og omkostninger ved alle former for kortsvindel.

Hvis ikke Visa/Mastercard positivt kan bevise at det var kortindehaveren der brugte kortet, betaler de.

Vi har teknologien, men den koster flere penge end kortfirmaerne er villige til at bruge så længe de kan smide regningen efter forbrugerne.

Det var f.eks en stor sejr for dem at få fjernet fotoet fra Dankortet for dermed kan kunden ikke argumentere at "damen der brugte kortet havde ikke fuldskæg", hvilket en sag om et stjålet kort blev vundet på I Danmark.

Hvis regningen havner hos dem der kan gøre noget ved sikkerheden, skal sikkerheden nok blive god nok.

Poul-Henning

  • 0
  • 0
Bidrag med din viden – log ind og deltag i debatten