Den här artikeln är avsedd för utvecklare som har implementerat hanteringen av WebViewClient.onReceivedSslError på ett osäkert sätt i sina appar.
Detta händer
I minst en av dina appar hanteras onReceivedSslError på ett osäkert sätt. Det gör appen sårbar för man-i-mitten-attacker. En hackare kan ändra innehållet i den WebView som berörs, läsa överförd data (t.ex. inloggningsuppgifter) och köra kod i appen med hjälp av JavaScript. Läs mer i meddelandet på Play Console. Alla appar där säkerhetsbristen inte har åtgärdats kan tas bort från Google Play efter det datum som anges i Play Console.
Åtgärd som krävs
- Logga in på Play Console och öppna avsnittet Varningar. Där ser du vilka appar som berörs av problemet och vilket datum det måste vara åtgärdat.
- Uppdatera de berörda apparna och åtgärda säkerhetsbristen.
- Skicka in uppdaterade versioner av de berörda apparna.
När du skickar in den nya appversionen granskas den på nytt. Granskningen kan ta flera timmar. Om appen blir godkänd vid granskningen och publiceras utan problem behöver du inte göra något mer. Om appen inte blir godkänd vid granskningen kommer den nya appversionen inte att publiceras och du meddelas via e-post.
Ytterligare information
- Åtgärda problemet genom att uppdatera koden i apparna så att SslErrorHandler.proceed () anropas när det certifikat som presenteras av servern motsvarar dina förväntningar och SslErrorHandler.cancel () anropas i övriga fall. Tänk på följande när du kontrollerar om certifikatet är giltigt:
-
En app kan flaggas om certifikatets giltighet inte kontrolleras tillräckligt noga. Att bara kontrollera det värde som returneras av getPrimaryError är till exempel inte tillräckligt för att fastställa att certifikatet är giltigt.
-
Det är en säkerhetsrisk att ignorera de flesta SSL-fel som returneras av SslError.getPrimaryError. Observera att getPrimaryError returnerar det allvarligaste felet i en mängd fel. Det kan alltså fortfarande finnas fel av typen SSL_UNTRUSTED i feluppsättningen för anslutningen även om
getPrimaryError() != SSL_UNTRUSTED
är sant.
-
-
Om problemet orsakas av ett bibliotek från tredje part kontaktar du den tredje parten och arbetar fram en lösning tillsammans med dem.
Om du vill veta mer om SSL-felhanteraren läser du dokumentationen i hjälpcentret för Android-utvecklare. Om du har andra tekniska frågor kan du ställa dem på https://www.stackoverflow.com/questions. Använd taggarna android-security och SslErrorHandler.
Observera att det alltid är bäst att införa säkerhetskorrigeringar även om det är oklart om problemen drabbar alla appar där WebView SSL används. Appar med säkerhetsbrister som utgör en risk för användarna kan betraktas som skadliga produkter och strida mot innehållspolicyn och avsnitt 4.4 i distributionsavtalet för utvecklare.
Vi hjälper dig gärna
Om du har tekniska frågor som handlar om säkerhetsbristen kan du ställa dem på Stack Overflow. Använd taggen android-security. Om du behöver mer information om hur du åtgärdar problemet kontaktar du vårt supportteam för utvecklare.