# DS0007 — Image ## Descrição No contexto de infraestrutura em nuvem (IaaS), uma **imagem** é um arquivo único utilizado para implantar máquinas virtuais ou discos inicializáveis em ambientes on-premises ou em provedores de nuvem como AWS (AMIs — Amazon Machine Images), Azure (Managed Images, Gallery Images), e Google Cloud (Custom Images). As imagens encapsulam o sistema operacional, configurações, software pré-instalado e dados, servindo como templaté base para provisionamento de instâncias. Do ponto de vista de segurança, imagens representam um vetor de ataque sofisticado e de alto impacto: um adversário que compromete uma imagem base consegue implantação automática de backdoors ou malware em **todas as instâncias** criadas a partir dela, afetando potencialmente centenas ou milhares de servidores sem necessidade de comprometer cada um individualmente. Este é o princípio dos ataques **supply chain via imagens cloud** — análogos ao ataque SolarWinds, mas no ecossistema de IaaS. Monitorar criação, modificação, exclusão e acesso a imagens cloud é essencial para detectar: implantação de backdoors em imagens base, uso de imagens não autorizadas de repositórios públicos, e compartilhamento indevido de imagens contendo configurações ou dados sensíveis. O ciclo de vida das imagens deve ser tratado como ativo crítico de segurança em qualquer organização com presença relevante em IaaS. ## Visão Geral **Principais gaps identificados:** 1. **Ausência de governança de imagens:** A maioria das organizações brasileiras não tem processo formal de aprovação de imagens base (golden images). Desenvolvedores frequentemente usam AMIs públicas de origem desconhecida diretamente no ambiente de produção, representando risco de supply chain. 2. **AMIs com compartilhamento público acidental:** Durante testes ou migrações, AMIs contendo dados de produção ou configurações sensíveis são acidentalmente compartilhadas públicamente. Sem monitoramento de `ModifyImageAttribute`, esse vazamento pode passar despercebido por meses. 3. **Imagens sem CIS hardening:** Organizações brasileiras raramente partem de imagens com benchmark CIS aplicado. O uso de imagens marketplace sem válidação de segurança é a norma, criando exposição a vulnerabilidades conhecidas já em estado inicial. 4. **Multi-cloud sem visibilidade unificada:** Com a adoção simultânea de AWS, Azure e GCP crescendo no Brasil, poucos ambientes têm visibilidade correlacionada de imagens entre provedores. Uma imagem comprometida em um provedor pode ser replicada para outros sem detecção. 5. **Recomendações para contexto LATAM:** - Implementar processo de gestão de imagens base (golden image pipeline) com varredura de vulnerabilidades antes do registro - Configurar AWS Config rule para alertar sobre qualquer AMI compartilhada públicamente - Habilitar CloudTrail em todas as regiões AWS e configurar retenção de 1 ano - Usar ferramentas como AWS Inspector ou Microsoft Defender for Cloud para varredura contínua de vulnerabilidades em imagens ## Pipeline de Coleta ```mermaid graph TB A["☁️ IaaS Provider<br/>AWS EC2 · Azure · GCP"] --> B["📋 CloudTrail / Activity Log<br/>CreateImage · ModifyImageAttr"] B --> C["📡 Conector de Nuvem<br/>S3→SIEM · Azure Monitor"] D["🔧 AWS Config / Defender<br/>Regras de postura de segurança"] --> C C --> E["🗄️ SIEM<br/>Sentinel · Splunk · Elastic"] E --> F["🚨 Alerta<br/>AMI tornada pública<br/>Imagem criada fora do pipeline"] E --> G["📊 Inventário<br/>Governança de golden images"] ``` ## Componentes de Dados | Componente | ID | Descrição | |---|---|---| | Image Creation | [[dc0015-image-creation\|DC0015]] | Criação de novas imagens — AMIs, snapshots promovidos, imagens customizadas | | Image Deletion | [[dc0026-image-deletion\|DC0026]] | Remoção de imagens — pode indicar cobertura de rastros pós-comprometimento | | Image Metadata | [[dc0028-image-metadata\|DC0028]] | Atributos de imagens: nome, proprietário, permissões de compartilhamento, tags | | Image Modification | [[dc0036-image-modification\|DC0036]] | Alteração de imagens existentes ou mudanças em permissões de compartilhamento | ## Como Coletar ### AWS — CloudTrail e Config **Eventos CloudTrail de interesse para Images (EC2 AMIs):** | Evento | Serviço | Descrição | Prioridade | |---|---|---|---| | `CreateImage` | EC2 | Criação de nova AMI a partir de instância existente | Alta | | `RegisterImage` | EC2 | Registro de AMI a partir de snapshot | Alta | | `ModifyImageAttribute` | EC2 | Alteração de permissões da AMI (público/privado, compartilhamento) | Crítica | | `DeregisterImage` | EC2 | Remoção de AMI — investigar se precedida de cópia | Alta | | `CopyImage` | EC2 | Cópia de AMI entre regiões — exfiltração potencial | Alta | | `DescribeImages` | EC2 | Enumeração de imagens disponíveis | Média | | `RunInstances` | EC2 | Instância criada a partir de imagem — qual imagem foi usada? | Alta | **Detecção de AMIs públicas não autorizadas:** ```json { "source": ["aws.ec2"], "detail-type": ["AWS API Call via CloudTrail"], "detail": { "eventName": ["ModifyImageAttribute"], "requestParameters": { "launchPermission": { "add": { "items": [{"group": ["all"]}] } } } } } ``` **AWS Config Rules:** - `ec2-no-public-ami-sharing`: Verifica AMIs compartilhadas públicamente - Custom Config Rule para inventário de imagens com tags de proprietário obrigatórias ### Azure — Monitor e Defender for Cloud **Activity Log — eventos de imagem:** ```kusto // Azure Monitor — criação e modificação de imagens AzureActivity | where OperationNameValue in ( "MICROSOFT.COMPUTE/IMAGES/WRITE", "MICROSOFT.COMPUTE/IMAGES/DELETE", "MICROSOFT.COMPUTE/GALLERIES/IMAGES/VERSIONS/WRITE" ) | project TimeGenerated, Caller, OperationNameValue, ResourceGroup, Properties | order by TimeGenerated desc ``` **Microsoft Defender for Cloud:** - Recomendação: "Vulnerabilities in container images should be remediated" - Alerta: "Malicious container image deployed" ### Google Cloud — Cloud Audit Logs **Eventos Cloud Audit Log:** - `compute.images.insert` — criação de imagem customizada - `compute.images.setIamPolicy` — alteração de permissões de acesso à imagem - `compute.images.delete` — exclusão de imagem - `compute.disks.createSnapshot` — criação de snapshot que pode originar imagem **BigQuery query para anomalias:** ```sql SELECT protopayload_auditlog.authenticationInfo.principalEmail, protopayload_auditlog.methodName, resource.labels.project_id, timestamp FROM `project.dataset.cloudaudit_googleapis_com_activity` WHERE protopayload_auditlog.methodName LIKE "v1.compute.images%" AND timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) ORDER BY timestamp DESC ``` ### SIEM — Integração | SIEM | Fonte de Dados | Observações | |---|---|---| | **Microsoft Sentinel** | Azure Activity + AWS CloudTrail via S3 connector | Workbook nativo para cloud security posture | | **Splunk** | Splunk Add-on for AWS + Add-on for Azure | Templates de correlação para compartilhamento público de imagens | | **Elastic** | AWS integration (CloudTrail) + Azure integration | EQL rules para detecção de imagens públicas | | **Wazuh** | AWS module com suporte a CloudTrail | Opção low-cost para PMEs com presença na AWS | ## Técnicas Detectadas | Técnica | Descrição | |---|---| | [[t1578-modify-cloud-compute-infrastructure\|T1578 — Modify Cloud Compute Infrastructure]] | Modificação de infraestrutura cloud incluindo imagens comprometidas | | [[t1578-002-create-cloud-instance\|T1578.002 — Create Cloud Instance]] | Implantação de instâncias a partir de imagens maliciosas ou comprometidas | | [[t1578-004-revert-cloud-instance\|T1578.004 — Revert Cloud Instance]] | Reversão de instâncias para imagens anteriores comprometidas | | [[t1525-implant-internal-image\|T1525 — Implant Internal Image]] | Modificação de imagens internas para incluir backdoors ou implantes | | [[t1190-exploit-public-facing-application\|T1190 — Exploit Public-Facing Application]] | Uso de imagens com software vulnerável para comprometimento de instâncias | ## Gaps de Cobertura Brasil/LATAM **Lacunas mais comuns em organizações brasileiras:** > [!warning] Gap Crítico — CloudTrail Desabilitado ou sem Retenção Adequada > Muitas organizações brasileiras que utilizam AWS têm o CloudTrail habilitado apenas para a região primária (us-east-1 ou sa-east-1), deixando outras regiões sem auditoria. Imagens podem ser copiadas para regiões não monitoradas para exfiltração ou como repositório de persistência. ## Referências - [[_cloud\|Data Components — Cloud]] — DC0015, DC0026, DC0028, DC0036 - [[m1047-audit\|M1047 — Audit]] — auditoria regular de imagens disponíveis e suas permissões - [[m1022-restrict-file-and-directory-permissions\|M1022 — Restrict File and Directory Permissions]] — controle de acesso a imagens e snapshots - [[t1525-implant-internal-image\|T1525 — Implant Internal Image]] — técnica primária coberta por esta fonte - [[t1578-modify-cloud-compute-infrastructure\|T1578 — Modify Cloud Compute Infrastructure]] — modificação de infraestrutura via imagens - [[m1051-update-software\|M1051 — Updaté Software]] — manutenção de imagens base com patches de segurança atualizados --- *Fonte: [MITRE ATT&CK — DS0007](https://attack.mitre.org/datasources/DS0007)*