Dit artikel is bedoeld voor ontwikkelaars met app(s) die een onveilige implementatie van de handler WebViewClient.onReceivedSslError gebruiken.
Wat er gebeurt
Een of meer van uw apps bevatten een onveilige implementatie van de handler onReceivedSslError, waardoor de app kwetsbaar wordt voor man-in-the-middle-aanvallen. Een aanvaller kan de content van de betreffende WebView wijzigen, overgedragen gegevens lezen (zoals inloggegevens) en code in de app uitvoeren met JavaScript. Bekijk de melding in uw Play Console. Na de deadlines die worden weergegeven in uw Play Console, kunnen apps met niet-opgeloste beveiligingsproblemen worden verwijderd uit Google Play.
Actie vereist
- Log in bij de Play Console en navigeer naar het gedeelte Meldingen om te zien welke apps het betreft en wat de deadlines zijn om deze problemen op te lossen.
- Update de betreffende apps en verhelp de kwetsbaarheid.
- Dien de geüpdatete versies van de betreffende apps in.
Nadat uw app opnieuw is ingediend, wordt deze opnieuw beoordeeld. Dit proces kan enkele uren duren. Als de app is goedgekeurd en is gepubliceerd, hoeft u verder geen actie te ondernemen. Als de app niet wordt goedgekeurd, wordt de nieuwe app-versie niet gepubliceerd en ontvangt u een e-mailmelding.
Aanvullende details
- U kunt het probleem oplossen door de code van uw app te updaten zodat SslErrorHandler.proceed() wordt aangeroepen als het door de server gepresenteerde certificaat voldoet aan uw verwachtingen. Anders moet SslErrorHandler.cancel() worden aangeroepen. Houd rekening met de volgende punten als u de geldigheid van het certificaat controleert:
-
Een app kan worden gemarkeerd als deze onvoldoende controles voor de geldigheid van het certificaat bevat. Alleen de geretourneerde waarde van getPrimaryError controleren is bijvoorbeeld niet voldoende om de geldigheid van het certificaat vast te stellen.
-
Het is niet veilig om de meeste SSL-fouten te negeren die worden geretourneerd door SslError.getPrimaryError. Houd er rekening mee dat getPrimaryError de ernstigste fout in een reeks fouten retourneert. Als
getPrimaryError() != SSL_UNTRUSTED
dus True is, kan de verbinding nog steeds een fout SSL_UNTRUSTED in de reeks fouten bevatten.
-
-
Als u een bibliotheek van derden gebruikt dit hiervoor verantwoordelijk is, stelt u de derde partij hiervan op de hoogte en werkt u samen met deze partij om het probleem te verhelpen.
Bekijk onze documentatie in het Helpcentrum voor Android-ontwikkelaars voor meer informatie over de SSL-foutenhandler. Voor andere technische vragen post u een bericht via https://www.stackoverflow.com/questions en gebruikt u de tags 'android-security' en 'SslErrorHandler'.
Hoewel deze specifieke problemen mogelijk niet van invloed zijn op elke app waarvoor WebView SSL wordt gebruikt, is het goed om altijd de nieuwste beveiligingspatches te implementeren. Apps met beveiligingsproblemen waardoor gebruikers kunnen worden blootgesteld aan hackers, worden beschouwd als gevaarlijke producten die in strijd zijn met het contentbeleid en artikel 4.4 van de distributieovereenkomst voor ontwikkelaars.
We helpen u graag.
Als u technische vragen over de kwetsbaarheid heeft, kunt u een bericht posten op Stack Overflow en de tag 'android-security' gebruiken. Neem contact op met ons supportteam voor ontwikkelaars voor meer informatie over de stappen die u moet uitvoeren om dit probleem op te lossen.