Hola! hoy vuelvo a Flu Project para compartir con todos vosotros mi última herramienta, ParameterFuzz.
ParameterFuzz es una herramienta destinada a comprobar el nivel de fortificación en aplicaciones web, intenta cubrir el campo más explotado por los hackers, ya que la mayoría de ataques conocidos, se basan en la explotación de parámetros mal filtrados. Así como SQL injection, Cross Site Scripting o RFI entre otros.
La aplicación consta de un Menú principal donde un desplegable nos permite seleccionar el idioma, además de la opción de enviar peticiones GET o POST. Una vez seleccionado el lenguaje, quedará configurado en la aplicación para siguientes usos.
Si presionamos sobre la opción GET, se abrirá un nuevo panel desde donde se lanzarán los ataques. La parte alta del mismo, es el lugar donde se llevarán a cabo las configuraciones de nuestras peticiones, antes de ser enviadas.
La mayor particularidad de ParameterFuzz, se encuentra en la opción de poder ver las respuestas que las páginas atacadas han devuelto en cada petición que enviemos, ya que incorpora un navegador basado en un control Webbrowser, el cual interpreta los resultados ejecutando Javascript como lo haría un navegador real. Las opciones de ataque por diccionario, las encontramos en los apartados “Parametro Fuzz” y “Valor Fuzz”, ambas opciones pueden ser habilitadas conjuntamente o por separado.
En caso de desear la modificación de alguno de los campos de parámetros o valores, podremos hacerlo de forma manual sobre las cajas de texto, en caso de los diccionarios, tan solo hay que tener en cuenta las etiquetas definidas en su interior, para que la aplicación funcione correctamente, ya que estas se utilizan para avisar al auditor cuando se trata de un cambio de ataque.
Mientras realizamos el envío de peticiones, la parte baja de ParameterFuzz, nos permite guardar las longitudes de las peticiones anteriores, con el fin de comparar sus longitudes y avisar al auditor de que la página actual ha respondido de manera diferente, con que parámetro y valor. También podremos agregar el nombre del valor inyectado al buscador, que de igual manera avisará al auditor de las coincidencias encontradas. Esto será crucial para búsquedas de vulnerabilidades de XSS o SQLi.
Es recomendable si aún no conocemos del todo la herramienta, presionar el botón “Petición” antes de enviar las peticiones, ya que muestra de forma detallada como se configuró el envío.
Una vez encontrada la vulnerabilidad, podremos echarle un vistazo al código fuente con el buscador, para ver exactamente el punto o puntos donde se produce nuestra inyección.
La opción más cómoda de la aplicación, es sin duda la de hacer clic sobre el CheckBox de “Peticiones Automáticas”, ya que si activamos uno de los diccionarios, de forma automática enviarán peticiones en busca de posibles parámetros existentes en la página auditada y almacenará el resultado de la longitud en un archivo de Log. Al terminar el diccionario de parámetros, la aplicación preguntará al auditor si desea ver o no, los resultados.
También tendremos la opción de eliminar el contenido de los Logs o verlos de forma rápida, con los botones del margen inferior derecho de la aplicación.
En el caso de elegir auditar peticiones POST, la aplicación se comporta de forma idéntica, tan solo destacando que el envío de parámetros conocidos va separado en una caja de texto aparte.
A continuación, dejo un listado de cambios desde la versión 1.0 a la actual 1.1 de ParameterFuzz.
[+]Agregado un CheckBox para lanzar las peticiones de forma automática, así después comparar resultados en un Log.
[+]Agregado botón "Log", para un acceso más rápido a leer las peticiones automáticas.
[+]Agregado botón "Borrar", para eliminar Logs.
[+]Agregada la opción de selección de idioma Ingles o Español para toda la aplicación.
[+]Agregada una etiqueta para contabilizar el número de caracteres por página HTML (GET y POST).
[+]Agregada la opción de Guardar la longitud de la página, para compararla con la de próximas peticiones.
[+]Agregada la función de búsqueda de palabras en HTML según se escriben.
[+]Agregado ManifestXP a los estilos de la aplicación.
[+]Agregado un botón minimizar en la barra superior.
[+]Deshabilitados los errores en modo debug de Javascript para la navegación.
PD1:Si tienen alguna duda del funcionamiento o simplemente encontraron un fallo, estaría agradecido de que me lo comunicaran.
PD2:El archivo ParameterFuzz.exe.manifest, es un XML que proporciona los nuevos estilos a la aplicación, si lo eliminan es posible que la aplicación no funcione.
Y como siempre...
Saludos 4n4les! ;)
Descarga la herramienta desde aquí.