Introducción

Ahora que los equipos de infraestructura despliegan modelos de IA, agentes y pipelines a escala en AWS, surge un problema crítico: no hay visibilidad centralizada de qué activos de IA existen ni cómo impactan tu postura de seguridad. Sin esta información, los hallazgos de amenazas en GuardDuty, las vulnerabilidades en Inspector o las configuraciones incorrectas en Config pueden quedar desconectados de los activos que realmente importan.

AWS Security Hub recién incorporó el inventario de IA, que descubre y correlaciona automáticamente modelos, endpoints de inferencia, agentes y dependencias externas en toda tu organización. Este inventario se actualiza continuamente, mapea cada activo a su infraestructura subyacente y lo vincula con hallazgos de seguridad del stack de AWS. En esta guía, vas a configurarlo en tu entorno y aprender a priorizar riesgos basados en amenazas activas.

Qué es y para qué sirve

El inventario de IA de Security Hub es un catálogo automático y en tiempo real de todos los activos de IA en tu organización, agrupados por cuenta, tipo de recurso, método de descubrimiento y modelo específico. Su propósito es resolver tres problemas comunes:

  1. Visibilidad fragmentada: Los modelos desplegados en SageMaker, Bedrock o EC2, los agentes de IA en contenedores y las llamadas a APIs externas (ej: Anthropic, Mistral) no siempre quedan registrados en una sola consola. El inventario los une en un único dashboard.
  2. Correlación de riesgos: Cada activo descubierto se vincula con hallazgos de GuardDuty (amenazas), Inspector (vulnerabilidades en SBOM) y Config (recursos no conformes). Así podés ver, por ejemplo, que un endpoint de inferencia de vLLM en EC2 tiene un hallazgo crítico de GuardDuty.
  3. Priorización basada en riesgo: Podés filtrar el inventario por cuentas, tipos de recursos (ej: SageMakerEndpoint), métodos de descubrimiento (Bedrock vs. EC2) o modelos específicos (ej: llama-3-8b). Esto permite enfocar remediaciones en los activos bajo amenaza activa.

El inventario no requiere configuración adicional para servicios gestionados (Bedrock, SageMaker), pero sí necesita que estén habilitados:

  • Amazon Inspector (para analizar SBOM de EC2 y ECR).
  • Amazon GuardDuty (para detectar llamadas a APIs externas desde EC2).
  • AWS Config (para inventariar recursos de Bedrock y SageMaker).

Prerequisitos

RequisitoVersión/ConfiguraciónNotas
**AWS Security Hub**Habilitado en todas las cuentasDebe estar en modo **Administrador** si usás AWS Organizations.
**Amazon GuardDuty**Habilitado en todas las cuentasRequerido para detectar llamadas a APIs externas.
**Amazon Inspector**Versión 2 (Vulnerability Scanning)Debe tener **SBOM analysis** activado.
**AWS Config**Habilitado con reglas de Bedrock y SageMakerUsá el **conjunto de reglas de AWS Managed Config** para estos servicios.
**Permisos**Rol de IAM con BLOCK19, BLOCK20, BLOCK21En la cuenta **Administradora de Security Hub**.
**Regiones**Todas las regiones comerciales de AWSEl inventario está disponible donde Security Hub esté habilitado.
**Herramientas CLI**AWS CLI v2, BLOCK22Para automatizar consultas posteriores.
Verificación inicial:
# Confirmá que Security Hub esté activo en tu cuenta
aws securityhub get-enabled-standards --region us-east-1

# Verificá que GuardDuty esté activo
aws guardduty list-detectors --region us-east-1

# Confirmá que Inspector esté activo (versión 2)
aws inspector2 list-findings --region us-east-1
Error común: Si no ves hallazgos en Inspector, revisá que el agente de Inspector esté instalado en tus instancias EC2. Usá:
aws inspector2 list-agent-ids --region us-east-1

Guía paso a paso

1. Habilitá el estándar de AWS Foundational Security Best Practices (FSBP) en Security Hub

Este estándar incluye reglas que Security Hub usa para correlacionar hallazgos con los activos de IA descubiertos.

# Habilitá el estándar (repetí esto en todas las cuentas si usás Organizations)
aws securityhub batch-enable-standards \
  --region us-east-1 \
  --standards-arn arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0
