¿Como auditar servlets?

Iniciado por xustyx, 13 Abril 2014, 19:35 PM

0 Miembros y 1 Visitante están viendo este tema.

xustyx

Buenas a todos!!!

Actualmente estoy de becario en una empresa donde se dedican mas que nada a crear aplicaciones web en java.

En principio soy programador (Encima .NET) no auditor ni nada por el estilo, pero el tema me interesa. Los conceptos de XSS, iSQL y todo el percal lo tengo asumido y por la parte practica alguna que otra he hecho  >:D, pero lo típico que todos conocemos.

La cosa es que me pusieron ha que probara un par de webs en maquinas virtuales, y querían que utilizara programas de estos que te lo hacen todo.
Utilicé Acunetix, Vega, W3af, ZAP, Nikto y no se estoy un poco abrumado... Cada uno tiene cosas buenas y malas, aparte de los falsos positivos, muchas cosas no las pillan, como File Uploads, Peticiones realizadas con javascript, etc..

Bueno, mi pregunta es si hay algún estándar o algo ha seguir para realizar este tipo de auditorias y supongo que no es lo mismo una web en php, que un servlet, y que cada una tendrá diferentes vectores de ataque que yo desconozco.

PD: Mi tutor de la empresa me explicó un poco por encima como funcionaban los servlets y la estructura de los proyectos y eso, entonces deduje (no sé si estoy equivocado) que los Action (.DO) son los archivos en los que debería centrarme, ya que como tengo el source code puedo mejorar mucha la auditoria y evitar tener que tirar un crawler etc...

Un saludo a todos! :D


~ Yoya ~

Es prácticamente mismo, a menos que busques un bugs especifico que afecte a una version o un rango de versiones de la version del servlet que actualmente ocupa la aplicación...

Simplemente tienes que examinar en que lugar se reciben datos enviados por el cliente/usuario/navegador y que hace con los datos, para encontrar una vulnerabilidad.

Ahora, en el caso que necesites hacer algún bypass, o examinar mas profundamente la aplicación en busca de vulnerabilidades, tendrás que leer el código de los servlets que reciben los datos enviado por el usuario, que hace cada servlet con esos datos y lo mas importante, como lo hace.

Saludos.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

xustyx

Gracias por tu respuesta ~ Yoya ~.

Actualmente estaba haciendo eso y encontré unos cuantos fallos :D, pero por la parte automatizada nada ( Indicios ), así que me gustaría mejorar esa parte.

Así que si me pudierais recomendar algún programilla y tutorial bueno os lo agradecería :)

Un saludo a todos! ;)