volvervolver

Evaluación de la vulnerabilidades

En el escenario actual en el que el mundo está cada vez más conectado y el intercambio de información se produce a un ritmo acelerado, la seguridad de la información debe insertarse en el día a día como una preocupación crucial para las personas y las empresas. Dentro de un contexto en el que existe cierto nivel de madurez en la seguridad por parte de la organización, se espera que la Gestión de Vulnerabilidades sea una tarea continua, esta tiene como objetivo reducir los posibles impactos que pueden ser causados por la explotación de estas vulnerabilidades dentro de sus entornos.

Una de las subtareas de la gestión de vulnerabilidades es la “Evaluación de Vulnerabilidades”. En los próximos minutos de lectura, se describirá qué es esto, cómo esta actividad puede ayudar a reducir la superficie de ataque, la importancia de realizar evaluaciones periódicas y el papel de los equipos en este proceso. Además, se presentarán sugerencias de herramientas comerciales y open-source que pueden apoyar la realización de estas evaluaciones

Vulnerabilidades y amenazas

Antes de entrar de lleno en el tema de la evaluación de la vulnerabilidad, es necesario recordar el concepto de vulnerabilidad. Según la definición del Diccionario Oxford, vulnerabilidad es "La cualidad o estado de estar expuesto a la posibilidad de ser atacado o dañado, física o emocionalmente". Llevándolo al contexto de la tecnología y la seguridad de la información, la norma ISO 27000 señala que las vulnerabilidades son "Puntos débiles de un activo que potencialmente podrían ser explotados por una o más amenazas". Estas debilidades pueden ser inherentes a cualquiera de las variables de un ecosistema tecnológico, como la construcción del activo en términos de código, los procesos en los que se inserta el activo, los datos que viajan en ese activo, las personas que lo manipulan, o incluso la falta de conocimiento, formación o compromiso de las propias personas, que también deben ser consideradas como activos valiosos de las organizaciones. Existe un tipo de simulación o evaluación para cada tipo de posible vulnerabilidad mencionada anteriormente, por lo que es importante decir que este artículo se centrará exclusivamente en la evaluación de vulnerabilidades tecnológicas o de software/firmware, los otros tipos de vulnerabilidades son tema para otro (u otros varios) artículos.

En la imagen inferior podemos encajar algunos de los conceptos presentados hasta ahora. Para que una amenaza sea realmente una amenaza (curioso, pero cierto) deben cumplirse algunos requisitos: tiene que haber un actor (actor de la amenaza) con una intención hostil, este actor tiene que tener la capacidad de realizar una acción hostil y, por último, necesita una oportunidad: aquí es donde encaja la famosa vulnerabilidad.


Tríada de amenazas en la teoría de conjuntos


Esta forma de entender la amenaza es interesante recordarla porque una de las razones por las que se realizan las evaluaciones de vulnerabilidades es precisamente para reducir la superficie de ataque que existe en cada ecosistema tecnológico, es decir, la idea es tratar de reducir las oportunidades que tendría un atacante de llevar a cabo una acción hostil a través de la explotación de una vulnerabilidad conocida.

Superfície de ataque

Para ser claros, la superficie de ataque de una organización puede explicarse rápidamente como el conjunto de puntos de entrada o puntos de exposición a un sistema que pueden ser explotados por un atacante. Estos puntos pueden incluir servidores, aplicaciones, diversos dispositivos, interfaces de usuario e incluso personas. El tamaño de la superficie de ataque es directamente proporcional a la probabilidad de que un actor malicioso explote una vulnerabilidad (de cualquier tipo) y comprometa la seguridad del ecosistema.


Grupos de activos en una superficie de ataque


Definiendo una evaluación de vulnerabilidad

En resumen, una evaluación de vulnerabilidades es un proceso sistemático y proactivo para identificar y evaluar las vulnerabilidades potenciales de los sistemas. Suele llevarse a cabo mediante actividades de examen activo de redes, servidores, aplicaciones y dispositivos para detectar los puntos débiles mencionados que podrían ser aprovechados por los atacantes. Esta evaluación permite a los administradores de sistemas identificar amenazas potenciales y tomar medidas correctivas para reforzar la seguridad. Puede hacerse "manualmente" mediante scripts en lenguaje Python o Bash, por ejemplo, pero lo más habitual es que se realicen mediante herramientas desarrolladas para este fin, tanto comerciales como de código abierto.

¡Atención!

Debido al elevado coste que supone la contratación de herramientas comerciales y a la complejidad de implementación de las herramientas open source que realizan este tipo de actividades, sumado a la naturaleza de los escaneos que realizan, que pueden tener una connotación intrusiva, no es infrecuente que exista confusión entre la finalidad de las evaluaciones de vulnerabilidades frente a las actividades de Red Team/Pentesting.


La evaluación de vulnerabilidades y los distintos tipos ejercicios de Red Team son tareas complementarias pero distintas. Ambas desempeñan papeles muy importantes en la identificación de vulnerabilidades de seguridad en las tecnologías, pero tienen propuestas diferentes.

