# T1006 - Direct Volume Access ## Descrição **T1006 - Direct Volume Access** descreve a capacidade de adversários lerem e escreverem diretamente em volumes de disco bruto (*raw disk volumes*), contornando completamente os controles de acesso ao sistema de arquivos do sistema operacional e as ferramentas de monitoramento de arquivos baseadas em API do Windows. O Windows expõe volumes lógicos como objetos do kernel (por exemplo, `\\.\C:`, `\\.\PhysicalDrive0`) que podem ser abertos com `CreateFile()` usando privilégios administrativos. Ao operar nesse nível, o adversário lê estruturas brutas do sistema de arquivos NTFS - como a MFT (Master File Table), registros de bitmap e data streams - sem passar pelo gerenciador de I/O normal do Windows. Isso significa que: - Arquivos **bloqueados pelo sistema operacional** (como `SAM`, `NTDS.dit`, `SYSTEM`, `SECURITY`) podem ser lidos sem volume shadow copies - Ferramentas de EDR e antivírus baseadas em **file system minifilters** não interceptam operações de baixo nível realizadas diretamente sobre o volume - Logs de acesso a arquivos no **Security Event Log** (Event ID 4663) não são gerados para acessos via volume bruto Esta técnica é particularmente perigosa quando combinada com [[t1003-os-credential-dumping|Credential Dumping (T1003)]], pois permite extrair hives de registro críticos - como `SAM` e `NTDS.dit` - que contêm hashes de senhas de contas locais e do Active Directory sem disparar alertas convencionais. > **Tática principal:** Defense Evasion > **Técnicas relacionadas:** [[t1003-os-credential-dumping|T1003 - OS Credential Dumping]], [[t1059-001-powershell|T1059.001 - PowerShell]], [[t1055-process-injection|T1055 - Process Injection]] --- ## Como Funciona ### Mecanismo Técnico O Windows fornece dois caminhos para acesso a volume: 1. **Via API Win32 (normal):** `CreateFile("C:\Windows\System32\config\SAM")` → passa pelo kernel I/O Manager → interceptável por minifilters de EDR 2. **Via volume bruto (T1006):** `CreateFile("\\.\C:")` → abre o volume diretamente → lê setores NTFS sem passar por minifilters Para extrair arquivos bloqueados, o adversário: 1. Abre o volume com `CreateFile` e flag `GENERIC_READ` (requer privilégio `SeBackupPrivilege` ou acesso administrativo) 2. Lê a **MFT (Master File Table)** para localizar o número do inode do arquivo alvo 3. Percorre os **data runs** do arquivo na MFT para identificar quais clusters físicos contêm os dados 4. Lê os clusters diretamente com `ReadFile` usando offsets calculados pela lógica de parsing NTFS 5. Reconstrói o arquivo em memória ou em disco em um caminho controlado pelo atacante ### Ferramentas Conhecidas | Ferramenta | Tipo | Método | |------------|------|--------| | [[ninjacopy\|NinjaCopy]] | PowerShell | Parse NTFS via volume bruto para copiar arquivos bloqueados | | [[s0404-esentutl\|esentutl]] | Nativa Windows | Extrai arquivos de banco de dados NTDS.dit via operações VSS/raw | | `vssadmin` | Nativa Windows | Cria shadow copies para acessar versões bloqueadas | | `wbadmin` | Nativa Windows | Backup de volumes - pode ser abusado para extrair NTDS.dit | | Impacket `secretsdump` | Python | Usa técnicas de volume access remoto para dump de credenciais | --- ## Attack Flow ```mermaid graph TB A([Adversário com Acesso Administrativo]) --> B[Enumera Volumes Disponíveis<br/>\\.\C: \\.\PhysicalDrive0] B --> C{Alvo} C --> D[Hives de Registro<br/>SAM / SYSTEM / SECURITY] C --> E[Active Directory<br/>NTDS.dit] C --> F[Arquivos de Banco de Dados<br/>VSS / Exchange / SQL] D --> G[Abre Volume Bruto<br/>CreateFile com GENERIC_READ] E --> G F --> G G --> H[Lê Master File Table<br/>Localiza inode do arquivo alvo] H --> I[Parse de Data Runs NTFS<br/>Calcula offsets físicos] I --> J[ReadFile em Clusters Brutos<br/>Reconstrói arquivo em memória] J --> K[Exfiltra Arquivo Extraído<br/>Sem alertas de acesso a arquivo] K --> L([Credential Dumping / Persistência<br/>T1003 - T1098]) style A fill:#c0392b,color:#fff style K fill:#e74c3c,color:#fff style L fill:#922b21,color:#fff style G fill:#f39c12,color:#000 style J fill:#f39c12,color:#000 ``` --- ## Exemplos de Uso ### Volt Typhoon - Extração Silenciosa de NTDS.dit O grupo chinês [[g1017-volt-typhoon|Volt Typhoon]], ativo em infraestruturas críticas dos EUA e parceiros FVEY, utiliza acesso direto a volumes como parte de sua estratégia de *living-off-the-land* (LotL). Em vez de ferramentas de terceiros facilmente detectáveis, o grupo abusa de `esentutl` e `ntdsutil` com flags que acionam leituras de baixo nível, extraindo o `NTDS.dit` de controladores de domínio sem disparar alertas de EDR baseados em file access. A técnica é particularmente eficaz em ambientes onde soluções de EDR monitoram chamadas Win32 mas não operações de kernel diretas. ### Scattered Spider - Exfiltração de Hives SAM em Ataques de Engenharia Social O grupo [[g1015-scattered-spider|Scattered Spider]] (UNC3944), responsável por ataques de alto perfil como os comprometimentos da MGM Resorts e Caesars Entertainment em 2023, combina engenharia social para obter acesso inicial com ferramentas de acesso direto a volumes para extrair credenciais locais de sistemas Windows comprometidos. Ao usar `NinjaCopy` ou variantes, o grupo lê os hives `SAM` e `SYSTEM` sem que as soluções de segurança detectem a leitura - os arquivos permanecem "bloqueados" para APIs normais mas não para acesso via volume bruto. ### Operações de Ransomware - Destruição de Shadow Copies Grupos de ransomware como [[lockbit|LockBit]] e [[blackcat|ALPHV]] utilizam acesso direto a volumes de forma destrutiva: antes de criptografar dados, apagam shadow copies acessando e corrompendo estruturas de metadados VSS diretamente no volume, impedindo recuperação pós-ataque sem necessitar invocar `vssadmin delete shadows` (comando altamente monitorado). --- ## Detecção ### Eventos Windows Relevantes | Event ID | Fonte | Descrição | |----------|-------|-----------| | 4656 | Security | Handle para objeto solicitado - procurar acessos a `\\.\C:`, `\\.\PhysicalDrive*` | | 4663 | Security | Acesso a objeto - I/O direta em volumes | | 7045 | System | Novo serviço instalado - ferramentas como NinjaCopy instalam drivers temporários | | Sysmon EID 9 | Sysmon | RawAccessRead - leitura de volume bruto (requer Sysmon config) | > **Sysmon Event ID 9 (RawAccessRead)** é o detector mais eficaz: captura específicamente operações `ReadFile` em handles de `\Device\HarddiskVolume*` sem passar por minifilters. ### Regra Sigma - Detecção de RawAccessRead ```yaml title: Raw Volume Access - Possible Credential File Extraction id: a7b3c9f1-2d4e-4a8b-9c6d-1e5f7a2b3c4d status: experimental description: > Detecta leituras de volume bruto (RawAccessRead) que podem indicar extração de arquivos bloqueados como SAM, NTDS.dit ou hives de registro para credential dumping via Direct Volume Access (T1006). references: - https://attack.mitre.org/techniques/T1006/ - https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-NinjaCopy.ps1 author: RunkIntel daté: 2026-03-25 tags: - attack.defense_evasion - attack.t1006 - attack.credential_access - attack.t1003 logsource: product: windows category: raw_access_read # Requer Sysmon instalado com RawAccessRead habilitado detection: selection: EventID: 9 Device|contains: - '\Device\HarddiskVolume' suspicious_process: Image|endswith: - '\powershell.exe' - '\cmd.exe' - '\esentutl.exe' - '\ntdsutil.exe' - '\wbadmin.exe' - '\vssadmin.exe' filter_system: Image|startswith: - 'C:\Windows\System32\svchost.exe' - 'C:\Windows\System32\SearchIndexer.exe' - 'C:\Program Files\Windows Defender\' condition: selection AND suspicious_process AND NOT filter_system falsepositives: - Software de backup legítimo (Veeam, Acronis, Windows Backup) - Ferramentas de defrag e análise de disco - Antivírus com acesso direto a volume para scan level: high ``` ### KQL - Microsoft Sentinel / Defender for Endpoint ```kusto // Detecta RawAccessRead por processos suspeitos DeviceEvents | where ActionType == "RawVolumeDiskRead" | where InitiatingProcessFileName in~ ("powershell.exe", "esentutl.exe", "ntdsutil.exe", "cmd.exe") | project Timestamp, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, InitiatingProcessAccountName | sort by Timestamp desc ``` --- ## Mitigação | ID | Mitigação | Implementação | |----|-----------|---------------| | [[m1040-behavior-prevention-on-endpoint\|M1040]] | Behavior Prevention on Endpoint | Habilitar Sysmon com RawAccessRead (Event ID 9); configurar EDR para alertar em handles `\\.\PhysicalDrive*` | | [[m1018-user-account-management\|M1018]] | User Account Management | Restringir privilégio `SeBackupPrivilege` a contas de serviço de backup estritamente necessárias; auditar grupos com esse privilégio | | Princípio do Menor Privilégio | Controle de Acesso | Garantir que contas de usuário padrão não tenham acesso administrativo local - acesso a volume bruto requer privilégios elevados | | Application Control | Allowlisting | Bloquear execução de ferramentas como `NinjaCopy.ps1` via AppLocker/WDAC; permitir apenas ferramentas de backup assinadas | | Monitoramento de Sombra | Auditoria | Monitorar invocações de `vssadmin`, `wbadmin` e `ntdsutil` com flags de exportação do NTDS | --- ## Contexto Brasil/LATAM O acesso direto a volumes é uma técnica avançada - mas altamente relevante no contexto brasileiro - especialmente em operações direcionadas ao setor financeiro, governo e infraestrutura crítica: **Setor Financeiro Brasileiro:** Grupos de ameaça que atacam bancos brasileiros frequentemente precisam extrair credenciais de Active Directory de controladores de domínio para se mover lateralmente entre sistemas bancários. O T1006 é o método preferido quando EDR está presente, pois evita as detecções mais comuns baseadas em chamadas `MiniNTDSAPI` ou `DSInternals`. **Infraestrutura Crítica (Energia/Telecom):** Motivação alinhada ao perfil do [[g1017-volt-typhoon|Volt Typhoon]] - grupos patrocinados por estados que já demonstraram interesse em infraestrutura crítica LATAM utilizam T1006 para garantir acesso persistente e silencioso, lendo credenciais de domínio sem disparar alertas de SIEM baseados em logs de acesso a arquivos. **Ransomware-as-a-Service no Brasil:** Operadores afiliados de grupos como [[lockbit|LockBit]] e [[blackcat|ALPHV]] ativos no Brasil usam variantes desta técnica para corromper shadow copies antes de criptografar - maximizando o impacto e reduzindo chances de recuperação rápida por equipes de resposta. **Capacidade Defensiva Nacional:** O [[sources|CERT.br]] e equipes de segurança de grandes instituições brasileiras ainda têm cobertura limitada para detecção via Sysmon Event ID 9, tornando esta técnica subdetectada no ambiente nacional. A implementação de logging de RawAccessRead é uma lacuna crítica a endereçar. --- ## Referências - [MITRE ATT&CK - T1006: Direct Volume Access](https://attack.mitre.org/techniques/T1006/) - [Microsoft - Sysmon RawAccessRead Event](https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon) - [PowerSploit - NinjaCopy](https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-NinjaCopy.ps1) - [Volt Typhoon - CISA Advisory](https://www.cisa.gov/news-events/cybersecurity-advisories/aa23-144a) - [Scattered Spider - CISA Advisory AA23-320A](https://www.cisa.gov/news-events/cybersecurity-advisories/aa23-320a) - [NTFS Forensics - Understanding MFT and Data Runs](https://www.sans.org/white-papers/1212/) *Fonte: [MITRE ATT&CK - T1006](https://attack.mitre.org/techniques/T1006)*