Glosario de seguridad de Xygeni
Glosario de seguridad de entrega y desarrollo de software

¿Qué es la inyección LDAP?

¿Sabes qué es la inyección LDAP? Es una técnica de inyección de código dirigida a aplicaciones que construyen consultas de inyección utilizando entradas de usuario no saneadas. LDAP (Protocolo Ligero de Acceso a Directorios) se utiliza comúnmente para búsquedas en directorios, como la autenticación de usuarios o la recuperación de datos de organizaciones. Cuando los atacantes proporcionan una entrada especialmente diseñada que contiene metacaracteres LDAP, pueden modificar la lógica de las consultas de directorio para acceder o alterar los datos de forma indebida. En efecto, una vulnerabilidad de inyección LDAP surge cuando los filtros se construyen dinámicamente a partir de valores controlados por el usuario sin sanear ni validar la entrada.

Cómo funciona: Mecánica de un ataque de inyección LDAP #

Un ataque de inyección LDAP ocurre cuando los datos proporcionados por el usuario se incorporan de forma insegura en una consulta LDAP. Considere un login filtro:

(&(cn=" + nombre de usuario + ")(contraseña de usuario=" + contraseña + "))

Si un atacante envía secuencias * o de terminación en lugar de un nombre de usuario válido, la lógica del filtro se reduce a una evaluación más amplia o una condición siempre verdadera, omitiendo así la autenticación. Así es exactamente como funciona esta inyección: inyectando lógica LDAP para subvertir el comportamiento deseado.

Entonces, la vulnerabilidad de inyección LDAP surge de la construcción de consultas a través de entradas no confiables que incluyen caracteres especiales, como paréntesis, comillas y comodines, que modifican la semántica de la consulta.

Además, ocurren cuando el código de la aplicación copia datos del usuario de forma insegura en una consulta LDAP y no logra neutralizar los metacaracteres, lo que permite a los atacantes interrumpir o manipular la lógica de la consulta, acceder a datos no autorizados o alterar el flujo de ejecución. 

¿Por qué es importante un ataque de inyección LDAP? #

Un ataque de inyección LDAP puede interrumpir la autenticación, filtrar información confidencial o incluso modificar la estructura de directorios. Imperva destaca que los actores de amenazas pueden comprometer los procesos de autenticación, ver o modificar nombres de usuario y contraseñas, instalar malware y escalar privilegios, lo que resulta en filtraciones de datos, daños a la reputación y pérdidas financieras.

Las vulnerabilidades de inyección de LDAP pueden propagarse a través de servicios interconectados, especialmente en enterprise entornos que utilizan LDAP para inicio de sesión único (SSO), autorización o coordinación de identidad y permisos de usuario.

Señales de una vulnerabilidad de inyección LDAP existente #

En ciberseguridad, la gobernanza se refiere a cómo el liderazgo, las políticas y las principales señales de alerta:

  • El código concatena la entrada del usuario directamente en los filtros LDAP.
  • Falta de validación de entrada o escape.
  • Uso de caracteres especiales como () * y | = en la entrada sin restricción.
  • Resultados de consulta inesperados, por ejemplo, la autenticación tiene éxito independientemente de las credenciales o se obtienen resultados de listas de usuarios amplias con una entrada mínima.

Las consultas mal construidas a partir de la entrada del usuario pueden permitir la recuperación de datos no autorizados o la evasión de la lógica.

¿Cómo mitigarlos? #

La mitigación de la vulnerabilidad de inyección LDAP implica:

a. Validación de entrada/Lista de permitidos

Acepte únicamente caracteres o patrones seguros conocidos. Rechace o depure caracteres de control como *, (, ), &, |, =. PortsWigger recomienda bloquear las entradas que contengan metacaracteres LDAP o aplicar patrones alfanuméricos estrictos.

b. Escape/codificación

Utilice funciones de escape específicas de LDAP: escape de nombres distinguidos para contextos de DN y escape de filtros de búsqueda para predicados. OWASP proporciona una información detallada. Hoja de trucos de prevención con orientación personalizada

