Esta segunda apostila entra em dois casos que parecem diferentes na superfície, mas compartilham a mesma lógica: interação do usuário, software aparentemente legítimo e valor investigativo concentrado na cadeia de execução.
Ela continua a trilha iniciada em 📁 Fundamentos de Detection Engineering para Windows e mantém Detection.Wiki como referência-base.
Objetivo
Os dois estudos de caso desta etapa ensinam a reconhecer quando o atacante prefere abusar da normalidade em vez de depender de um artefato obviamente malicioso.
Casos abordados:
Windows Screensaver Files and RMM PersistenceClickOnce Abuse
Parte I — .scr, execução e RMM
O que este caso ensina
O caso é didático porque mostra uma ideia simples e forte:
- o arquivo parece inofensivo
- o Windows aceita
.scrcomo executável - o usuário executa
- a cadeia termina instalando software remoto legítimo
- a persistência e o acesso passam a se parecer com administração regular
O truque não está, necessariamente, em um exploit sofisticado. Muitas vezes está no abuso de confiança.
Conceitos centrais
.scr não é um formato inocente
No Windows, .scr é executável. Isso significa que:
- pode parecer um arquivo visual ou banal
- pode iniciar outros processos
- pode ser executado manualmente pelo usuário
- pode servir de gatilho de persistência por screen saver
RMM é faca de dois gumes
Ferramentas de Remote Monitoring and Management são legítimas e comuns em suporte e administração. Justamente por isso, também podem ser abusadas.
Exemplos conhecidos:
- ScreenConnect
- TeamViewer
- AnyDesk
- NinjaOne
- Atera
O valor ofensivo vem do fato de que assinatura, produto conhecido e tráfego aparentemente normal reduzem suspeita inicial.
Cadeia típica do caso
- usuário baixa um
.scr - o
.scré executado em pasta do usuário - ele dispara script ou intérprete auxiliar
- o fluxo chega a
msiexec.exe - um cliente remoto é instalado
- serviço, chave ou configuração é criada
- o host passa a aceitar acesso remoto persistente
O que procurar na investigação
Download
.scrvindo de navegador- pasta
Downloads FileOriginUrlFileOriginReferrerUrl
Execução
.scrfora deC:\\Windows\\- pai
explorer.exe - filhos como
cmd.exe,wscript.exeemsiexec.exe
Instalação
- MSI silencioso
- criação de serviço
- gravação em registro
- escrita em
Program FilesouProgramData
Persistência e operação
- serviço criado
- artefatos de ScreenConnect ou ConnectWise
- tráfego para relay ou domínio de RMM
- alteração de configuração
Heurísticas úteis
.scrfora de diretório padrão do Windows.scrgerandocmd.exe,wscript.exeoumsiexec.exe- software RMM novo sem allowlist
- instalação silenciosa logo após arquivo vindo de navegador
Parte II — ClickOnce
O que é ClickOnce
ClickOnce é um mecanismo legítimo da Microsoft para implantação de aplicações .NET. Em ambiente corporativo, isso pode ser normal. O problema aparece quando esse mecanismo é usado como ponto de execução inicial ou proxy execution.
O binário-chave: dfsvc.exe
dfsvc.exe é o Deployment Service do ClickOnce. Quando um caso passa por abuso de ClickOnce, ele costuma ser pivô central da análise.
Perguntas úteis:
- quem lançou
dfsvc.exe? - houve relação com navegador?
- apareceu
rundll32.execomdfshim.dll? - a origem foi URL externa?
- houve escrita em
AppData\\Local\\Apps\\2.0\\?
O diretório que importa
Um dos sinais mais úteis é:
%LOCALAPPDATA%\\Apps\\2.0\\
Se a investigação mostrar:
- executável recém-implantado ali
- DLL auxiliar ali
.exe.configali- módulo não assinado carregado dali
então o caso merece triagem mais forte.
Cadeia típica
- usuário interage com link ou site
- ClickOnce é invocado
dfsvc.exefaz a implantação- arquivos vão para o cache do ClickOnce
- o app implantado executa
- módulos e configurações auxiliares são carregados
- pode surgir rede suspeita ou child process inesperado
Artefatos importantes
Processos
dfsvc.exe- app implantado
- filhos inesperados do app
Arquivos
.application.manifest.deploy.exe.config- DLLs no cache do ClickOnce
Rede
- manifesto baixado
- payloads
.deploy - conexões externas posteriores
- blob storage e domínios correlatos
Sinais fortes
dfsvc.exevindo de navegador com URL externa- cache ClickOnce gerando
.exe.config - módulo não assinado carregado por app em
Apps\\2.0\\ - app recém-implantado abrindo rede logo depois
- child process improvável saindo do app ClickOnce
Comparando os dois casos
| Aspecto | .scr + RMM | ClickOnce |
|---|---|---|
| Vetor inicial | executável disfarçado | app ou manifesto aparentemente legítimo |
| Binário confiável abusado | msiexec.exe e RMM | dfsvc.exe e ecossistema ClickOnce |
| Sinal forte | .scr fora de C:\\Windows\\ | Apps\\2.0\\ + dfsvc.exe |
| Valor da detecção | cadeia de instalação remota | cadeia de implantação e carga |
Perguntas de estudo
- Por que
dfsvc.exenão deve ser tratado automaticamente como malicioso? - Por que a pasta
Apps\\2.0\\é tão útil? - Qual a diferença entre “software legítimo” e “uso legítimo”?
- Por que allowlist de RMM costuma ser mais útil do que confiar só em antivírus?
Fechamento
Os dois casos reforçam a mesma lição: o ambiente costuma confiar mais no que já conhece. É exatamente aí que a detecção precisa ganhar contexto.
Continuidade
Passos adjacentes desta trilha:
Referências e apoio: