Runtime Code Analysis (IAST)

Este producto no es compatible con el sitio Datadog seleccionado. ().

Información general

Datadog Runtime Code Analysis (IAST) identifica vulnerabilidades a nivel de código en tus servicios. Para ello utiliza un enfoque Interactive Application Security Testing (IAST) para encontrar vulnerabilidades dentro del código de tu aplicación, en función de la instrumentación de tu aplicación Datadog.

IAST permite a Datadog identificar vulnerabilidades utilizando tráfico legítimo de aplicaciones en lugar de depender de tests externos que podrían requerir una configuración adicional o una programación periódica. También monitoriza las interacciones de tu código con otros componentes de tu stack tecnológico, como bibliotecas e infraestructura, proporcionando una vista actualizada de tu superficie de ataque.

Para obtener una lista de los servicios compatibles, consulta los requisitos de compatibilidad de las bibliotecas. Las reglas de detección IAST admiten los siguientes lenguajes:

GravedadRegla de detecciónCódigoJava.NETNode.jsPython
ImprescindibleInyección NoSQLNOSQL_MONGODB_INJECTIONFALSOVERDADEROVERDADEROFALSO
ImprescindibleInyección SQLSQL_INJECTIONVERDADEROVERDADEROVERDADEROVERDADERO
ImprescindibleFalsificación de solicitudes del lado del servidor (SSRF)SSRFVERDADEROVERDADEROVERDADEROVERDADERO
ImprescindibleInyección de códigoCODE_INJECTIONFALSOFALSOVERDADEROFALSO
ImprescindibleInserción de comandosCOMMAND_INJECTIONVERDADEROVERDADEROVERDADEROVERDADERO
AltoInyección LDAPLDAP_INJECTIONVERDADEROVERDADEROVERDADEROFALSO
AltoInyección HTML en correos electrónicosEMAIL_HTML_INJECTIONVERDADEROVERDADEROVERDADEROFALSO
AltoSecretos codificadosHARDCODED_SECRETVERDADEROVERDADEROVERDADEROFALSO
AltoContraseñas codificadasHARDCODED_PASSWORDFALSOFALSOVERDADEROFALSO
AltoRecorrido de la rutaSENDERO_TRAVERSALVERDADEROVERDADEROVERDADEROVERDADERO
AltoViolación de los límites de confianzaTRUST_BOUNDARY_VIOLATIONVERDADEROVERDADEROFALSOFALSO
AltoCross-Site Scripting (XSS)XSSVERDADEROVERDADEROFALSOFALSO
AltoDeserialización no fiableUNTRUSTED_DESERIALIZATIONVERDADEROFALSOFALSOFALSO
AltoRedirección no validadaUNVALIDATED_REDIRECTVERDADEROVERDADEROVERDADEROFALSO
AltoInyección XPathXPATH_INJECTIONVERDADEROVERDADEROFALSOFALSO
AltoInyección de cabecerasHEADER_INJECTIONVERDADEROVERDADEROVERDADEROVERDADERO
AltoFuga en la lista de directoriosDIRECTORY_LISTING_LEAKVERDADEROFALSOFALSOFALSO
AltoEscape HTML por defecto no válidoDEFAULT_HTML_ESCAPE_INVALIDVERDADEROFALSOFALSOFALSO
AltoVerb TamperingVERB_TAMPERINGVERDADEROFALSOFALSOFALSO
MedioCookie no SameSiteNO_SAMESITE_COOKIEVERDADEROVERDADEROVERDADEROVERDADERO
MedioCookie inseguraINSECURE_COOKIEVERDADEROVERDADEROVERDADEROVERDADERO
MedioCookie no HttpOnlyNO_HTTPONLY_COOKIEVERDADEROVERDADEROVERDADEROVERDADERO
MedioHashing débilWEAK_HASHVERDADEROVERDADEROVERDADEROVERDADERO
MedioCifrado débilWEAK_CIPHERVERDADEROVERDADEROVERDADEROVERDADERO
MedioFuga de stacktracesSTACKTRACE_LEAKVERDADEROVERDADEROFALSOFALSO
MedioInyección de reflexiónREFLECTION_INJECTIONVERDADEROVERDADEROFALSOFALSO
MedioProtocolo de autenticación inseguroINSECURE_AUTH_PROTOCOLVERDADEROVERDADEROFALSOFALSO
MedioClave codificadaHARDCODED_KEYFALSOVERDADEROFALSOFALSO
MedioDiseño JSP inseguroINSECURE_JSP_LAYOUTVERDADEROFALSOFALSOFALSO
BajoCabecera HSTS faltanteHSTS_HEADER_MISSINGVERDADEROVERDADEROVERDADEROFALSO
BajoCabecera de X-Content-Type-Options faltanteXCONTENTTYPE_HEADER_MISSINGVERDADEROVERDADEROVERDADEROFALSO
BajoAleatoriedad débilWEAK_RANDOMNESSVERDADEROVERDADEROVERDADEROVERDADERO
BajoConsola de administración activaADMIN_CONSOLE_ACTIVEVERDADEROFALSOFALSOFALSO
BajoTiempo de espera de la sesiónSESSION_TIMEOUTVERDADEROFALSOFALSOFALSO
BajoReescritura de sesionesSESSION_REWRITINGVERDADEROFALSOFALSOFALSO

