Acunetix Web Vulnerability Scanner (WVS): Herramienta de pruebas de seguridad

Las aplicaciones web y los sitios web son componentes fundamentales de cualquier empresa en la actualidad. A medida que aumenta el número de sitios web, los atacantes también son más activos para hackear sitios web y robar datos empresariales importantes.

Con esta amenaza, se está volviendo importante tener un escaneo de la vulnerabilidad del sitio web como parte del ciclo completo de pruebas.

Hoy, vamos a revisar una herramienta para una auditoría de seguridad de aplicaciones web y sitios web – Acunetix Web Vulnerability Scanner (WVS). Acunetix WVS es la herramienta de elección para las pruebas de Inyección SQL, Cross-site scripting (XSS) y otras 10 vulnerabilidades de OWASP.

Revisión práctica de Acunetix Web Vulnerability Scanner

Acunetix WVS es una prueba automatizada de seguridad de aplicaciones web, fundada para combatir el aumento de ataques en la capa de aplicaciones web. Acunetix WVS audita la seguridad de un sitio web lanzando una serie de ataques contra el mismo. A continuación, proporciona informes concisos de las vulnerabilidades que ha encontrado e incluso ofrece sugerencias sobre cómo solucionarlas.

En este tutorial, voy a llevar a Acunetix WVS a dar una vuelta y explicar algunas de sus características únicas.

Realización de una exploración de vulnerabilidad en línea

Antes de iniciar un escaneo, necesitaba un sitio vulnerable para probarlo. Acunetix mantiene sus propios sitios de prueba que puede escanear para probar el producto.

  • http://testhtml5.vulnweb.com
  • http://testphp.vulnweb.com
  • http://testaspnet.vulnweb.com
  • http://testasp.vulnweb.com

Comenzar un nuevo escaneo es tan simple como iniciar el Asistente de Escaneo haciendo clic en el botón de Nuevo Escaneo en la barra de herramientas principal. El asistente le guiará a través de algunas opciones que puede utilizar para personalizar la exploración.

Acunetix-WVS-review-1

