Añadir un objetivo de red o un sitio web
- Haz clic en gestión de activos > objetivos de red o sitios web
- Haz clic en el botón Añadir
Completa el formulario:
- «Fuente» corresponde al nodo desde el cual se lanzarán los análisis
- «Objetivo» corresponde al objetivo de red o al sitio web a analizar puedes indicar un objetivo de red en forma de nombre de dominio o dirección IP, o un sitio web en forma de URL; en ambos casos, se realiza un escaneo de puertos sobre el objetivo así como un reconocimiento de los servicios utilizados para determinar las versiones de los servicios expuestos
- «Alcance del escaneo» define la amplitud del escaneo a partir del objetivo:
- Por defecto: utiliza el alcance por defecto (Carpeta)
- URL: escanea únicamente la URL base exacta indicada
- Página: escanea cada URL correspondiente a la ruta de la URL base (cada variación de cadena de consulta)
- Carpeta: escanea cada URL que comienza por el valor de la URL base. Esta URL base debe terminar con una barra diagonal (sin nombre de archivo)
- Dominio: escanea cada URL cuyo nombre de dominio corresponde al de la URL base
- Subdominio: escanea cada URL cuyo subdominio corresponde al de la URL base
- «URL de Swagger» especifica la ubicación del archivo de descripción de las API (YAML o JSON) para añadir las URL descritas allí al escaneo
- «URL excluidas del escaneo» especifica la lista de URL (una por línea) a excluir del escaneo, las URL pueden contener comodines
- «URL adicionales a escanear» especifica la lista de URL adicionales (una por línea) a incluir en el escaneo
- «Tipo de autenticación» especifica el método utilizado para autenticarse ante la aplicación web objetivo
- Ninguno: No se realiza ninguna autenticación
- Basic: Utiliza la autenticación HTTP Basic, donde el nombre de usuario y la contraseña se envían en claro, codificados en base64, en las cabeceras de la petición HTTP
- Digest: Una forma más segura que la autenticación Basic, utilizando una respuesta cifrada para autenticar la petición
- NTLM: Utilizado principalmente en entornos Windows, NTLM es un protocolo de seguridad para la autenticación
- POST: Envía los datos de autenticación al servidor mediante una petición HTTP POST, permitiendo una autenticación del lado del servidor
- HTTP Bearer: Permite indicar un token de autenticación JWT que se transmitirá en cada petición HTTP en la cabecera
Authorization, bajo el formatoAuthorization: Bearer <token>. Solo el token debe indicarse en el campo correspondiente en Cyberwatch - Selenium: Utilizado para realizar una autenticación ejecutando acciones automatizadas especificadas en un archivo
.side. Una vez realizadas estas acciones, las cookies capturadas se utilizan para el resto del escaneo. Las acciones aceptadas sonopen,typeyclick. Para cada acción, la definición del elemento objetivo debe comenzar porid=,css=oxpath= - Cookie: Especifica una o varias cookies a añadir en cada petición HTTP para permitir una autenticación continua en el sitio web objetivo. Si se indican varias cookies, es posible separarlas por punto y coma, siguiendo el formato
cookie=valor;cookie=valor
Debido a la expiración regular de las cookies, se recomienda asociar los activos que utilicen este método de autenticación a una política de análisis manual, para poder garantizar la validez de las cookies antes de cada análisis.
- Valida haciendo clic en «Guardar»
Configurar los parámetros de escaneo
Algunos parámetros avanzados se configuran por política de análisis, entre ellos la duración máxima del escaneo web por módulo y la duración máxima del rastreo web. Para ello, debes ir a ajustes > política de análisis, y editar las políticas de los objetivos y sitios web correspondientes. Los parámetros de escaneo se encuentran en la sección «Parámetros avanzados».
Respecto al escaneo de aplicaciones web, se pueden configurar varias opciones:
Duración máxima de rastreo: Es el tiempo máximo asignado a la exploración de la superficie de ataque, como el descubrimiento de páginas, parámetros y formularios presentesDuración máxima de escaneo por módulo: Una vez finalizada la fase de exploración, se ejecutará un conjunto de módulos específicos que prueban vulnerabilidades potenciales. Este valor controla el tiempo máximo de ejecución asignado a cada uno de estos módulosHeadless: El modo headless utilizará un navegador sin interfaz para probar las vulnerabilidades de seguridad simulando acciones de usuario en aplicaciones web, especialmente aquellas construidas con frameworks JavaScript como Angular, React o Vue
Algunas aplicaciones a escanear en modo headless pueden requerir más tiempo, y obtener resultados parciales con las duraciones máximas por defecto. En este tipo de casos, los valores recomendados a configurar en la política de escaneo son 600 segundos para la duración máxima de rastreo y 300 segundos para la duración máxima de escaneo por módulo.
Escaneos web autenticados
Al añadir o editar un objetivo de red, es posible especificar un conjunto de credenciales y un método de autenticación. Estos parámetros solo se aplican cuando el objetivo es un sitio web, o al menos a un puerto HTTP abierto.
Para activar la autenticación, es necesario crear previamente un conjunto de credenciales de tipo escaneo web desde el menú credenciales registradas.
Los métodos de autenticación corresponden a los tipos soportados por la cabecera HTTP Authorization, a excepción del método post que simula un usuario que introduce sus credenciales en un formulario de inicio de sesión. La URL del formulario de inicio de sesión solo se aplica al método post.
Productos soportados por los objetivos de red o sitios web
Cyberwatch soporta cualquier dirección IP, así como cualquier URL o nombre de dominio válido y resuelto.
En todos los casos, Cyberwatch verifica qué puertos están abiertos entre los 3000 puertos más comúnmente utilizados. En los puertos abiertos, se utilizan dos estrategias de análisis.
Un escaneo pasivo, que detecta las versiones de los servicios expuestos en cada puerto del objetivo, e identifica las vulnerabilidades asociadas. Cuando se trata de un puerto web, también se ejecuta un escaneo adicional que permite identificar defectos de configuración del top 10 OWASP. Este último cubre, entre otros, los defectos de configuración en las cabeceras, e identifica las librerías utilizadas.
Un escaneo activo, que es un examen más profundo en función de las especificidades de cada puerto. Si el puerto soporta TLS, se realiza una auditoría TLS para identificar si se aceptan suites criptográficas débiles, el uso de protocolos obsoletos o una invalidez del certificado. Si el puerto responde a peticiones http/https, Cyberwatch realiza un segundo escaneo cuyo objetivo es identificar otros defectos de configuración del top 10 OWASP, como por ejemplo la posibilidad de realizar inyecciones XSS/SQL…
Ambos análisis OWASP se describen a continuación.
Análisis OWASP (Orignal)
Orignal te permite auditar la seguridad de las aplicaciones web. Realiza escaneos externos de la aplicación web (autenticados o no según el modo de escaneo utilizado) explorando las páginas web de la aplicación desplegada, en busca de defectos de seguridad. Una vez que obtiene la lista de URL, formularios y sus entradas, Orignal actúa como un fuzzer, inyectando cargas útiles y evaluando diversas respuestas de la aplicación.
Para que el escaneo log4j funcione, es necesario que Cyberwatch tenga acceso al DNS siguiente: dns.cyberwatch.app
Información general
El escaneo Orignal puede dividirse en dos grandes etapas consecutivas:
- El «escaneo pasivo»: esta etapa está compuesta por módulos que permiten realizar un estudio estático de los posibles defectos de seguridad
- El «escaneo activo»: esta etapa está compuesta por módulos de ataque que permiten probar activamente la superficie de exposición para identificar ciertos defectos de seguridad
Ambas etapas están precedidas por una reconstrucción de la lista de URL disponibles.
Orignal ofrece dos tipos diferentes de escaneo:
- El «modo normal»: este modo realiza directamente peticiones (similares a peticiones cURL) sobre el objetivo
- El «modo Headless»: con este modo, Orignal lanzará un navegador sin interfaz gráfica para analizar aplicaciones web, en particular aquellas basadas en JavaScript. Permite una mejor interacción con las Single Page Applications (SPAs) y la detección óptima de los defectos de seguridad relacionados con la ejecución dinámica de JavaScript
El escaneo pasivo
Lista no exhaustiva de acciones realizadas por el escaneo pasivo:
- Análisis de las flags de las cookies para detectar configuraciones no seguras
- Análisis de la política de seguridad de contenido (CSP) para detectar posibles debilidades
- Análisis de las cabeceras HTTP para detectar configuraciones no seguras
- Detección de las tecnologías web utilizadas por el sitio
- Enumeración de los módulos WordPress
El escaneo activo
Lista no exhaustiva de acciones realizadas por el escaneo activo:
- Búsqueda de defectos de seguridad relacionados con la inyección CRLF (Carriage Return Line Feed)
- Búsqueda de defectos de seguridad CSRF (Cross-Site Request Forgery)
- Identificación de posibles puntos de inyección
- Búsqueda de defectos de seguridad de inyección SQL
- Descubrimiento de archivos de respaldo que podrían divulgar información sensible
- Intentos de fuerza bruta sobre formularios de inicio de sesión
- Búsqueda de malas configuraciones o archivos .htaccess accesibles que podrían ser explotados
- Intentos de inyecciones SQL
- Evaluación de los métodos HTTP que están permitidos por el servidor
- Búsqueda de defectos de seguridad de redirección abierta
- Identificación de defectos de seguridad Server-Side Request Forgery (SSRF)
- Búsqueda de defectos de seguridad de tipo Cross-Site Scripting (XSS)
- Verificación de la presencia de la vulnerabilidad Log4Shell
Metadatos
Los metadatos pueden dar indicaciones sobre el estado del escaneo realizado. Se muestran en dos columnas, llamadas “Clave” y “Valor”.
Páginas rastreadas
La clave se presenta de la siguiente forma: crawled_pages.[active|passive].
Para conocer la lista de URL rastreadas por los escaneos activo y pasivo, abre desde la pestaña «Análisis» de la ficha del activo correspondiente, los detalles del script «Escaneo de aplicación web (OWASP) - Modo [pasivo/activo]».
Valor en 1 o 0
- Si la columna
"Valor"indica"0", esto puede significar que ha habido un problema durante la autenticación hacia la página solicitada - Si la columna
"Valor"indica"1", aunque hayas seleccionado un alcance de escaneo más amplio, son posibles varias interpretaciones
Es posible que la dirección objetivo utilice diversas redirecciones, lo que puede perturbar el buen funcionamiento del escaneo.
Por ejemplo, si el objetivo indicado comienza por http, mientras que el sitio utiliza https, la redirección del puerto 80 al 443 puede interferir con el escaneo. Otro ejemplo común, si el objetivo es https://www.example.com, mientras que el sitio es https://www.example.com, esto también provocará una redirección.
La dirección de un objetivo de red debe ser imperativamente la dirección a escanear directamente sin redirección. El uso de una dirección que responda mediante una redirección provocará el fallo del escaneo.