/elektronik

Forskere har knækket sikkerheden på chipkort

Et hul i den overordnede protokol, der bruges på kreditkort med chipsikkerhed gør, at vilkårligt indtastede pinkoder bliver godkendt hver gang. PBS mener ikke, de danske dankort også er ramt.

Klik for at se billedet i stort

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


Læs mere om

Dokumentation

Af Jakob Møllerhøj , mandag 15. feb 2010 kl. 10:23

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.

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.



15. feb 2010 kl 11:38

Martin Daugaard

Rammer ikke danske Mastercard i udland?

"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)


15. feb 2010 kl 11:43

Michael Jensen


15. feb 2010 kl 11:51

Christian E. Lysel

Taler imod standarden.

Prøv at læs http://www.pbs.dk/da/produkter....pdf afsnit 2-11.

Hvis jeg kan ændre om "local PIN" validering er OK eller ej, hvor langt er vi så fra at ændre hvilken betingelser kortet stiller for valideringen?


15. feb 2010 kl 12:04

Rune Jacobsen

Re: Rammer ikke danske Mastercard i udland?

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."


15. feb 2010 kl 12:06

avatar

Poul-Henning Kamp

Substansen...

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


15. feb 2010 kl 13:02

Claus Nielsen

Hvordan misbruges dette?

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.


15. feb 2010 kl 13:19

avatar

Thomas Scherrer

Re: Hvordan misbruges dette?

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


15. feb 2010 kl 13:20

Christian E. Lysel

Re: Hvordan misbruges dette?

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/...aspx

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


15. feb 2010 kl 13:29

avatar

Lars Lundin

Re: Hvordan misbruges dette?

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.


15. feb 2010 kl 13:35

Christian E. Lysel

Re: Re: Hvordan misbruges dette?


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.


15. feb 2010 kl 13:46

avatar

Lars Lundin

Re: Re: Re: Hvordan misbruges dette?

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.


15. feb 2010 kl 14:08

Christian E. Lysel

Re: Re: Re: Re: Hvordan misbruges dette?

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.


15. feb 2010 kl 15:20

Hans Hansen

Re: Rammer ikke danske Mastercard i udland?


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


15. feb 2010 kl 15:46

avatar

Jens Fallesen

Re: Re: Hvordan misbruges dette?

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å lidt har man da tænkt over …


15. feb 2010 kl 20:46

Frithiof Andreas Jensen

Re: Re: Re: Hvordan misbruges dette?

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

Eller, når man nu *er* igang med at hacke: Et DOS (eller bidetangs) angreb på terminalen.


15. feb 2010 kl 21:03

Jens Madsen

En traditionel fejl

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.


15. feb 2010 kl 23:10

Benny Amorsen

Re: Re: Rammer ikke danske Mastercard i udland?

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.


16. feb 2010 kl 00:03

avatar

Poul-Henning Kamp

Re: Re: Re: Rammer ikke danske Mastercard i udland?


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


Ny i debatten? Opret en brugerkonto

  • Seneste nyt
  • Mest læste
  • Topdebat
Populært på Facebook
 

Nyhedsbrev

Tilmeld dig vores nyhedsbrev.