Cómo detecta IAST las vulnerabilidades

Datadog Runtime Code Analysis (IAST) utiliza las mismas bibliotecas de rastreo que Datadog APM, lo que te permite monitorizar el tráfico de aplicaciones en directo y detectar vulnerabilidades a nivel de código en tiempo real. Sigue el siguiente proceso:

  • Seguimiento de las fuentes de datos: IAST observa los datos que ingresan a tu aplicación desde fuentes externas, como las URL, los cuerpos o las cabeceras de solicitudes. Estas entradas se etiquetan y supervisan durante todo su ciclo de vida.
  • Análisis del flujo de datos: La biblioteca de rastreo de Datadog realiza un seguimiento de cómo se mueven los datos de entrada a través de la aplicación, incluso si se transforman, dividen o combinan. Esto permite a IAST comprender si la entrada original llega a partes sensibles del código y cómo lo hace.
  • Identificación de puntos vulnerables: IAST detecta localizaciones de código en las que las entradas controladas por el usuario se utilizan de forma potencialmente insegura, por ejemplo, en consultas SQL, ejecución de código dinámico o renderización de HTML.
  • Confirmación de la vulnerabilidad: Sólo se informa de una vulnerabilidad cuando IAST puede confirmar que una entrada contaminada llega a un punto vulnerable del código. Este enfoque minimiza los falsos positivos y garantiza que los hallazgos sean procesables.

Exploración y gestión de las vulnerabilidades del código

El Explorador de vulnerabilidades utiliza datos sobre amenazas en tiempo real para ayudarte a comprender las vulnerabilidades que ponen en peligro tu sistema. Las vulnerabilidades se ordenan por gravedad.

Code Security en el Explorador de vulnerabilidades

Para clasificar las vulnerabilidades, cada una de ellas contiene una breve descripción del problema, que incluye:

  • Servicios afectados.
  • Tipo de vulnerabilidad.
  • Primera detección.
  • El archivo exacto y el número de línea donde se ha encontrado la vulnerabilidad.
Información de las vulnerabilidades de Code Security

Cada detalle de vulnerabilidad incluye una puntuación de riesgo (consulta la siguiente captura de pantalla) y una clasificación de gravedad: crítica, alta, media o baja.

La puntuación del riesgo se adapta al contexto específico del tiempo de ejecución, incluidos factores como dónde se despliega la vulnerabilidad y si el servicio es blanco de ataques activos.

Prioridad de las vulnerabilidades en Code Security

Corregir una vulnerabilidad del código

Datadog Code Security proporciona automáticamente la información que los equipos necesitan para identificar dónde se encuentra una vulnerabilidad en una aplicación, desde el nombre del archivo afectado hasta el método y el número de línea exactos.

Corrección de vulnerabilidades de Code Security

Cuando la integración GitHub está habilitada, Code Security muestra la primera versión afectada de un servicio, la confirmación que ha generado la vulnerabilidad y un fragmento del código vulnerable. Esta información permite a los equipos saber dónde y cuándo se ha producido una vulnerabilidad y les ayuda a definir prioridades en su trabajo.

Fragmento de vulnerabilidad del código

Para cada vulnerabilidad detectada se ofrecen pasos detallados para su corrección.

Recomendaciones para correcciones

Las recomendaciones permiten cambiar el estado de una vulnerabilidad, asignarla a un miembro del equipo para su revisión y crear una incidencia en Jira para su seguimiento.

Creación de un ticket de Kira a partir de una vulnerabilidad

Nota: Para crear incidencias sobre vulnerabilidades en Jira, debes configurar la integración Jira y tener el permiso manage_integrations. Para obtener instrucciones detalladas, consulta la documentación de la integración Jira y la documentación Control del acceso basado en roles.

Activar Runtime Code Analysis (IAST)

Para habilitar IAST, configura la biblioteca de rastreo de Datadog. Encontrarás instrucciones detalladas para ambos métodos en la sección Seguridad > Code Security > Configuración.

Si necesitas más ayuda, ponte en contacto con el servicio de asistencia de Datadog.

Desactivar Code Security

Para obtener información sobre cómo desactivar IAST, consulta Desactivación de Code Security.

Referencias adicionales