Mala configuración de seguridad
La configuración incorrecta de seguridad surge cuando la configuración de seguridad se define, implementa y mantiene como predeterminada. Una buena seguridad requiere una configuración segura definida e implementada para la aplicación, el servidor web, el servidor de base de datos y la plataforma. Es igualmente importante tener el software actualizado.
Ejemplo
Algunos ejemplos clásicos de configuración incorrecta de seguridad son los siguientes:
Si la lista de directorios no está deshabilitada en el servidor y si el atacante descubre lo mismo, entonces el atacante puede simplemente enumerar directorios para encontrar cualquier archivo y ejecutarlo. También es posible obtener la base de código real que contiene todo su código personalizado y luego encontrar fallas graves en la aplicación.
La configuración del servidor de aplicaciones permite que los seguimientos de la pila se devuelvan a los usuarios, lo que podría exponer fallas subyacentes. Los atacantes obtienen esa información adicional que proporcionan los mensajes de error y que es suficiente para que puedan penetrar.
Los servidores de aplicaciones generalmente vienen con aplicaciones de muestra que no están bien protegidas. Si no se elimina del servidor de producción, se comprometerá su servidor.
Las manos en
Step 1- Inicie Webgoat y navegue a la sección de configuración insegura y tratemos de resolver ese desafío. A continuación, se proporciona una instantánea de la misma:
Step 2- Podemos probar tantas opciones como se nos ocurran. Todo lo que necesitamos para encontrar la URL del archivo de configuración y sabemos que los desarrolladores siguen una especie de convención de nomenclatura para los archivos de configuración. Puede ser cualquier cosa que se enumere a continuación. Por lo general, se realiza mediante la técnica de fuerza BRUTE.
- web.config
- config
- appname.config
- conf
Step 3 - Al probar varias opciones, encontramos que 'http://localhost:8080/WebGoat/conf' es exitoso. La siguiente página se muestra si el intento es exitoso:
Mecanismos preventivos
Todos los entornos, como los de desarrollo, control de calidad y producción, deben configurarse de forma idéntica utilizando diferentes contraseñas utilizadas en cada entorno que no se puedan piratear fácilmente.
Asegúrese de que se adopte una arquitectura de aplicación sólida que proporcione una separación segura y eficaz entre los componentes.
También puede minimizar la posibilidad de este ataque mediante la ejecución de análisis automatizados y auditorías periódicamente.