# DET0109 — Detection Strategy for Plist File Modification (T1647) ## Descrição Esta estratégia detecta modificações maliciosas em arquivos Property List (plist) no macOS, utilizados para configurar LaunchAgents, LaunchDaemons, aplicações e preferências de sistema. A modificação de plist é uma das técnicas de persistência mais comuns em macOS — adversários criam ou modificam arquivos `.plist` em `/Library/LaunchAgents/`, `~/Library/LaunchAgents/`, ou `/Library/LaunchDaemons/` para executar payloads no boot ou login do usuário. A telemetria primária inclui: monitoramento de integridade de arquivos (FIM) nos diretórios de LaunchAgent/Daemon, detecção de criação de novos plist não associados a instalações legítimas de software, e uso de `launchctl load` ou `launchctl bootstrap` por processos não-instaladores. O utilitário `ProgramArguments` dentro do plist define o que será executado — valores apontando para caminhos em `/tmp`, `~/Library/Application Support` ou outros diretórios de usuário são suspeitos. Modificações em plists de aplicações existentes (ex: adicionar `NSPrivilegedHelperTools` para escalada de privilégio) e alteração de plists de sistema para desabilitar controles de segurança também são cobertas. Malwares macOS como [[osx-dok]], [[s0595-thiefquest|evilquest]] e [[g0050-apt32|oceanlotus]] para macOS utilizam plist maliciosos para persistência. A ausência de assinatura de código no binário referênciado pelo plist é um indicador forte. ## Indicadores de Detecção - Criação de novo arquivo `.plist` em `/Library/LaunchAgents/` ou `/Library/LaunchDaemons/` por processo não-instalador - Plist com `ProgramArguments` apontando para executáveis em `/tmp`, `/var/tmp`, ou `~/Library/Application Support` - Execução de `launchctl load` ou `launchctl bootstrap` por processo não-admin fora de contexto de instalação - Modificação de plist existente de LaunchDaemon do sistema por processo não-root - Plist com `RunAtLoad=true` e `KeepAlive=true` referênciando binário não assinado ou com assinatura inválida - Criação de LaunchDaemon com `UserName=root` por processo de usuário não-privilegiado (indicativo de escalada) ## Técnicas Relacionadas - [[t1647-plist-file-modification]] — Técnica principal - [[t1543004-launch-daemon]] — LaunchDaemon para persistência - [[t1543001-launch-agent]] — LaunchAgent para persistência de usuário - [[t1547-boot-or-logon-autostart-execution]] — Categoria pai de autostart - [[t1548004-sudo-caching]] — Escalada de privilégio frequentemente combinada ## Analytics Relacionadas - [[an0306-analytic-0306|AN0306 — Analytic 0306]] --- *Fonte: [MITRE ATT&CK — DET0109](https://attack.mitre.org/detectionstrategies/DET0109)*