# SDelete
> [!warning] Sysinternals - Deleção Segura Anti-Forense
> Ferramenta oficial da Microsoft/Sysinternals que implementa o padrão DoD 5220.22-M para deleção segura - tornando arquivos irrecuperáveis. Usada por APT29 (IRON HEMLOCK), Sandworm Team e grupos financeiros (Cobalt Group, Silence) para destruir evidências pós-operação.
## Visão Geral
**SDelete** é uma ferramenta de deleção segura da suite Microsoft Sysinternals, criada por Mark Russinovich. Implementa múltiplos padrões de sobrescrita - incluindo o DoD 5220.22-M (3 passagens) - para garantir que arquivos deletados não possam ser recuperados via análise forense de disco. O mecanismo funciona sobrescrevendo os dados do arquivo com padrões aleatórios antes de deletar, eliminando os dados remanescentes no disco que ferramentas forenses poderiam recuperar.
Em contexto ofensivo, o SDelete é a ferramenta preferida de grupos APT para destruição de ferramentas, credenciais e artefatos de ataque antes da saída do ambiente comprometido. [[g0016-apt29|APT29]] (IRON HEMLOCK) usou o SDelete extensivamente em campanhas de espionagem de 2022. O [[g0034-sandworm|Sandworm Team]] o utilizou em operações destrutivas na Ucrânia. Para grupos financeiros como [[g0080-cobalt-group|Cobalt Group]] e [[g0091-silence|Silence]], o SDelete faz parte do playbook padrão de cobertura de rastros após fraudes bancárias no SWIFT.
**Plataformas:** Windows
## Como Funciona
O SDelete opera em dois modos principais:
**Modo arquivo:** `sdelete.exe -p 3 -s -q C:\caminho\arquivo.exe`
- Sobrescreve o arquivo com padrões aleatórios (N passagens, padrão: 1)
- Renomeia o arquivo 26 vezes usando o alfabeto (.AAA, .BBB, ..., .ZZZ) para ofuscar o nome original nos metadados
- Deleta o arquivo final
**Modo espaço livre:** `sdelete.exe -p 3 -z C:\`
- Preenche todo o espaço livre do volume com zeros
- Destrói dados de arquivos previamente deletados que poderiam ser recuperados
- Usada por grupos quando querem garantir que artefatos já deletados (via `del`) sejam irrecuperáveis
O comportamento característico de renomear arquivos sequencialmente (.AAA a .ZZZ) é **detectável** via USN Journal (`$J`) e NTFS Change Journal - deixando rastros da atividade de deleção mesmo que o arquivo sejá destruído.
## Uso Ofensivo
```mermaid
graph TB
A["🎯 Operação concluída<br/>Implante/ferramentas usados"] --> B["🔍 Identificar artefatos<br/>Ferramentas, credenciais, logs"]
B --> C["⚙️ SDelete - deleção segura<br/>sdelete -p 3 -s -q"]
C --> D["🔄 26 renomeações<br/>.AAA → .BBB → ... → .ZZZ"]
D --> E["📝 Sobrescrita dados<br/>DoD 5220.22-M"]
E --> F["🗑️ Deleção final<br/>Arquivo irrecuperável"]
F --> G["🔒 Espaço livre zerado<br/>sdelete -z C:\\"]
G --> H["✅ Anti-forense completo<br/>Sem recuperação possível"]
```
**Sandworm - destruição de evidências em operações destrutivas:**
```mermaid
graph TB
A["🇺🇦 Rede alvo<br/>Infraestrutura crítica Ucrânia"] --> B["💥 Wiper/NotPetya<br/>Payload destrutivo"]
B --> C["📁 SDelete nas ferramentas<br/>Limpeza do arsenal"]
C --> D["🗑️ Artefatos destruídos<br/>Implantes, scripts, credenciais"]
D --> E["🔒 Espaço livre sobrescrito<br/>Recuperação impossível"]
E --> F["🚪 Exfiltração<br/>Antes da saída"]
```
## Timeline
| Ano | Evento |
|-----|--------|
| 1999 | SDelete v1.0 lançado por Mark Russinovich; implementa DoD 5220.22-M |
| 2012 | Adotado pelo [[g0080-cobalt-group\|Cobalt Group]] em campanhas de fraude bancária via SWIFT |
| 2017 | Documentado em campanhas de APT financeiros em bancos do Leste Europeu |
| 2019 | [[g0091-silence\|Silence]] usa SDelete para destruir ferramentas pós-roubo em bancos russos e CIS |
| 2022 | [[g0016-apt29\|APT29]] (IRON HEMLOCK) usa SDelete em campanhas de espionagem pós-SolarWinds |
| 2022-2023 | [[g0034-sandworm\|Sandworm Team]] utiliza SDelete em operações destrutivas na Ucrânia durante conflito |
| 2024 | FIN5 documentado usando SDelete em pós-intrusão de ambientes de varejo e pagamentos |
## TTPs
| ID | Nome | Uso pelo SDelete |
|----|------|-----------------|
| [[t1070-004-file-deletion\|T1070.004]] | File Deletion | Deleção segura de ferramentas, credenciais e artefatos |
| [[t1485-data-destruction\|T1485]] | Data Destruction | Modo `-z` para destruir dados de unidades inteiras |
## Atores que Utilizam
- [[g0016-apt29|APT29]] (IRON HEMLOCK) - cobertura de rastros em espionagem de longo prazo
- [[g0034-sandworm|Sandworm Team]] - destruição pós-operação destrutiva na Ucrânia
- [[g0080-cobalt-group|Cobalt Group]] - limpeza pós-fraude bancária SWIFT
- [[g0053-fin5|FIN5]] - remoção de artefatos em intrusões de varejo e pagamentos
- [[g0091-silence|Silence]] - playbook padrão pós-roubo em instituições financeiras
## Relevância LATAM/Brasil
O SDelete é relevante para o Brasil especialmente pelo uso dos grupos [[g0080-cobalt-group|Cobalt Group]] e [[g0091-silence|Silence]] - dois grupos de crime financeiro que têm historial de ataques a bancos e processadoras de pagamento no Brasil e na América Latina. Ambos os grupos usam o SDelete como parte do playbook padrão de cobertura de rastros após operações de fraude SWIFT e ATM jáckpotting.
Para profissionais de Resposta a Incidentes no Brasil, a descoberta do SDelete em um sistema comprometido é um indicador de alto valor: indica que o atacante está realizando anti-forense ativo e que o incidente provavelmente está em fase avançada (pós-exfiltração ou pós-comprometimento do objetivo primário). A presença de artefatos de renomeação sequencial (.AAA, .BBB...) no USN Journal é evidência forense valiosa mesmo sem o arquivo original.
A contramedida mais eficaz é **EDR com preservação de artefatos em memória** e **monitoramento em tempo real do USN Journal** - permitindo detectar a atividade de deleção segura mesmo que o arquivo alvo sejá destruído antes da análise forense.
## Detecção
**Indicadores de comprometimento:**
- Arquivos com extensões sequenciais `.AAA`, `.BBB`, `.ZZZ` no USN Journal (`$J`) - rastro das 26 renomeações
- Processo `sdelete.exe` ou `sdelete64.exe` em hosts que não são de administração de sistema
- Chamadas de API `NtWriteFile` em padrão de sobrescrita repetitiva (N passes com tamanho de bloco fixo)
- Processo com alta atividade de I/O em disco sem leitura correspondente
**Fontes de dados recomendadas:**
- **Sysmon Event ID 1 (ProcessCreaté):** `sdelete.exe` / `sdelete64.exe` com argumentos `-p`, `-s`, `-z`
- **Sysmon Event ID 11 (FileCreaté):** Sequências de criação/deleção de arquivos com extensões `.AAA` a `.ZZZ`
- **USN Journal ($J):** Monitorar via `fsutil usn readjournal C:` - renomeações alfabéticas são assinatura do SDelete
- **EDR behavioral:** Alto volume de `WriteFile` em loop para o mesmo arquivo antes da deleção
**Regras de detecção:**
- Sigma: `proc_creation_win_sysinternals_sdelete.yml` - detecta execução do SDelete
- Sigma: `file_rename_win_sdelete_pattern.yml` - detecta padrão de renomeação .AAA-.ZZZ
## Referências
- [1](https://attack.mitre.org/software/S0195) MITRE ATT&CK - S0195 SDelete (2024)
- [2](https://learn.microsoft.com/en-us/sysinternals/downloads/sdelete) Microsoft Sysinternals - SDelete Documentation (2024)
- [3](https://www.mandiant.com/resources/blog/apt29-iron-hemlock-ttps) Mandiant - APT29 IRON HEMLOCK Post-Compromise Tooling (2022)
- [4](https://www.group-ib.com/resources/threat-research/silence.html) Group-IB - Silence Group: Financial Cybercrime Playbook (2019)
- [5](https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/) The DFIR Report - SDelete usage in post-compromise cleanup (2022)