A05:2021 – Security misconfiguration
Compartir
Introducción
Descripción de la vulnerabilidad
Como continuación a esta serie de posts sobre las vulnerabilidades OWASP Top Ten, en este post se va a comentar sobre la vulnerabilidad A05:2021 - Security Misconfiguration o en castellano: Configuración incorrecta de ciberseguridad.
Esta vulnerabilidad hace referencia a configuraciones de ciberseguridad no implementadas o implementadas de manera incorrecta y puede manifestarse de diversas formas, desde la utilización de configuraciones predeterminadas o inseguras hasta la exposición innecesaria de información sensible o la habilitación de servicios innecesarios.
Sucede cuando una aplicación o servidor no está configurado correctamente, lo que permite a un atacante aprovechar esta falta de configuración para acceder a datos sensibles, elevar privilegios y conseguir el control de la aplicación.
Impacto
Esta vulnerabilidad puede tener consecuencias devastadoras para una organización.
Al explotar una configuración insegura, los atacantes pueden obtener acceso a información sensible, elevar privilegios en la aplicación, o incluso utilizar los recursos comprometidos para realizar ataques a terceros.
El impacto de esta vulnerabilidad se puede reflejar en los siguientes puntos:
- Exposición de información sensible: Cuando un sistema no está configurado adecuadamente, puede permitir que un adversario acceda a datos sensibles, como credenciales de usuario, información personal o secretos comerciales.
- Control del sistema: En algunos casos, una mala configuración puede otorgar a los atacantes la capacidad de tomar el control completo del sistema, lo que les permite modificar o destruir datos o utilizar los recursos del sistema para llevar a cabo otros ataques.
- Compromiso de la disponibilidad del sistema: Un adversario puede aprovechar una configuración incorrecta para lanzar ataques de denegación de servicio (DoS) que interrumpan el funcionamiento normal de la aplicación o del servidor, lo que puede afectar a la disponibilidad de los servicios para los usuarios legítimos.
- Uso del sistema como plataforma de ataque: Los sistemas comprometidos debido a una mala configuración de seguridad pueden ser utilizados por los atacantes como plataformas desde las cuales lanzar ataques a otros sistemas, lo que puede ampliar considerablemente el alcance del daño.
Ejemplos prácticos
Exposición de credenciales en el código fuente de la aplicación y elevación de privilegios
Uno de los ejemplos más comunes de esta vulnerabilidad es cuando una aplicación se despliega con configuraciones por defecto, contraseñas en el código de la aplicación usadas en la etapa de desarrollo o permisos a usuarios que son más amplios de lo necesario.
Para demostrar esto, se accede al laboratorio web de Zerolynx con un usuario sin privilegios, user1 en este caso.
Exposición de la estructura de ficheros de la aplicación
Compromiso de la disponibilidad debido a software vulnerable
Mitigaciones
- Un proceso de hardening repetible hace que sea rápido y fácil desplegar y que esté adecuadamente implementado. Los entornos de desarrollo, control de calidad y producción deben configurarse de forma idéntica, utilizando credenciales diferentes en cada uno de ellos.
- Una plataforma mínima sin características, componentes, documentación y muestras innecesarias.
- Revisar y actualizar las configuraciones adecuadas a todas las notas de seguridad, actualizaciones y parches como parte del proceso de gestión de parches.
- El uso de una arquitectura de aplicaciones segmentada que proporcione una separación eficaz y segura entre los componentes de la aplicación.
- Correcta implementación de las Cabeceras de Seguridad.
- Implementación de procesos automáticos antes de desplegar a producción que aseguren la efectividad de las medidas adoptadas.