El objetivo de las evaluaciones de vulnerabilidades es encontrar y documentar (para su posterior corrección) las vulnerabilidades presentes en redes, sistemas y aplicaciones. Estos descubrimientos permiten a la organización tomar conciencia del nivel de exposición en el que se encuentra para poder priorizar y corregir los problemas en función de la necesidad/urgencia. Las herramientas que realizan las pruebas y exploraciones suelen hacerlo de forma automatizada y se basan en una especie de base de datos que contiene, por lo general, vulnerabilidades conocidas.

Por otro lado, las actividades de Pentesting buscan simular ataques reales para evaluar la efectividad de los controles de seguridad de una organización en su conjunto. En estas actividades se pueden descubrir vulnerabilidades conocidas, sin embargo, la idea es que esto vaya más allá de una tarea común de evaluación de vulnerabilidades, encontrando también vulnerabilidades desconocidas, zero days, fallas en procesos entre otros descubrimientos.

Por lo tanto, la evaluación de la vulnerabilidades suele correr a cargo del Blue Team de la organización, es decir, el equipo responsable de la protección de los activos en términos más defensivos.

Importancia de la evaluación de la vulnerabilidad

A continuación se muestra una tabla de métricas desarrollada y actualizada por el proyecto CVE (Common Vulnerabilities and Exposures), y nos muestra que solo en 2022 se registraron 25.059 nuevas vulnerabilidades, y el primer trimestre de 2023 ya muestra un aumento de 1000 vulnerabilidades en comparación con el mismo período del año anterior. Estos datos por sí solos deberían bastar para convencer al lector de la importancia de realizar este tipo de pruebas.


Registros CVE publicados - Fuente: CVE.org


Además de la absurda cantidad de vulnerabilidades que se descubren cada día, en términos generales, estas evaluaciones son importantes para mantener la seguridad del ecosistema y reducir los riesgos de ciberataques causados por vulnerabilidades conocidas. Un punto importante a destacar es que estas evaluaciones deben realizarse periódicamente, según el tamaño de la organización y la complejidad de cada entorno.

Profundizando un poco más en el tema, podemos enumerar algunas ventajas de la evaluación periódica (y continua):

 • Identificación de nuevas vulnerabilidades en el entorno: en cada ciclo pueden descubrirse nuevas vulnerabilidades, ya sea en los sistemas operativos, las aplicaciones o la infraestructura de red.

 • Cumplimiento de las mejores prácticas de seguridad: mediante evaluaciones periódicas, las organizaciones garantizan la conformidad con las mejores prácticas de seguridad y las normas de cumplimiento. El lector atento asociará este punto con los principales marcos de seguridad utilizados como guías internacionales de mejores prácticas, como el NIST CSF y publicaciones especiales, CIS V8, etc. Es una práctica que ayuda a mantener una postura de seguridad actualizada y a evitar la exposición a riesgos innecesarios.

 • Respuesta a nuevas amenazas: las amenazas evolucionan constantemente y se desarrollan nuevas técnicas de ataque con regularidad. Mediante la realización de evaluaciones periódicas, las organizaciones pueden identificar rápidamente las nuevas amenazas y ajustar sus defensas.

¡Periodicidad!

No existe una receta mágica que presente la periodicidad "correcta" para las evaluaciones de vulnerabilidades y que se aplique a todos los tipos de organizaciones, ya que hay variables que deben tenerse en cuenta, como: el tamaño y la actividad final de la organización, la naturaleza de los activos, las posibles amenazas del entorno, la frecuencia de los cambios en el entorno y varias otras.

Los marcos de buenas prácticas, en general, no citan una periodicidad específica para realizar cualquier tipo de prueba de seguridad, por lo que, de nuevo pensando de forma generalista, teniendo en cuenta únicamente el tamaño de las organizaciones, se puede pensar en el siguiente esquema:

 • Pequeñas organizaciones: evaluaciones cada 6 meses o anualmente, dependiendo de la complejidad del entorno y de la cantidad de cambios aplicados.

 • Organizaciones medianas: en este caso, el periodo de reevaluación puede ser algo más corto, de 3 a 6 meses, para mantener un buen nivel de seguridad y seguir el ritmo de los cambios y actualizaciones aplicados en los sistemas.

 • Grandes organizaciones: debido a la madurez y las necesidades de seguridad, la complejidad y la escala de los sistemas implicados, las evaluaciones en este caso pueden ser incluso más pequeñas, por ejemplo, realizarlas cada 1-3 meses puede ser adecuado.

Una vez más, es importante subrayar que estos periodos son solo sugerencias basadas en una de las múltiples variables que implican las pruebas de seguridad, y deben adaptarse a las necesidades específicas de cada organización, teniendo en cuenta factores como el entorno de amenazas, la criticidad de los activos y los requisitos de cumplimiento aplicables.

