¿Cómo se puede explotar WebView de Android y cómo proteger mi aplicación de la vulnerabilidad de WebView?

5

He oído que la vulnerabilidad de WebView está activa en las versiones de Android antes de 4.2. Leí que está arreglado por Google en sus actualizaciones más recientes de 4.2. Lo que quiero saber es una breve descripción de la vulnerabilidad de WebView, por ejemplo, cómo un atacante puede usar esta vulnerabilidad y cualquier solución para solucionar esto por mí mismo en mi aplicación si es posible proteger mi aplicación de Android de esta vulnerabilidad.

    
pregunta Anandu M Das 04.12.2014 - 08:52
fuente

2 respuestas

6

Las principales vulnerabilidades involucradas en el componente WebView son las Referencias a objetos directos inseguros, la inyección SQL y las secuencias de comandos entre sitios (XSS).

Si bien los tres son riesgos potencialmente grandes, el potencial de vulnerabilidad de XSS se puede usar para obtener acceso a los archivos de preferencias compartidas usando el comando file / // / o puede utilizar smsJSInterface.launchSMSActivity para enviar mensajes SMS no deseados desde el teléfono, además para robar credenciales o proporcionar un frente falso al HTML, CSS, Javascript u otro comportamiento del nivel del navegador.

Si desactivas el setJavaScriptEnabled de la siguiente manera, los adversarios no podrán ejecutar ningún Javascript para realizar ataques XSS:

myWebView.getSettings().setJavaScriptEnabled(false);

O, si no puedes hacer esto, asegúrate de que cada contexto se escape correctamente mediante el uso de un componente de filtro XSS como el Proyecto de Codificador de Java OWASP.

Puede ver qué datos están disponibles para cada WebView utilizando la herramienta de línea de comandos sqlite3 o un navegador compatible con SQLite3 para ver el archivo /app/-packagename-/db/webview.db. Por supuesto, cualquier entrada que se abra paso en la base de datos SQLite3 o que realice una consulta u otra operación de cadena en su contra puede convertirse en un posible punto de inserción para la inyección de SQL, aunque en algunos casos puede ser necesario un escenario MITM de red.

Algunos ejemplos de referencias a objetos directos inseguros se pueden encontrar en estos tutoriales de pruebas de penetración en la aplicación HerdFinancial que forma parte de Proyecto OWASP GoatDroid :

respondido por el atdre 04.12.2014 - 20:02
fuente
1

WebView también puede ser explotada por sitios web maliciosos ya que no hay forma de saber si un sitio ha sido etiquetado como malware o phishing. Y la mayoría de las veces, los desarrolladores no muestran la URL, por lo que los usuarios finales ni siquiera pueden verificar si el sitio es lo que creen que es. Acabamos de lanzar una API de seguridad para solucionar este problema enlace nos encantaría escuchar sus opiniones sobre la API y Documentación: puede utilizar el servicio gratuito sin contrato.

    
respondido por el Paul Walsh 16.03.2015 - 19:34
fuente

Lea otras preguntas en las etiquetas