Resultado esperado:
{
  "StandardsSubscriptions": [
    {
      "StandardsArn": "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0",
      "StandardsStatus": "READY"
    }
  ]
}
Nota: Si ya tenés FSBP habilitado, omití este paso.

2. Verificá que los servicios de IA gestionados estén inventariados automáticamente

Security Hub descubre recursos de Amazon Bedrock, Bedrock AgentCore y Amazon SageMaker sin configuración adicional.

# Listá los recursos de Bedrock inventariados por Config
aws configservice get-resource-config-history \
  --region us-east-1 \
  --resource-type AWS::Bedrock::Agent \
  --query 'configurationItems[].resourceName' --output text
Resultado esperado:

Si tenés agentes en Bedrock, verás sus nombres (ej: my-agent-1, financial-analyst).

Error común:
  • Si no ves recursos, verifica que AWS Config esté activo y que las reglas de Bedrock/SageMaker estén habilitadas:
  aws configservice list-discovered-resources \
    --region us-east-1 \
    --resource-type AWS::Bedrock::Agent
  

3. Configurá Amazon Inspector para descubrir AI en EC2 y ECR

Amazon Inspector ahora analiza SBOM (Software Bill of Materials) de tus instancias EC2 y repositorios ECR para identificar:

  • Endpoints de inferencia (ej: vllm, ollama).
  • Modelos alojados localmente (ej: huggingface-tgi).
  • Frameworks de IA populares.
Requisitos:
  • El rol de IAM de Inspector debe tener permisos para escanear EC2 y ECR.
  • Los agentes de Inspector deben estar instalados en tus instancias.
Habilitación del escaneo de SBOM:
# Activá el escaneo de vulnerabilidades y SBOM en Inspector
aws inspector2 create-filter \
  --region us-east-1 \
  --name "AI-Security-Filter" \
  --filter-criteria '{"vulnerabilitySeverities": [{"severity": "HIGH"}], "sbomScanning": {"enabled": true}}'
Resultado esperado:
{
  "filterArn": "arn:aws:inspector2:us-east-1:123456789012:filter/0123456789abcdef0123456789abcdef"
}
Verificación en EC2:
# Listá hallazgos de SBOM en EC2 (buscá por "AI" o "model")
aws inspector2 list-findings \
  --region us-east-1 \
  --filter-criteria '{"sbomComponentTypes": ["AI_INFERENCE_ENDPOINT", "AI_MODEL"]}'
Resultado esperado:
{
  "findings": [
    {
      "id": "arn:aws:inspector2:us-east-1:123456789012:finding/0123456789abcdef0123456789abcdef",
      "type": "SAGEMAKER_ENDPOINT_VULNERABLE",
      "resources": [{"id": "i-1234567890abcdef0"}]
    }
  ]
}

4. Usá GuardDuty para descubrir dependencias externas de IA

GuardDuty detecta llamadas a APIs externas desde EC2 (ej: api.anthropic.com, api.openai.com), que podrían ser dependencias no documentadas de modelos de terceros.

Verificación de telemetría DNS:
# Listá hallazgos de GuardDuty relacionados con IA
aws guardduty list-findings \
  --region us-east-1 \
  --detector-id <DETECTOR_ID> \
  --filter-criteria '{"type": ["UnauthorizedApiCall"]}'
Resultado esperado:
{
  "findingIds": ["abc123...", "def456..."]
}
Interpretación:
  • Si un EC2 está llamando a api.anthropic.com, es probable que use un modelo de Anthropic. El inventario de Security Hub lo marcará como dependencia externa de IA.

5. Explorá el inventario de IA en Security Hub

El inventario se actualiza cada 6 horas y se accede desde la consola de Security Hub en la pestaña «AI Inventory».

Pasos en la consola:
  1. Abrí AWS Security Hub.
  2. Seleccioná «AI Inventory» en el menú lateral.
  3. Aplicá filtros:
Account: prod-* (para ver solo cuentas de producción).

Resource Type: EC2Instance (para ver modelos alojados en instancias).

Discovery Method: Inspector SBOM Analysis (para ver activos descubiertos por Inspector).

