Android apps verifiëren SSL certificaat niet

Tijdens het uitvoeren van een man-in-the-middle (MITM) aanval binnen een geïsoleerde Wi-Fi testomgeving, ontdekte ik dat een tweetal Android apps het beveiligingscertificaat niet verifieert tijdens het opzetten van een SSL/TLS verbinding met servers op internet. Hierdoor was het in beide gevallen mogelijk om inloggegevens te onderscheppen die (als gevolg van de aard van de apps) toegang geven tot privacygevoelige- en bedrijfsvertrouwelijke gegevens. De twee leveranciers (waarvan ik de namen niet zal noemen) zijn inmiddels op de hoogte gebracht, erkennen het probleem, en werken aan een oplossing.

Het relatieve gemak waarmee tegenwoordig een Wi-Fi MITM kan worden uitgevoerd, vergroot het risico van deze bevinding aanzienlijk. Zelf maak ik voor het uitvoeren van een dergelijke aanval gebruik van de WiFi Pineapple en Burp Suite. Nadat mijn Android telefoon is verbonden met een nep hotspot (verzorgd door de WiFi Pineapple), stuur ik het HTTP en HTTPS verkeer via een bedrade verbinding door naar de intercepting proxy van Burp op een laptop, om vervolgens via de draadloze verbinding van deze laptop te verbinden met de desbetreffende servers op internet.

Indien correct geconfigureerd probeert Burp de HTTPS verbinding tussen de laptop en mijn Android telefoon te forceren naar HTTP (net zoals sslstrip), zodat het verkeer tussen mijn Android telefoon en de servers afgeluisterd of gemanipuleerd kan worden. Als dat niet lukt, schotelt Burp mijn Android telefoon (in plaats van de beveiligingscertificaten van de servers) een eigengemaakt/vervalst beveiligingscertificaat voor. Als de apps het gebruik van het vervalste certificaat accepteren, kan de verbinding tussen mijn Android telefoon en de servers afgeluisterd of gemanipuleerd worden. Echter, de meeste apps zullen (net zoals webbrowsers) een foutmelding geven indien de geldigheid van het beveiligingscertificaat niet kan worden geverifieerd. Iets in de zin van: “de website die u probeert te bezoeken gebruikt een ongeldig beveiligingscertificaat”. Bij de twee door mij geteste apps is dat dus niet het geval; er wordt ongeacht het certificaat gewoon een verbinding opgezet. Slordig.

Zo blijkt maar weer dat het naïef is om ervan uit te gaan dat gerenommeerde bedrijven hun zaakjes goed op orde hebben. Zelfs in dit geval, waarin beide apps een expliciete rol vervullen in de toegangscontrole tot vertrouwelijke (bedrijfs)gegevens, en het aantal downloads in de Play Store bij de een ruim één miljoen en bij de ander ruim een half miljoen bedraagt. Dat zegt dus niks over de veiligheid van dergelijke apps.

Afbeelding: Krebs on Security.

0 antwoorden

Plaats een Reactie

Meepraten?
Draag gerust bij!

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.