Enriquecimiento del código al tiempo de ejecución para obtener recomendaciones

Overview

Las aplicaciones en la nube modernas pasan por fases que pueden incluir código fuente, canalizaciones, registros y entornos en tiempo de ejecución. Un pequeño cambio de código puede crear muchas cargas de trabajo en la nube en todos los entornos. Cuando aparece un problema de seguridad en tiempo de ejecución, es posible que no sepa dónde se inicia el problema o cuántos recursos afecta.

El código en tiempo de ejecución proporciona visibilidad de un extremo a otro en el ciclo de vida de desarrollo de software (SDLC). Code to runtime te ayuda a encontrar el origen de un problema, evaluar su radio de explosión y solucionar el problema en la fuente.

Antes de continuar, echa un vistazo a los requisitos previos para el mapeo de imágenes del contenedor.

Dónde ve código en tiempo de ejecución

Puede acceder al código en tiempo de ejecución desde las recomendaciones en Microsoft Defender para la nube.

Note

Actualmente solo se admiten recomendaciones de evaluación de vulnerabilidades para contenedores e imágenes de contenedor.

Cuando el contexto sdLC está disponible, la página de recomendaciones muestra lo siguiente:

  • Un banner de contexto que indica el flujo de SDLC del problema
  • Una vista de cadena SDLC: Origen → Canalización de CI/CD → Registro → Tiempo de ejecución
  • Recuento dinámico de recursos afectados
  • Tarjetas que representan cada fase de SDLC
  • Vínculos a vistas más profundas y acciones de corrección

Cómo el código en tiempo de ejecución compila contexto de un extremo a otro

Para cualquier recomendación respaldada por código para ejecución en tiempo real, Defender correlaciona los datos en el SDLC para identificar:

  1. Donde se originó el problema (por ejemplo, en código o en la canalización de compilación).
  2. Qué fases intermedias están implicadas. Estas fases incluyen la imagen en el registro y la canalización de CI/CD que formaba parte de la implementación.
  3. ¿Cuántos activos se ven afectados, proporcionándole visibilidad sobre el radio de explosión?
  4. Qué acciones puede realizar en cada fase.

¿Por qué es importante esta característica?

El código a tiempo de ejecución importa por varias razones:

  • La corrección solo en tiempo de ejecución puede hacer que el problema vuelva a aparecer durante la siguiente implementación.
  • La corrección en el origen evita regresiones periódicas.
  • Comprender el impacto le ayuda a planear los lanzamientos y coordinar el trabajo.
  • Le ayuda a identificar al propietario de la solución.

Recorrido por la cadena SDLC desde el tiempo de ejecución hasta el origen

La cadena SDLC proporciona una ruta de acceso lineal clara que explica cómo se creó la carga de trabajo afectada. Cada fase aparece como una tarjeta. Puedes ampliar cada carta de etapa para ver los metadatos y las acciones disponibles.

Descripción del radio de impacto de la incidencia

Antes de tomar medidas, puede abrir la cuadrícula Todos los recursos afectados para obtener más información:

  1. En la lista se muestran los recursos afectados del mismo origen. Incluye recursos en el entorno de nube o en el entorno de código. Corregir el problema en el origen puede afectar a todos los recursos afectados por procesos automatizados de CI/CD o por la implementación manual de código nuevo.
  2. Puede filtrar la lista en función de sus preferencias. Por ejemplo, puede filtrar los recursos en tiempo de ejecución por espacio de nombres de Kubernetes para asignar el problema a un equipo de desarrollo específico. También puede filtrar por metadatos de activos relevantes, como etiquetas de imagen, rótulos, etc.
  3. Al seleccionar una línea, el sistema muestra más detalles para esa instancia del problema.

La cuadrícula muestra:

  • Cada recurso afectado del mismo problema de seguridad y del mismo origen
  • Diferentes elementos de metadatos según el tipo de recurso
  • Opciones de filtrado y navegación

La cuadrícula de activos afectados te ayuda:

  • Dar prioridad a los problemas
  • Coordinar con equipos propietarios
  • Decida si necesita una implementación escalonada
  • Evitar interrupciones involuntarias de las cargas de trabajo dependientes

Control de datos que faltan o parciales

Algunas etapas de SDLC pueden no mostrar los datos completos. Entre las causas comunes se incluyen las siguientes:

  • Conectores deshabilitados
  • Faltan permisos
  • Señales de canalización ausentes
  • Configuraciones no soportadas

Para cada hueco, Defender muestra:

  • Por qué faltan los datos
  • Cómo activar o configurar las piezas que faltan
  • Próximos pasos para ampliar la cobertura de SDLC

Actuar sobre estas conclusiones

Una vez que comprenda el problema y su impacto, elija el siguiente paso adecuado:

Asignación de propiedad

Asigne la recomendación directamente a una persona o equipo dentro de Defender for Cloud.

Si la integración del repositorio está habilitada, puede hacer lo siguiente:

  • Rellenar automáticamente una incidencia con el contexto de SDLC
  • Enrutarla directamente al solucionador pertinente
  • Proporcionar instrucciones precisas sobre lo que necesita cambiar

Descubre más sobre la integración de seguridad avanzada de GitHub con Microsoft Defender para la nube.

Note

Actualmente solo está disponible en Azure Portal.

Exenciones para aplicar

Aplique exenciones de forma coherente.

Si excluye un hallazgo (temporalmente o permanentemente), puede hacerlo de la siguiente manera:

  • En la fase del SDLC donde tiene más sentido

  • Una vez, en lugar de repetidamente en varias cargas de trabajo

  • Con exenciones parciales si desea visibilidad sobre los resultados seleccionados

Flujo de trabajo de ejemplo

Una investigación típica que usa código para tiempo de ejecución incluye estos pasos:

  1. Abra una recomendación de contenedor.
  2. Revise el banner de contexto de SDLC.
  3. Identifique la primera fase en la que se originó el problema.
  4. Expanda tarjetas SDLC para explorar los datos de origen, canalización, registro y tiempo de ejecución.
  5. Use la cuadrícula de impacto para comprender cuántas cargas de trabajo se ven afectadas.
  6. Asigne la responsabilidad o abra un problema de GitHub.
  7. (Opcional) Aplique una exención en la fase adecuada del ciclo de vida del desarrollo de software (SDLC).

Resumen

Code to Runtime te ofrece una visión unificada y contextual a lo largo del ciclo de vida del desarrollo de software (SDLC), por lo que puedes:

  • Búsqueda del origen real de un problema en tiempo de ejecución
  • Comprender su alcance
  • Soluciónalo de una vez en el lugar más eficaz
  • Proporcionar a los equipos de ingeniería un contexto accionable y preciso

Esto ayuda a los equipos de seguridad e ingeniería a trabajar juntos y a reducir las reparaciones manuales repetidas.