Ejemplo de salida:
AccountResource TypeModelDiscovery MethodThreats
BLOCK34BLOCK35BLOCK36BLOCK371 crítico (CVE-2024-1234)
BLOCK38BLOCK39BLOCK40BLOCK410
Acciones inmediatas:
  • Si un EC2 tiene un modelo con un hallazgo crítico, aislalo y revisá su conectividad a APIs externas.
  • Para modelos en SageMaker, verificá que las políticas IAM no permitan acceso no autorizado.

6. Automatizá consultas con AWS CLI

Para integrar el inventario con tus dashboards o alertas, usá la API de Security Hub con jq:

# Obtené todos los activos de IA con hallazgos de GuardDuty
aws securityhub get-findings \
  --region us-east-1 \
  --query 'Findings[?ProductFields."aws/securityhub/ProductName" == `"AI Inventory"` && Type == `"TTPMFinding"`]' \
  --output json | jq -r '.[] | "\(.Resources[0].Id) - \(.Title) - Severity: \(.Severity.Label)"'
Resultado esperado:
arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0 - Unauthorized API call to anthropic.com - Severity: CRITICAL
Automatización en AWS Lambda:
import boto3

def lambda_handler(event, context):
    securityhub = boto3.client('securityhub', region_name='us-east-1')
    findings = securityhub.get_findings(
        Filters={
            'ProductFields': [{'Key': 'aws/securityhub/ProductName', 'Value': 'AI Inventory'}],
            'Types': [{'Value': 'TTPMFinding'}]
        }
    )
    for finding in findings['Findings']:
        print(f"Critico: {finding['Title']} en {finding['Resources'][0]['Id']}")

Consideraciones y buenas prácticas

Limitaciones conocidas

  1. Soporte limitado de frameworks: El análisis de SBOM en Inspector cubre frameworks populares como vLLM, Ollama, Hugging Face TGI, pero podría no detectar modelos personalizados.
Solución: Agrega los modelos a tu SBOM manualmente usando la especificación SPDX.
  1. Latencia en la correlación: Los hallazgos de GuardDuty/Inspector pueden tardar hasta 6 horas en aparecer en el inventario.
Solución: Configurá alertas en GuardDuty para recibir notificaciones inmediatas de llamadas a APIs sospechosas.
  1. Costos ocultos: El escaneo de SBOM en Inspector tiene un costo por instancia escaneada (~$0.10/hora).
Solución: Limita el escaneo a instancias con etiquetas AI: true:
   aws inspector2 create-filter \
     --region us-east-1 \
     --filter-criteria '{"tags": [{"key": "AI", "value": "true"}]}'
   

Alternativas

  • Para modelos en Kubernetes: Usá Amazon Inspector Container Scanning en ECR para descubrir imágenes con modelos.
  • Para dependencias externas: Configurá AWS WAF para bloquear llamadas no autorizadas a APIs de IA y registrarlas en GuardDuty.

Buenas prácticas

  1. Etiquetado obligatorio: Aplica etiquetas AI: true a todos los recursos relacionados con IA para optimizar el escaneo.
   aws ec2 create-tags \
     --region us-east-1 \
     --resources i-1234567890abcdef0 \
     --tags Key=AI,Value=true
   
  1. Revisión semanal: Programa un Lambda para listar activos de IA sin hallazgos recientes y validar su necesidad.
  2. Integración con ticketing: Usá AWS Security Hub → Jira/ServiceNow para crear tickets automáticos cuando un activo de IA tenga un hallazgo crítico.

Conclusión

El inventario de IA de AWS Security Hub resuelve un vacío crítico en la seguridad de entornos con IA: la visibilidad centralizada. En minutos, podés mapear modelos, endpoints y dependencias externas en toda tu organización, correlacionarlos con amenazas activas y priorizar remediaciones basadas en riesgo real.

Acciones inmediatas:
  1. Habilitá el estándar FSBP en Security Hub.
  2. Verificá que GuardDuty e Inspector estén activos y configurados.
  3. Explorá el inventario en la consola y aplicá filtros por cuenta, tipo de recurso y modelo.
  4. Automatizá consultas con AWS CLI o Lambda para integrarlo con tus flujos de trabajo.

Con esta configuración, tus equipos de seguridad tendrán una visión única de los activos de IA en riesgo, sin necesidad de herramientas adicionales ni costos extra.

FIN

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *