Correzione di una vulnerabilità File-based XSS

Queste informazioni sono rivolte agli sviluppatori di app con problemi di vulnerabilità File-based Cross-Site Scripting.

Situazione attuale

Una o più delle tue app contengono una vulnerabilità Cross-Site Scripting basata su file che deve essere corretta. Consulta la notifica sulla Play Console. Passate le scadenze visualizzate nella Play Console, le app che contengono vulnerabilità di sicurezza non corrette potrebbero essere rimosse da Google Play.

Azione richiesta

  1. Accedi alla Play Console e vai alla sezione Avvisi per scoprire quali app sono interessate dai problemi e le scadenze per risolverli.
  2. Aggiorna le app interessate e correggi la vulnerabilità.
  3. Invia le versioni aggiornate delle tue app coinvolte.

Quando invii nuovamente le app, queste vengono riesaminate. Questa procedura può richiedere diverse ore. Se l'app supera il controllo e viene pubblicata correttamente, non sono necessari ulteriori interventi. Se l'applicazione non supera il controllo, la nuova versione dell'app non verrà pubblicata e riceverai una notifica via email.

Ulteriori dettagli

I componenti WebView con elementi WebSettings che hanno gli attributi setAllowFileAccessFromFileURLs o setAllowUniversalAccessFromFileURLs impostati su true non devono caricare contenuti web non attendibili. Sono inclusi anche contenuti derivanti da domini attendibili, caricati con protocollo HTTP. Reti o contenuti web dannosi possono aggiungere script che reindirizzano WebView a un file locale dannoso e determinano un attacco Cross-Site Scripting finalizzato all'accesso a cookie e file locali privati.

Dovresti evitare questa vulnerabilità seguendo una delle procedure indicate sotto:

  1. Fare in modo che i componenti WebView non presentino impostazioni pericolose.
  2. Fare in modo che i componenti WebView non possano caricare file locali né eseguire JavaScript.
  3. Fare in modo che i componenti WebView con impostazioni pericolose non carichino contenuti web non attendibili.

1. Fare in modo che i componenti WebView non presentino impostazioni pericolose

Aggiorna l'attributo android:targetSdkVersion nel file Manifest impostando un valore pari almeno a 16 per fare in modo che vengano usate impostazioni predefinite sicure per WebView. In caso contrario, chiama setAllowFileAccessFromFileURLs(false) e setAllowUniversalAccessFromFileURLs(false) per assicurarti che i relativi componenti WebView siano sicuri.

2. Fare in modo che i componenti WebView non possano caricare file locali né eseguire JavaScript

Chiama setAllowFileAccess(false) per impedire ai componenti WebView con impostazioni pericolose di caricare file locali oppure chiama setJavaScriptEnabled(false) per impedire ai componenti WebView con impostazioni pericolose di eseguire codice JavaScript.

3. Fare in modo che i componenti WebView con impostazioni pericolose non carichino contenuti web non attendibili

Se un componente WebView deve attivare queste impostazioni pericolose, assicurati che non carichi contenuti web non attendibili. Sono inclusi i contenuti web caricati tramite HTTP. Puoi impostare android:usesCleartextTraffic=false o impostare nel file Manifest una Network Security Config che non consenta il traffico HTTP. In alternativa, puoi fare in modo che tutti i componenti WebView con impostazioni pericolose non carichino URL con schemi HTTP.

Dovresti anche impedire che i componenti WebView con impostazioni pericolose carichino URL ottenuti da fonti non attendibili.

Siamo qui per aiutarti

Puoi pubblicare eventuali domande tecniche relative alla vulnerabilità su Stack Overflow con il tag "android-security". Per chiarimenti sui passaggi da seguire per risolvere il problema, puoi contattare il nostro team di assistenza per gli sviluppatori.

È stato utile?

Come possiamo migliorare l'articolo?
false
Menu principale
7831291688900701088
true
Cerca nel Centro assistenza
true
true
true
true
true
5016068
false
false