Directrices

Configuración de seguridad incorrecta

La configuración de seguridad incorrecta es un término general que abarca vulnerabilidades comunes que surgen debido a los ajustes de configuración de una aplicación, más que por un código deficiente. Es un tema amplio que depende en gran medida de factores como su pila tecnológica.

A menudo, solucionar estos problemas parece sencillo, como cambiar un archivo de configuración o incluso una sola línea de código, pero el impacto y las consecuencias de estas vulnerabilidades pueden ser graves.

Echemos un vistazo a algunas de las categorías a continuación.

Categorías

Servidor web

Una configuración incorrecta clásica en los servidores web es la habilitación del listado de directorios.

Aunque a menudo el impacto directo de tener habilitado el listado de directorios es mínimo o nulo, facilita que un atacante descubra otros errores que también podrían existir. Estos podrían ser páginas ocultas intencionadamente, archivos de copia de seguridad y otros elementos similares.

Cabe señalar que todas estas cosas son, en sí mismas, malas prácticas y se consideran seguridad por oscuridad.

El listado de directorios es trivial de desactivar y añade una defensa en profundidad al hacer que sea más costoso para un atacante enumerar el host para encontrar posibles vectores de ataque contra él.

Frameworks

Modo de depuración

La mayoría de los frameworks ofrecen un modo de "depuración" para los desarrolladores. Este modo, entre otras cosas, suele mostrar detalles del seguimiento de la pila cuando se produce una excepción no controlada. Algunos frameworks incluso muestran fragmentos de código junto con el seguimiento de la pila. Esto puede ser inmensamente útil durante el desarrollo, pero también puede proporcionar a los atacantes mucha información a la que no deberían tener acceso.

Endpoints de monitoreo

Muchos frameworks también tienen un conjunto de endpoints que se pueden habilitar para permitir el monitoreo de la aplicación, ya sea en un entorno de producción o de prueba/desarrollo.

Estos pueden incluir:

  • Métricas (Prometheus)
  • Registros
  • Información del entorno
  • Mapeos de rutas/URL

Aunque esta información no suele ser sensible, puede proporcionar detalles que ayuden a posibles atacantes a comprender mejor su aplicación. Por supuesto, su entorno o sus registros pueden de hecho contener información confidencial, por lo que es importante ser consciente de lo que podría quedar visible y ser utilizado si alguien no autorizado llegara a acceder a ello.

La distinción entre entornos de producción y entornos que no lo son

La gente suele cometer el error de no seguir las directrices, como desactivar el listado de directorios, el modo de depuración y los endpoints de depuración en entornos de desarrollo/prueba, y hacerlo solo en entornos de producción. La justificación es que estos sistemas que no son de producción están destinados a pruebas y que la información proporcionada por estas funciones es importante.

Sin embargo, esta mentalidad es errónea. Los atacantes aún pueden sondear y extraer información de sistemas que no son de producción, para luego utilizarla y atacar su sistema de producción. Tampoco es raro encontrar empresas que utilizan copias de sus bases de datos de producción en sistemas de prueba, lo que aumenta el riesgo aún más.

XXE

Un tipo de configuración de seguridad incorrecta muy grave son las Entidades Externas XML (XXE).

Esto ocurre cuando se analiza información de fuentes no confiables con la resolución de entidades habilitada, algo que ha sido habitual históricamente. XXE puede derivar en la lectura arbitraria de archivos y en la falsificación de solicitudes del lado del servidor, entre otras cosas.

Consulte el siguiente ejemplo para obtener más detalles y ver un caso sencillo de esta vulnerabilidad en particular.

EJEMPLO DE XXE

Eslogan

Programación segura y práctica

Explore las directrices de programación segura para comprender y mitigar vulnerabilidades de software como el OWASP Top 10, y sumérjase en misiones de formación guiada para practicar en simulaciones de aplicaciones del mundo real.

Más directrices
Reservar una demostración