Britse onderzoekers hebben een manier gevonden om betalingen via Apple Pay uit te voeren terwijl de telefoon vergrendeld is. Dat kan met Visa-kaarten als een gebruiker de Express-modus aan heeft staan. De onderzoekers kunnen het signaal omzeilen.
De onderzoekers van de universiteiten van Birmingham en Surrey beschrijven in een paper hoe ze een betaling kunnen uitvoeren met een iPhone zonder daarbij authenticatie via Face ID of Touch ID te gebruiken. Dat kan alleen als de Apple Wallet in de Express-modus is gezet. Dat is een modus waarmee gebruikers in bepaalde gevallen hun telefoon niet hoeven te ontgrendelen om een betaling te doen of een kaart te scannen. Express-modus werkt voor een aantal kaarten, zoals openbaartransportkaarten in de Londense metro. Reizigers hoeven daar hun telefoon niet te ontgrendelen voor ze door een toegangspoort lopen, omdat die toegangspoort het type kaart op de telefoon automatisch herkent.
In het onderzoek wisten de wetenschappers de communicatie tussen de iPhone en een kaartlezer met een man-in-the-middle-aanval te simuleren. Dat doen ze door de zogeheten Magic Bytes-string te onderscheppen en die via een eigen apparaat naar de iPhone van een slachtoffer te sturen. Magic Bytes is hoe Apple de communicatiestroom noemt tussen een EMV-kaartlezer en een iPhone. Daardoor denkt de iPhone dat het contact legt met een kaartlezer binnen een geautoriseerde kaartlezer die in het OV wordt gebruikt, maar dat kan dus ook een kaartlezer zijn van de hackers.
De onderzoekers wisten vervolgens de Card Transaction Qualifiers aan te passen die bedoeld zijn om een limiet te zetten op het aantal transacties dat kan worden uitgevoerd, en op de hoogte daarvan. In de praktijk wisten de onderzoekers zo een transactie van duizend pond van een telefoon te halen. Dat gebeurde op een iPhone 7, maar ook een recentere iPhone 12.
De aanval werkt alleen met Visa-kaarten in de Apple Wallet. Mastercard-kaarten hebben nog een extra controlemechanisme. Dat voorkomt dat een iPhone dergelijke transacties accepteert vanaf iedere willekeurige kaartlezer. Naast een Magic Bytes-string moet een terminal ook een specifieke code meesturen die verifieert dat het een geautoriseerd apparaat is, maar dat gebeurde niet.
Volgens de onderzoekers ligt het probleem bij het gebrek aan een verificatie bij Apple in combinatie met een gebrek aan checks bij Visa. Bij bijvoorbeeld Samsung Pay wordt een Visa-kaart wel geverifieerd. De onderzoekers zeggen dat ze hun bevindingen hebben doorgegeven aan zowel Apple als Visa. Beide bedrijven verwijzen echter naar elkaar en hebben geen oplossing voor het probleem aangedragen in de afgelopen maanden.