Otras recomendaciones importantes que son independientes del tamaño de la organización:

 • Pruebas después de cambios importantes: los cambios importantes en el ecosistema deben ir seguidos de evaluaciones de la vulnerabilidad.

 • Variedad de herramientas: las diferentes herramientas de escaneado pueden aportar diferentes identificaciones de vulnerabilidades en sus informes.

 • Formación de los empleados: la mayoría de las vulnerabilidades son el resultado de errores humanos. Disponer de un calendario de formación en seguridad de la información a varios niveles, desde el desarrollador hasta el empleado del área menos tecnológica de la organización, puede ayudar a reducir los riesgos.

 • Actualización constante: Mantener actualizado el ecosistema es esencial para evitar algunos problemas.

Pasos para una buena evaluación de la seguridad

La publicación especial 800-115 del NIST (National Institute of Standards and Technology) "Technical Guide to Information Security Testing and Assessment" presenta directrices detalladas y prácticas recomendadas para realizar pruebas y evaluaciones de seguridad exhaustivas en ecosistemas informáticos completos, que incluyen aplicaciones, redes y sistemas. Siempre es interesante recordar que cada organización tiene sus propias particularidades en relación con el entorno y el valor de los activos, etc., pero basándonos en algunas de las directrices de la publicación especial del NIST y, comparando y adaptándonos a varias otras publicaciones y artículos de este estilo, es posible resumir (resumir mucho, incluso) una buena evaluación de vulnerabilidades en los siguientes pasos:

Planificación: Definir el alcance de la evaluación, identificar las redes, sistemas, aplicaciones, dispositivos y cualquier otro activo que deba evaluarse, establecer los objetivos y requisitos de seguridad, priorizar los activos en función de su criticidad y obtener las autorizaciones pertinentes.

Análisis de amenazas: Identificar las amenazas potenciales que podrían afectar a los activos del ecosistema y analizar las técnicas y vulnerabilidades conocidas; una buena fuente de consulta para ello es la matriz MITRE ATT&CK.

Exploración de vulnerabilidades: uso de herramientas automatizadas y técnicas manuales para la identificación activa de vulnerabilidades conocidas en el entorno.

Análisis de riesgos: Evaluar el impacto potencial y la probabilidad de explotación de cada vulnerabilidad identificada, teniendo en cuenta la criticidad de los activos.

Informe y recomendaciones: Redactar un informe que contenga todas las vulnerabilidades identificadas y recomendaciones para remediarlas y mejorar la seguridad.

Mitigación y corrección: Según la prioridad y criticidad de cada activo y vulnerabilidad respectivamente, lleve a cabo las acciones de corrección recomendadas, como aplicar parches, configurar sistemas o actualizar políticas de seguridad.

Repetición de pruebas: Esta es una tarea que a menudo se pasa por alto, pero no debería ser así. Una vez identificadas las vulnerabilidades y corregidas adecuadamente, es importante volver a probar algunas vulnerabilidades y realizar pruebas adicionales para confirmar que las vulnerabilidades se han corregido y que las acciones de mitigación fueron eficaces.

Revisión y mejora continua: Realice una revisión posterior a la evaluación para identificar oportunidades de mejora en la propia metodología de evaluación y en las prácticas de seguridad de la organización.

La imagen siguiente resume el ciclo descrito en 6 etapas:


Ejemplo de ciclo de vida de la gestión de vulnerabilidades


Herramientas de exploración

A ChatGPT se le pidió que clasificara las cinco mejores herramientas de evaluación de vulnerabilidades disponibles tanto comercialmente como gratuitas o de código abierto y a continuación está su respuesta:

Herramientas comerciales:

 • Nessus (Tenable)
 • Qualys
 • Rapid7 Nexpose
 • Acunetix
 • BeyondTrust Retina

Herramientas de código abierto:

 • OpenVAS
 • OWASP ZAP
 • Nikto
 • Nmap
 • Wapiti

Conclusiones

Después de todo lo aquí presentado, es posible concluir que la evaluación de vulnerabilidades es una tarea fundamental para que una organización eleve su nivel de madurez en ciberseguridad y tenga una postura de seguridad más robusta. Es importante que esta sea una tarea continua y regular para el Blue Team, o equipos de seguridad en general, que deben pensar en la seguridad de forma proactiva, además de todas las medidas reactivas que son inherentes a esta función, es decir, es esencial estar un paso por delante de las amenazas cibernéticas, y estas evaluaciones periódicas ayudan a lograr este objetivo.

Otro punto importante a destacar es la integración de estas evaluaciones con las actividades de los equipos ofensivos, que deben poner a prueba las correcciones aplicadas y validar su eficacia.

En resumen, para que el proceso sea realmente eficaz, es esencial que las organizaciones sigan las mejores prácticas, realicen pruebas de seguridad con una regularidad que debe definirse dentro de una política, corrijan los problemas detectados y se mantengan al día de las amenazas en constante evolución.