En primer lugar, debemos indicar a Acunetix Web Vulnerability Scanner el sitio que deseamos analizar. En este caso, me quedaré con el sitio de prueba de PHP anterior (es decir, http://testphp.vulnweb.com).

Acunetix-WVS-review

A continuación, tendremos que seleccionar un perfil de exploración. Un perfil de exploración es una agrupación lógica de pruebas que realizan un grupo específico de pruebas. Esta característica le permite personalizar las pruebas que quiere o no quiere que Acunetix WVS ejecute. Puede elegir entre los diversos perfiles de análisis incorporados, o puede crear perfiles de análisis personalizados que se adapten a sus necesidades específicas.

El perfil de análisis predeterminado incluye todas las pruebas que Acunetix Web Vulnerability Scanner puede ejecutar. Sin embargo, supongamos que sólo me preocupan las alertas de alto riesgo, puedo personalizar el análisis para que sólo compruebe esas vulnerabilidades.

Acunetix-WVS-review-3

Los perfiles de escaneo no son la única forma de personalizar un escaneo: la configuración de escaneo permite un control muy granular sobre el escaneo. La mayoría de los usuarios no necesitarán modificar esta configuración, ya que los valores predeterminados han sido cuidadosamente seleccionados para atender a la gran mayoría de los sitios y aplicaciones web.

Sin embargo, como resulta que me estoy conectando a Internet usando un proxy HTTP, voy a seguir adelante y configurar eso desde aquí haciendo clic en el botón Personalizar junto al cuadro de lista de Configuración de Escaneo.

Acunetix-WVS-review-4

Si las necesita, Acunetix WVS también tiene opciones avanzadas que puede aprovechar si necesita aún más control sobre las páginas que quiere (o no quiere) que el escáner rastree y escanee.

Puede seleccionar qué páginas quiere excluir de un escaneo usando la opción After crawling let me choose the files to scan, e incluso importar los resultados de otras herramientas como BurpSuite de Portswigger y Fiddler de Telerik, y por supuesto el HTTP Sniffer incorporado de Acunetix WVS.

Acunetix-WVS-review-5

Al ser un escáner de caja negra, Acunetix WVS puede escanear cualquier sitio web o aplicación web, independientemente de las tecnologías, o lenguajes de programación que utilice – esencialmente prueba un sitio web o aplicación web sin ningún conocimiento previo de cómo funciona ese sitio, al igual que lo haría un atacante real.

Optimización del escaneo:

Dicho esto, Acunetix Web Vulnerability Scanner tiene algunos trucos inteligentes bajo la manga para optimizar el escaneo para una tecnología específica. Acunetix WVS intentará tomar la huella digital de la aplicación web con el fin de detectar las tecnologías que está utilizando para reducir el tiempo de exploración. Por ejemplo, si estoy probando un sitio construido con PHP, no hay razón para buscar vulnerabilidades que sólo pueden existir en aplicaciones ASP.NET.

Acunetix-WVS-review-6

Cómo escanear áreas protegidas por contraseña de un sitio web

Dado que este sitio tiene una página de inicio de sesión, necesitamos crear una secuencia de inicio de sesión para indicar al escáner cómo iniciar sesión en la aplicación. Esta es una parte esencial del proceso de escaneo y algo que suele ser difícil o tedioso de configurar correctamente con otros escáneres.

Puede intentar que el escáner inicie la sesión por usted (esto funcionará para la mayoría de los sitios simples con sólo un nombre de usuario y una contraseña), o bien puede crear una secuencia de inicio de sesión manualmente (funciona mejor para inicios de sesión más complejos y proporciona mucho más control).

Acunetix-WVS-review-7

Acunetix Web Vulnerability Scanner hace que la creación de una secuencia de inicio de sesión sea muy fácil, simplemente pase por su proceso normal de inicio de sesión en una cuenta; notará que sus acciones están siendo grabadas. El escáner reproducirá estas acciones para iniciar la sesión durante el escaneo.

Acunetix-WVS-review-8

También puede utilizar el botón de repetición situado en la parte inferior izquierda de la ventana de grabación de la secuencia de inicio de sesión para repetir sus acciones y asegurarse de que todo funciona correctamente.

Una vez que haga clic en Siguiente, tiene la opción de seleccionar los enlaces en los que no desea que el escáner haga clic mientras está conectado. Obviamente, no queremos que el escáner salga de la sesión durante un rastreo o un escaneo, así que haré clic en el enlace Logout para restringirlo, sin embargo, usted es libre de configurar tantas restricciones como desee.

También vale la pena señalar que el Registrador de Secuencia de Inicio de Sesión también tiene soporte para restringir enlaces con nonces (tokens de un solo uso en los enlaces) mediante el uso de comodines.

Acunetix-WVS-review-9

Una vez que haya terminado de restringir los enlaces, haga clic en Siguiente. Una secuencia de inicio de sesión no es suficiente. El escáner necesita entender cuándo se ha iniciado y cuándo se ha cerrado la sesión. El Registrador de Secuencia de Inicio de Sesión necesita lo que se conoce como un Patrón de Sesión.

Un Patrón de Sesión no es más que algo único entre un estado de entrada y uno de salida de una aplicación web. El Grabador de Secuencia de Inicio de Sesión detectará este patrón automáticamente por usted; sin embargo, usted es libre de personalizar este patrón si así lo desea.

Acunetix-WVS-review-10

Al hacer clic en Finalizar, se le pedirá que guarde la secuencia de inicio de sesión que acaba de crear. Esto se puede utilizar en una fecha posterior para que no tenga que pasar por el proceso de crear una secuencia de inicio de sesión cada vez que quiera escanear el mismo sitio.

A continuación, se le presentará la pantalla final del Asistente de Escaneado que le ofrece la opción de guardar cualquier configuración de escaneado que haya establecido. Además, Acunetix WVS es lo suficientemente inteligente como para identificar si un sitio proporciona una respuesta diferente a una cadena de Agente de Usuario móvil y le preguntará si desea cambiar su cadena de Agente de Usuario para decir la de un iPhone o un dispositivo Android – práctico si su sitio es amigable con los móviles.

Resultados de la exploración de la vulnerabilidad del sitio web:

Una vez completado el rastreo y el escaneo, Acunetix WVS listará una lista de vulnerabilidades de alta gravedad que ha detectado en el sitio de prueba.

En el momento en que se hace clic en una vulnerabilidad específica (inyección SQL en este caso), Acunetix WVS revela no sólo qué parámetro de entrada es vulnerable, sino que también enumerará las variaciones de un ataque a ese parámetro.

Acunetix-WVS-review-11

Al seleccionar una de las variaciones de la vulnerabilidad se explica la vulnerabilidad con gran detalle. El escáner proporcionará primero un resumen de la vulnerabilidad, y luego procederá a explicar cuál es el impacto de dicha vulnerabilidad y cómo solucionarla.

Si ha instalado Acunetix AcuSensor (esto es opcional), un componente del lado del servidor para aplicaciones PHP y .NET que se comunican con Acunetix WVS los resultados de las vulnerabilidades, como la inyección SQL, incluirán incluso el archivo y la línea de código vulnerable.

Acunetix-WVS-review-12

La alerta le proporcionará más información con una explicación más larga del problema, así como más detalles sobre cómo solucionar la vulnerabilidad junto con una lista de URL de referencia donde puede leer más sobre el tema, por si el escáner ha encontrado algo con lo que no está familiarizado.

Reejecución de las pruebas después de la corrección de la vulnerabilidad

Reejecutar el escáner desde el principio es, obviamente, una forma de comprobar si la corrección de una vulnerabilidad detectada ha tenido éxito. Sin embargo, Acunetix WVS tiene una función muy útil para volver a realizar pruebas.

Simplemente haga clic con el botón derecho en una alerta que desee volver a probar y seleccione Volver a probar la(s) alerta(s). Las pruebas que detectaron esa vulnerabilidad se volverán a ejecutar y se mostrará el nuevo resultado. Si la vulnerabilidad está resuelta, Acunetix la marcará con una fuente gris tachada.

Acunetix-WVS-review-14

Informes de la exploración de vulnerabilidad web

Desde aquí puede guardar los resultados de la exploración o generar una variedad de informes fáciles de entender. Puede generar informes haciendo clic en el botón Reporter de la barra de herramientas principal.

Acunetix-WVS-review-15

Cuando se carga Acunetix Web Vulnerability Scanner Reporter, se le presenta una selección de informes que puede elegir. Si busca informes de alto nivel, los elementos afectados, el resumen ejecutivo y el informe rápido ofrecen una variedad de informes concisos para elegir.

Acunetix-WVS-review-16

Si por el contrario, lo que busca son informes de cumplimiento, el reportero de Acunetix puede generar informes adaptados a un estándar de cumplimiento de su elección, ya sea el OWASP Top 10, PCI, HIPPA o cualquiera de los otros informes de cumplimiento disponibles. Estos informes se actualizan periódicamente para estar siempre en línea con la última versión de una norma de cumplimiento.

Acunetix-WVS-review-17

El informe más detallado es el informe de desarrolladores. Este informe también es altamente configurable, permitiendo al usuario incluir sólo la información necesaria en el informe.

Acunetix-WVS-review-18

Al hacer clic en Generar se producirá un informe que puede guardar en PDF, HTML y otros formatos para compartirlo con colegas y otras partes interesadas.

Página de resumen:

Acunetix-WVS-review-19

Resumen de la alerta:

Acunetix-WVS-review-20

Detalles de la alerta:

Acunetix-WVS-review-21

Cobertura tecnológica

Ya hemos cubierto que Acunetix es un escáner de caja negra, y por lo tanto, siempre y cuando un sitio sea accesible a través de HTTP o HTTPS puede ser escaneado, sin embargo, el escáner es muy «inteligente» cuando se trata de pescar las vulnerabilidades que son endémicas a ciertos marcos y tecnologías – desde PHP, NET, Ruby on Rails y varios marcos populares de Java todo el camino a los CMS como WordPress y sus plugins. Acunetix WVS puede identificar y auditar un sitio en función de la pila tecnológica que ejecute.

Motor DeepScan para manejar Ajax y JavaScript

Además de esto, Acunetix Web Vulnerability Scanner tiene soporte completo para HTML5 y puede detectar XSS basado en DOM con un grado muy alto de precisión. Esto es gracias a su innovador motor DeepScan, un navegador sin cabeza completamente integrado con el rastreador que proporciona a Acunetix WVS una comprensión completa de lo que está sucediendo en una página, así como la capacidad de ejecutar e interactuar con las cada vez más populares aplicaciones con JavaScript y AJAX que están empezando a aparecer en toda la web.

Para facilitar aún más a los desarrolladores de aplicaciones web el rastreo de las vulnerabilidades XSS basadas en el DOM, Acunetix WVS también proporcionará al usuario un rastreo de pila de cómo la carga útil XSS fluyó a través del Modelo de Objetos del Documento (DOM) del navegador.

Acunetix-WVS-review-22

AcuSensor para una exploración precisa y completa

Como ya hemos visto, AcuSensor es un componente opcional (incluido con Acunetix WVS) que se instala en el lado del servidor y está disponible tanto para aplicaciones PHP como .NET. El uso de AcuSensor proporciona lo que se conoce como Prueba de Seguridad de Aplicaciones Interactivas (IAST).

La instalación tanto para PHP como para .NET es muy sencilla, y con .NET, no hay necesidad de volver a compilar las DLLs – simplemente se puede inyectar y des-inyectar AcuSensor desde las DLLs precompiladas de .NET.

La mayoría de los escáneres de caja negra de aplicaciones web (incluyendo Acunetix WVS sin AcuSensor) no pueden ver cómo se comporta el código mientras se ejecuta. En el otro extremo del espectro, las herramientas de análisis de código fuente no siempre pueden entender lo que sucede cuando el código está en ejecución.

Acunetix AcuSensor reúne ambas metodologías de prueba y, como resultado, puede proporcionar un análisis más preciso y completo. Dado que el sensor tiene conocimiento del sistema backend, también puede encontrar vulnerabilidades en áreas difíciles de alcanzar con un típico escáner de caja negra. Por ejemplo, las vulnerabilidades de inyección SQL suelen encontrarse a través de la información filtrada por errores de la base de datos o mediante técnicas de inyección ciega. AcuSensor puede encontrar vulnerabilidades de inyección SQL en cualquier consulta SQL; incluyendo las sentencias INSERT.

Como ya hemos visto, Acunetix AcuSensor puede indicar la línea de código vulnerable e incluso puede reportar información de depuración adicional. Esto aumenta en gran medida la eficiencia de un equipo de desarrollo en la resolución de errores de seguridad críticos.

AcuMonitor

AcuMonitor es una tecnología que se incluye como parte de Acunetix WVS. Sirve como un servicio intermediario que funciona en segundo plano y permite al escáner detectar vulnerabilidades de segundo orden.

Las pruebas de vulnerabilidad de segundo orden tienen en cuenta las vulnerabilidades que no proporcionan una respuesta a un escáner durante las pruebas. Tales vulnerabilidades incluyen el XSS ciego (también conocido como XSS retardado), la inyección de entidades externas XML (XXE), la falsificación de solicitudes del lado del servidor (SSRF), los ataques al encabezado del host, la inyección del encabezado del correo electrónico, el envenenamiento del restablecimiento de la contraseña, la inyección SQL ciega fuera de banda y la ejecución remota de código ciega fuera de banda; todas las cuales pueden detectarse automáticamente utilizando AcuMonitor.

Para detectar vulnerabilidades de segundo orden, es necesario que exista un intermediario que el escáner controle o al que tenga acceso. Acunetix WVS, combinado con AcuMonitor, hace que la detección automática de tales vulnerabilidades sea indolora y transparente para el usuario que ejecuta el escaneo.

Descarga del escáner de vulnerabilidad web Acunetix:

Acunetix está disponible en línea o en las instalaciones. Acunetix ofrece una prueba de 14 días de Acunetix WVS, y también ofrece una versión en línea del escáner llamada Acunetix OVS, que también puede probar durante 14 días. La única forma real de familiarizarse con cualquier producto es probarlo por sí mismo.


Observaciones finales

Además de todo lo anterior, Acunetix Web Vulnerability Scanner también viene con una gama de herramientas integradas de pruebas de penetración manual. Estas herramientas permiten a los auditores ejecutar escaneos automatizados y verificar los resultados manualmente sin necesidad de cambiar de herramienta.

Acunetix WVS ofrece a los profesionales de la seguridad y a los ingenieros de software una gama de características impresionantes en un paquete fácil, sencillo y muy robusto. Por supuesto, esta reseña no puede abarcar mucho, y aunque este tutorial pretende proporcionar una amplia visión general del producto, hay varias otras características útiles que no se incluyeron.

¿Ha utilizado Acunetix o algún otro escáner de vulnerabilidad web?