Como propietario de una aplicación web, ¿cómo se asegura de que su sitio está protegido de las amenazas en línea? ¿No filtra información confidencial?
Un interesante informe de Symantec revela que 1 de cada 10 sitios web tenía uno o más códigos maliciosos.
Y, si utiliza WordPress, otro informe de SUCURI muestra que el 49,8% de los sitios web escaneados no estaban actualizados.
Si utiliza una solución de seguridad basada en la nube, lo más probable es que el escaneado regular de vulnerabilidades forme parte del plan. Sin embargo, si no es así, entonces tiene que realizar un escaneado rutinario y tomar las medidas necesarias para mitigar los riesgos.
Existen dos tipos de escáneres.
Comerciales – le dan la opción de automatizar el escaneado para una seguridad continua, informes, alertas, instrucciones detalladas de mitigación, etc. Algunos de los nombres conocidos en la industria son:
- Acunetix
- Detectify
- Qualys
Decódigo abierto/gratuitos: puede descargarlos y realizar un escaneado de seguridad a petición. No todos ellos podrán cubrir una amplia gama de vulnerabilidades como uno comercial.
Echemos un vistazo al siguiente escáner de vulnerabilidades web de código abierto.
dirsearch
‘dirsearch’ es una popular herramienta de enumeración de directorios y archivos web que se utiliza para descubrir directorios y archivos ocultos en un servidor web.
Es una herramienta de línea de comandos escrita en Python y a menudo utilizada por los probadores de penetración para identificar configuraciones erróneas & archivos sensibles que no deberían ser de acceso público.
Características
- Forzado de directorios
- Listas de palabras personalizadas
- Soporte de métodos HTTP
- Detección de extensiones (puede buscar archivos con extensiones específicas como .php, .txt, .html, etc.)
- Solicitudes concurrentes para acelerar el proceso de enumeración.
- Filtrado de coincidencias positivas/negativas
- utiliza el Modo recursivo para buscar archivos.
Funciona enviando una serie de peticiones HTTP al servidor web de destino e intentando acceder a continuación a una lista predefinida de directorios comunes.
Si se encuentra algún archivo – dirsearch informará de ello, lo que indica que el archivo puede ser accesible al público.
reNgine
reNgine es una herramienta avanzada de reconocimiento de aplicaciones web diseñada para ayudar a los probadores de penetración a identificar vulnerabilidades potenciales y la superficie de ataque de las aplicaciones web.
Proporciona una capacidad de escaneado altamente personalizable y potente a través de sus motores, lo que permite a los usuarios configurar y ajustar el proceso de escaneado según sus necesidades.
Características
- Motores de exploración altamente configurables
- Correlación de datos de reconocimiento
- Supervisión continua para garantizar que la postura de seguridad de la aplicación se mantiene actualizada.
- Recon Data respaldado por base de datos para acceder a los resultados y analizarlos cuando el usuario lo desee.
- Interfaz de usuario sencilla
Y además, la función Sub-Scan & Deeper Correlation permite a los usuarios escanear partes específicas de la aplicación o componentes individuales por separado.
w3af
w3af (Web Application Attack & Audit Framework), un proyecto de código abierto, se inició a finales de 2006. w3af está escrito en Python y permite a los usuarios descubrir y explotar diversos problemas de seguridad, incluidas las OWASP.
El objetivo principal de w3af es ayudar a los probadores de seguridad y a los desarrolladores a reforzar la seguridad de las aplicaciones web.
He aquí una lista de vulnerabilidades que w3af puede escanear.
Características
- Los usuarios pueden crear plugins y scripts en función de sus necesidades específicas.
- También puede funcionar en modo proxy HTTP que permite a los usuarios interceptar y modificar transacciones HTTP.
- Genera informes detallados sobre las vulnerabilidades identificadas y los pasos seguidos durante el proceso de comprobación.
Está construido sobre una arquitectura de plugins, y puede consultar todos los plugins disponibles aquí.
Nikto
Nikto es un escáner de código abierto (GPL) diseñado para realizar pruebas completas contra servidores web para identificar vulnerabilidades de seguridad y problemas de configuración.
Nikto identifica los servidores web y el software que se ejecuta en el servidor objetivo, lo que proporciona a los administradores una mejor comprensión de la configuración de su sistema.
Características
- Soporte para SSL y proxy HTTP completo.
- Informes personalizables mediante un motor de plantillas.
- Capacidad para escanear múltiples puertos en un servidor o múltiples servidores a través de un archivo de entrada
- Ajuste del escaneado para incluir o excluir clases enteras de comprobaciones de vulnerabilidades.
- Reducción mejorada de falsos positivos utilizando varios métodos como encabezados, contenido de página y hashing de contenido.
- Autenticación de host con métodos Basic y NTLM.
Nikto no está diseñado para ser una herramienta sigilosa, ya que su objetivo es comprobar los servidores web lo más rápidamente posible. Sus actividades suelen ser visibles en los archivos de registro o en los sistemas IPS/IDS. Pero es compatible con los métodos anti-IDS de LibWhisker, que pueden ayudar a los usuarios a probar sus sistemas IDS o intentar evadir la detección en escenarios específicos.
Y aquí tiene un artículo sobre cómo utilizar el escáner Nikto para encontrar vulnerabilidades en servidores web. No dude en visitar esta página.
Wfuzz
Wfuzz (Web Fuzzer) es una herramienta de evaluación de aplicaciones para pruebas de penetración. Puede fuzz los datos en la solicitud HTTP para cualquier campo para explotar y auditar las aplicaciones web.
También soporta ataques de fuerza bruta permitiendo a los usuarios probar múltiples valores para parámetros específicos. Esto puede ser particularmente útil para descubrir credenciales débiles o información sensible que podría estar expuesta a través de configuraciones incorrectas.
Características
- Personalización de la carga útil y capacidades de Fuzzing que fuzz diferentes partes de las solicitudes HTTP, incluyendo parámetros, cabeceras y cookies, para identificar debilidades en la validación de entrada.
- Wfuzz está construido como un marco modular. Por lo que será fácil para los desarrolladores crear e integrar plugins personalizados.
- Pruebas de encabezado HTTP y autenticación
- Wfuzz puede integrarse con otras herramientas de seguridad, como Burp Suite. Permite a los usuarios hacer uso de las peticiones y respuestas HTTP previas de otras herramientas.
También puede realizar fuzzing de directorios y archivos para identificar archivos sensibles y otros recursos en el servidor web.
OWASP ZAP
OWASP ZAP (Zed Attack Proxy) es un popular escáner de seguridad de aplicaciones web de código abierto y una herramienta de pruebas de penetración. Es de uso gratuito y está mantenido activamente por la comunidad OWASP, lo que lo convierte en una opción fiable para asegurar las aplicaciones web.
Es una herramienta multiplataforma basada en Java que puede ejecutarse incluso en Raspberry Pi. ZAP se sitúa entre un navegador y una aplicación web para interceptar e inspeccionar mensajes.
Características
- ZAP tiene una funcionalidad de spidering que ayuda a identificar y mapear todos los puntos finales accesibles dentro de la aplicación web objetivo.
- Escaneado automatizado
- Da soporte a las pruebas manuales proporcionando un proxy interactivo. Los usuarios pueden interceptar y modificar las peticiones entre el cliente y el servidor.
- ZAP soporta plugins fuzzier para realizar fuzz-test de varias entradas de la aplicación objetivo para descubrir vulnerabilidades potenciales.
Y también puede integrarse en el proceso de desarrollo y pruebas a través de su API. Recomendamos encarecidamente consultar los vídeos tutoriales de OWASP ZAP para empezar.
Wapiti
Wapiti es otro potente escáner de vulnerabilidades de aplicaciones web para evaluar la seguridad de sus sitios web.
Funciona como un escáner de «caja negra», lo que significa que no requiere acceso al código fuente de la aplicación. En su lugar, analiza la aplicación web desplegada rastreando sus páginas web y buscando posibles vulnerabilidades.
Características
- La cobertura de vulnerabilidades incluye detección de divulgación de archivos, inyección XXE (XML eXternal Entity), inyección CRLF, redirecciones abiertas y más.
- Métodos HTTP e inyección de carga útil
- Admite proxies HTTP/HTTPS/ SOCKS5 y permite la autenticación mediante Basic, Digest, NTLM o GET/POST en formularios de inicio de sesión.
- Los usuarios pueden activar o desactivar la verificación de certificados SSL durante el análisis.
- Importa cookies de los navegadores Chrome o Firefox y admite proxy MITM para explorar el objetivo utilizando el navegador del usuario.
Wapiti ofrece varias opciones para controlar el comportamiento del rastreador, como omitir nombres de parámetros específicos durante el ataque, establecer un tiempo máximo para el proceso de exploración, añadir cabeceras HTTP personalizadas, etc.
Vega
Vega está desarrollado por Subgraph – una herramienta compatible con múltiples plataformas escrita en Java para encontrar XSS, SQLi, RFI, y muchas otras vulnerabilidades. El escáner automatizado incorporado está diseñado para realizar pruebas de seguridad rápidas y eficaces.
Puede rastrear a través de aplicaciones web, escanear en busca de varias vulnerabilidades, y reportar los hallazgos al usuario.
Características
- La función Proxy de interceptación puede realizar la interceptación SSL de sitios web HTTP y analizar el tráfico cifrado.
- Soporte multiplataforma
- El proxy puede configurarse para ejecutar módulos de ataque mientras el usuario navega por el sitio objetivo.
Si es usted desarrollador, puede aprovechar la API de Vega para crear nuevos módulos de ataque.
SQLmap
SQLmap es una herramienta de pentesting de código abierto que automatiza el proceso de detección y explotación de vulnerabilidades de inyección SQL en aplicaciones web.
Esta herramienta evalúa las respuestas de la aplicación y las peticiones construidas para encontrar posibles puntos de inyección.
Características
- Soporte de DBMS, incluyendo MySQL, Oracle, PostgreSQL, SQLite y muchos otros.
- Enumeración de la información de la base de datos
- Admite varias técnicas de inyección SQL, como la ciega basada en booleanos, la ciega basada en tiempo, la basada en errores y la basada en consultas UNION.
- Conexión directa a la base de datos
- Descifrado del hash de la contraseña
- Volcado de datos
- Ejecución arbitraria de comandos en un sistema operativo subyacente para sistemas compatibles.
Y también puede extraer información sobre el DBMS que se está utilizando, como su tipo, versión y detalles de configuración. Esto ayuda a los probadores a comprender el entorno con el que están tratando.
Grabber
Grabber es un escáner sencillo y portátil diseñado para detectar vulnerabilidades en sitios web pequeños como personales y foros, pero no está pensado para aplicaciones grandes.
Características
- Analizador de código fuente JavaScript
- Cross-site scripting, inyección SQL, inyección SQL ciega
- Comprobación de aplicaciones PHP mediante PHP-SAT
Grabber sólo identifica las vulnerabilidades y no proporciona soluciones. Tras la detección, genera un archivo con el ID de sesión y las marcas de tiempo para futuros análisis estadísticos.
Conclusión
La seguridad web es fundamental para cualquier negocio en línea, y espero que el escáner de vulnerabilidades gratuito/de código abierto mencionado anteriormente le ayude a encontrar riesgos para que pueda mitigarlos antes de que alguien se aproveche de ellos. Si está interesado en aprender sobre las pruebas de penetración, consulte este curso en línea.
También puede leer algunos de los mejores consejos para evitar las vulnerabilidades de seguridad web más comunes.