c. Consultas parametrizadas / API seguras

Evite crear filtros mediante la concatenación de cadenas. Utilice bibliotecas LDAP compatibles con la vinculación de parámetros o API de construcción de filtros (p. ej., Filter.createANDFilter(…) del SDK de UnboundID) para garantizar que la entrada del usuario se trate como datos, no como sintaxis.

d. Principio de privilegio mínimo (PoLP)

Vincula LDAP con permisos de acceso mínimos. Incluso si se produce una inyección, limita las acciones que un atacante puede realizar. Underscore PoLP combinado con confianza cero y MFA para restringir el impacto.

e. Marcos/bibliotecas seguros

Utilice marcos que escapen o desinfecten automáticamente las entradas y desalienten la creación de consultas sin procesar.

f. Herramientas de análisis de código

En .NET, utilice el análisis CA3005 para detectar entradas HTTP no confiables que llegan a declaraciones LDAP; corríjalas desinfectando, escapando o permitiendo la entrada.

g. Pruebas (estáticas, dinámicas, pruebas de penetración)

Integrar Static AppSec (SAST) y dinámico (DAST) escaneo para detectar vulnerabilidades de inyección LDAP tanto en reposo como en tiempo de ejecución.

h. Registro, monitoreo y alertas

Detecte patrones de filtrado anómalos, intentos fallidos o estructuras de consulta inesperadas. Semperis recomienda supervisar Active Directory para detectar consultas LDAP irregulares o manipulación de metadatos.

Tabla de resumen del glosario #

Término Significado
Inyección LDAP Una técnica de inyección de código que explota la entrada de usuario no saneada en los filtros LDAP.
¿Qué es la inyección LDAP? Una vulnerabilidad que surge de la creación de consultas LDAP con entradas no confiables.
Ataque de inyección LDAP La explotación real donde la entrada altera la lógica de consulta LDAP o obtiene acceso.
Vulnerabilidad de inyección LDAP La falla a nivel de código permite ataques de inyección LDAP.

¿Por qué esto es importante en DevSecOps? #

Para Equipos de DevSecOpsPrevenir la vulnerabilidad de inyección LDAP es vital para proteger los flujos de autenticación y el control de acceso basado en directorios. Integración continua. pipelineLos servicios deben incluir comprobaciones de código estático para la construcción de consultas inseguras y pruebas dinámicas para la manipulación de filtros. Los administradores de seguridad deben garantizar el uso de bibliotecas de escape, el uso de API parametrizadas y el cumplimiento de las políticas de mínimos privilegios y validación de entrada.

Fortalecimiento de DevSecOps Pipelines con Xygeni #

Ahora que sabe qué es la inyección LDAP, sabe que proteger las aplicaciones modernas contra ellas requiere más que correcciones a nivel de código. Los equipos de DevSecOps deben implementar la seguridad en todo el sistema. Ciclo de vida del desarrollo de programas, Desde el código hasta la construcción y la implementación.

Herramientas como xygeni Permitir a los equipos detectar sus riesgos de inyección de forma temprana mediante la integración del análisis estático, IaC escaneo y aplicación segura de políticas directamente en CI/CD Flujos de trabajo. Al monitorear continuamente la construcción de consultas inseguras, los riesgos de dependencia o las configuraciones incorrectas, Xygeni ayuda a prevenir ataques de inyección LDAP antes de que lleguen a producción.

La incorporación de plataformas como Xygeni alinea la seguridad con la velocidad de desarrollo, brindando visibilidad en tiempo real, controles automatizados y orientación de remediación adaptada a la ingeniería segura por diseño.

Descripción general del conjunto de productos Xygeni

Comience su prueba

Empiece gratis.
Sin tarjeta de crédito.

Empieza con un clic:

Esta información se guardará de forma segura según las Términos de Servicio y Política de privacidad

Captura de pantalla de la prueba gratuita de Xygeni