Simpelt trick omgår Paypals 2-faktor-autentifikation

En bug har gjort det muligt at logge på en Paypal-konto uden 2-faktor-autentifikation, selvom den sikrere login-metode er aktiveret.

Betalingstjenesten Paypal har lukket en sårbarhed, der gjorde det muligt at omgå tjenestens 2-faktor-autentifikation.

Det fortæller The Register.

2-faktor-autentifikation vil sige, at det udover det traditionelle brugernavn og password er nødvendigt med yderligere information i forbindelse med et login. Det kan eksempelvis være et engangskodeord fra en sidekanal som en sms eller et NemID-papkort.

Tanken er, at sikkerheden på den måde bliver øget væsentligt, fordi det ikke længere er muligt for en hacker at udføre et angreb alene ved, at denne skaffer sig adgang til eller gætter brugernavn og password.

Det er Shawar Khan fra Vulnerability Labs, der har opdaget den nu patchede Paypal-sårbarhed. Sårbarheden forudsætter dog, at en bruger er logget ind med brug af almindeligt password og brugernavn et andet sted. Nemlig Paypals 'Paypal Preview'-portal.

Sårbarheden har ifølge Kahn kunnet efterprøves på følgende vis.

  1. Åbn PayPal UK-loginportalen i en ny tab i browseren og hold den åben.
  2. Åbn endnu en tab med Paypal Preview-loginportalen.
  3. Login via portalen i punkt 2.
  4. Indtast login-oplysningerne, man nu bliver bedt om.
  5. Opdater siden som blev åbnet i punkt 1.
  6. Nu er brugeren logget ind i Paypal-UK-tabben, uden at 2-faktor-autentifikationen har været i brug.

2-faktor-autentifikationen er med andre ord ikke blevet aktiveret i forbindelse med login på Preview-portalen, og dette login slår igennem i tabben med Paypal UK og giver adgang til brugerkontoen.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (3)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#1 Henrik Pedersen

Det vil sige de har haft sat en session alla:

"Awaiting_login_user_id" => 55220.

Og så har de "samlet den op" senere når brugeren var blevet godkendt af de sidste steps, og sat "user_logged_in_id" => 55220.

For at gøre det endnu bedre har de så duplikeret deres kode (code smell!), i stedet for at have et fælles API, auth server eller anden måde at holde det ens på, og så er koden ikke blevet opdateret med to-faktor authentikation i Preview portalen, så den bare foretog det gamle login tjek, og satte den gamle session variabel, som stadig fortolkes på samme måde i det nye system.

Det er 110% pga. kopiering af kode, og jeg undrer mig over hvor de ellers sjusker henne. Puha!

Jeg har personligt implementeret et sådan system også, og for at undgå det her for fremtiden eller andre "uheld" har jeg en ganske specifik "USER_AUTHED_WITH_TWO_FACTOR" som sættes til en hash af user_id og en "HASH_KEY" som sættes i config filen, som tjekkes igen hver gang bruger login tjekkes for denne del af siden.

På den måde kan man heller ikke få kopieret noget ved et uheld, og det er almen praksis at nye installationer får nye keys inklusive "HASH_KEY" så andre delsystemer som ville blive copy pasted ville ikke fungere her og resultere i fejl / anden dum opførsel, men aldrig et gyldigt login. Eftersom vores config data IKKE er gemt sammen med vores kode, så vil det kræve bevidst onde intentioner / dumhed for at kunne duplikere det PayPal har oplevet.

(For de interesserede er HASH_KEY bare en "dummy" string som generes tilfældigt, og bruges når man ønsker at salte hasten af diverse ikke-sikkerheds-kritiske ting, "just for good measure" - netop for at forhindre kollisioner som disse - Du kan kalde det for en form for skjult prefix, hvor man ønsker at dataene stadig er almindelige hashes.)

  • 3
  • 0
#2 Michael Hansen

Det er selvfølgelig træls de ikke har styr på det og det kan omgås, men synes det er ret irriterende at two factor overhovedet ikke er muligt i DK med paypal, og de totalt ignorerer nogen som helst mails vedr. det (man får de samme copy paste svar, der besvarer nada af det man skrev om) hver gang.

Somewhat related, er også mega irreterende at diverse virksomheder ikke bare kan følge de standarder der er for TOTP/HOTP (rfc6238/rfc4226), så man kan bruge en fælles standards based authenticator til det hele, istedet for at være tvungen til en bestemt app. (blizzard looking at you, steam looking at you as well).

  • 1
  • 0
#3 Kim Brouer

I danske web-shops, eller med en dansk konto?

Det var ikke muligt, som dansk bruger, at få 2 factor i starten, men jeg har da i nogen tid fået en SMS-kode, når jeg betaler med PayPal. Jeg bruger dog kun PayPal i udenlandske butikker.

  • 0
  • 0
Log ind eller Opret konto for at kommentere