En säkerhetsproblem i PayPal med hög svårighetsgrad kunde utsätta användarnas lösenord för hackare

PayPal Security Vulnerability

Med över 286 miljoner aktiva konton är PayPal den absolut största och mest populära betalningsprocessorn i världen. Den har uppnått den titeln inte bara för att den tillhandahåller en pålitlig, lättanvänd tjänst, utan också för att dess utvecklare och programvaruingenjörer har implementerat ett antal säkerhetsfunktioner som ger användarna den sinnesfrid som de är ute efter när de behandlar betalningar online. Ironiskt nog hade en av dessa säkerhetsfunktioner ett fel i sig som kunde lämna användare utsatta för attacker mot kontot.

En säkerhetsekspert upptäcker en allvarlig PayPal-sårbarhet

Sårbarheten upptäcktes av Alex Birsan, en rumänsk konsult för informationssäkerhet och programvaruingenjör som också spenderar tid på jakt på buggar. Han tittade igenom PayPal inloggningsprocess när han märkte en JavaScript-fil som innehöll en CSRF-kod (Cross-Site Request Forgery) och ett session-ID. Birsan var fascinerad.

Han nämnde i sin offentliga avslöjande att att lämna denna typ av data i en JS-fil kan utsätta dem för hackare. Visst nog, genom att använda en teknik som kallas Cross-Site Script Inclusion (XSSI), satte han ihop ett scenario där en angripare skulle ha kunnat stjäla CSRF-token och session-ID från en användare som hade lurats att besöka en skadlig sida.

Ursprungligen tyckte Alex Birsan att detta var fruktansvärda nyheter. Han antog att token och session-ID var tillräckligt för att efterge sig en användare. Efter flera försök att ta över sitt eget konto insåg han dock att en framgångsrik attack skulle kräva mer arbete. Ändå pressade han på.

Sårbarheten gömmer sig i en säkerhetsfunktion som är utformad för att stoppa brute-force attacker

Efter mer utredning fann Birsan att CSRF-tokenet och session-ID faktiskt användes av PayPal CAPTCHA-mekanism. CAPTCHA, som står för Fullständigt automatiserad Public Turing-test för att berätta om Computers and Humans Apart, är en av de enklaste formerna för skydd mot attacker av brute-force.

Till skillnad från många andra onlinetjänster har PayPal beslutat att inte inkludera en CAPTCHA-utmaning under huvudinloggningsformuläret. Istället visas det på en tom sida efter ett förinställt antal misslyckade inloggningsförsök. När användaren har lyckats lösa CAPTCHA-utmaningen skickas en HTTP POST-förfrågan till PayPal, som förutom ovannämnda CSRF-token och session-ID också innehåller användarnamn och lösenord som användaren skrev in under det senaste inloggningsförsöket i ren text. Några mer huvudskrapningar senare var Alex Birsan redo med konceptet.

En angripare skulle först använda XSSI för att extrahera CSRF-token och session-ID som är giltigt för användarens webbläsare. Sedan skulle de göra några inloggningsförsök med slumpmässiga referenser, vilket skulle utlösa CAPTCHA-utmaningen. När användaren loggar in på sitt konto med samma webbläsare skulle de slumpmässiga användarnamn och lösenord skrivas över av giltiga referenser. Då behöver allt en attackerare behöva en annan CAPTCHA-token (som kan hämtas relativt enkelt med hjälp av en CAPTCHA-lösningstjänst) för att avslöja målets inloggningsdata i ren text.

PayPal går snabbt för att korrigera sårbarheten

Som ni kan se var det knappast en promenad i parken att hitta ett sätt att utnyttja felet. Icke desto mindre visade bevis-of-concept-attacken att om den lämnas obevakad, sårbarheten kan orsaka allvarliga ekonomiska förluster för vissa människor, varför, när Birsan lade fram sin rapport via PayPal's bug bounty-program på HackerOne-plattformen, gav han det en hög CVSS-poäng.

Den första rapporten skickades den 18 november, och efter 18 dagar validerade HackerOne äntligen Birsans resultat. PayPal erkände problemet och gick med på att det är ganska allvarligt. Den 10 december tilldelades Birsan en vinst på drygt 15 300 dollar (summan belönades endast för buggar med hög svårighetsgrad), och bara 24 timmar senare var sårbarheten redan korrigerad. Birsan beskrev hur snabbt PayPal löste frågan som "imponerande" - ett beröm som sällan ges ut idag.

January 14, 2020
Läser in...

Cyclonis Backup Details & Terms

The Free Basic Cyclonis Backup plan gives you 2 GB of cloud storage space with full functionality! No credit card required. Need more storage space? Purchase a larger Cyclonis Backup plan today! To learn more about our policies and pricing, see Terms of Service, Privacy Policy, Discount Terms and Purchase Page. If you wish to uninstall the app, please visit the Uninstallation Instructions page.

Cyclonis Password Manager Details & Terms

FREE Trial: 30-Day One-Time Offer! No credit card required for Free Trial. Full functionality for the length of the Free Trial. (Full functionality after Free Trial requires subscription purchase.) To learn more about our policies and pricing, see EULA, Privacy Policy, Discount Terms and Purchase Page. If you wish to uninstall the app, please visit the Uninstallation Instructions page.