Google Wallet bevat een beveiligingsprobleem op geroote toestellen. Een kwaadwillende die beschikking heeft over een geroote smartphone, kan eenvoudig de encryptie van de pincode met een brute force-aanval achterhalen.
De kwetsbaarheid wordt uit de doeken gedaan door beveiligingsbedrijf Zvelo, naar aanleiding van een onderzoeksrapport van Via Forensics over de mogelijke risico's van Google Wallet. Op een Android-smartphone met de Google Wallet-app, wordt de pincode als sha256-hash opgeslagen. Ondanks het gebruik van een salt is het achterhalen van de code eenvoudig: omdat een pin uit vier cijfers bestaat zijn er slechts 10.000 hashes mogelijk, waardoor het onttrekken van de pin middels een brute force-aanval eenvoudig is.
Een pin kan bij Google Wallet maximaal vijf keer foutief ingevoerd worden, daarna blokkeert de app zichzelf. Deze beveiligingsmaatregel wordt compleet omzeild door direct de juiste cijfercombinatie te ontfutselen, schrijft Zvelo. Dat kan door gegenereerde hashes stuk voor stuk te vergelijken met de hash van de Wallet-pincode: op een root-toestel is die hash uit te lezen. Komen de gegenereerde hash en de Wallet-hash uiteindelijk overeen, dan is de pincode achterhaald.
Google is op de hoogte gebracht van de kwetsbaarheid, maar zegt na onderzoek weinig te kunnen doen. De enige echte oplossing zou zijn om de pin-verificatie bij de banken neer te leggen, waardoor de beveiliging van het Wallet-betaalsysteem drastisch veranderd moet worden.
Wel is de impact van het lek beperkt. Zo moet het Android-toestel geroot zijn, want standaard draait Android apps in een sandbox. Ook moet een aanvaller de beschikking over het toestel hebben en de eigenaar van de smartphone moet dan ook geen lock-screen-beveiliging ingesteld hebben. Momenteel ondersteunen alleen Googles eigen Nexus en Galaxy Nexus de Wallet-dienst.