Servidor Proxy Java Android
Hoy estoy intentando programar un proxy en Java para Android. Estoy probando con java.net.ServerSocket y java.net.socket.
Mi objetivo es poder capturar las peticiones que hace el WebView o en caso de no ser posible con las herramintas de las que dispongo, construir las peticiones a partir de una url.
El resultado final debería servirme para poder interceptar peticiones hechas con XHR en javascript desde un documento html que lea e interprete la aplicación, modificar todas las cabeceras o parte de la petición (algo que el sandbox de javascript no permite), realizar la petición y recibir la respuesta en el Proxy. Lo más importante viene aquí. Sobrescribir las cabeceras de respuesta para permir cargar recursos Cross Origen.
A partir de aquí se le podrían dar usos muy diversos. El principal que le quiero dar yo es realizar scaneres de vulnerabilidades XSS desde javascript. Así creando un documento .html se le podrían cargar diversos "plugins" al scanner para hacer diversos scanneres. Por ejemplo teniendo la applicación instalada se podría crear un html para testear inyecciones sql.
No es algo trivial de hacer en Java para mi, no me manejo con prácticamente ninguna librería y no encuentro códigos de ejemplo algo elaborados que no utilicen librerías externas o dependencias.
Utilizo Java N-Ide como herramienta principal de desarrollo en Android.
Sigo a ello!
Mi objetivo es poder capturar las peticiones que hace el WebView o en caso de no ser posible con las herramintas de las que dispongo, construir las peticiones a partir de una url.
El resultado final debería servirme para poder interceptar peticiones hechas con XHR en javascript desde un documento html que lea e interprete la aplicación, modificar todas las cabeceras o parte de la petición (algo que el sandbox de javascript no permite), realizar la petición y recibir la respuesta en el Proxy. Lo más importante viene aquí. Sobrescribir las cabeceras de respuesta para permir cargar recursos Cross Origen.
A partir de aquí se le podrían dar usos muy diversos. El principal que le quiero dar yo es realizar scaneres de vulnerabilidades XSS desde javascript. Así creando un documento .html se le podrían cargar diversos "plugins" al scanner para hacer diversos scanneres. Por ejemplo teniendo la applicación instalada se podría crear un html para testear inyecciones sql.
No es algo trivial de hacer en Java para mi, no me manejo con prácticamente ninguna librería y no encuentro códigos de ejemplo algo elaborados que no utilicen librerías externas o dependencias.
Utilizo Java N-Ide como herramienta principal de desarrollo en Android.
Sigo a ello!
Comentarios
Publicar un comentario