# M1044 — Restrict Library Loading ## Descrição Restringir o carregamento de bibliotecas envolve a implementação de controles de segurança para garantir que apenas bibliotecas confiáveis e verificadas (DLLs, shared objects, etc.) sejam carregadas nos processos. ```mermaid graph TB A["⚙️ Habilitar SafeDLLSearchMode<br/>Windows — impede DLL<br/>hijacking por ordem de busca"] --> B["✍️ Exigir Code Signing<br/>DLLs devem ter<br/>assinatura digital válida"] B --> C["🔒 Restringir LD_PRELOAD<br/>Linux — bloquear variável<br/>para usuários não-root"] C --> D["📁 Proteger Library Paths<br/>ACLs em diretórios<br/>sem escrita para usuários"] D --> E["📊 Monitorar com Sysmon<br/>Event ID 7 — ImageLoad<br/>alertar libs não assinadas"] ``` Adversários frequentemente abusam de DLL Injection, DLL Search Order Hijacking ou mecanismos de LD_PRELOAD para executar código malicioso forçando o sistema operacional a carregar bibliotecas não confiáveis. Esta mitigação pode ser implementada por meio das seguintes medidas: Aplicar Práticas Seguras de Carregamento de Bibliotecas: - Habilitar `SafeDLLSearchMode` no Windows. - Restringir o uso de `LD_PRELOAD` e `LD_LIBRARY_PATH` em sistemas Linux. Aplicação de Code Signing: - Exigir assinaturas digitais para todas as bibliotecas carregadas nos processos. - Utilizar ferramentas como Signtool e WDAC para aplicar a execução de DLLs assinadas. Hardening de Ambiente: - Proteger caminhos e diretórios de bibliotecas para impedir que adversários coloquem bibliotecas maliciosas. - Monitorar diretórios com permissão de escrita do usuário e configurações do sistema contra alterações não autorizadas. Auditoria e Monitoramento de Carregamento de Bibliotecas: - Habilitar `Sysmon` no Windows para monitorar carregamentos suspeitos de bibliotecas. - Utilizar `auditd` no Linux para monitorar caminhos de bibliotecas compartilhadas e alterações em arquivos de configuração. Utilizar Soluções de Controle de Aplicações: - Implementar AppLocker, WDAC ou SELinux para permitir apenas bibliotecas confiáveis. *Ferramentas para Implementação* Ferramentas Específicas do Windows: - AppLocker: Whitelisting de aplicações para DLLs. - Windows Defender Application Control (WDAC): Restringir execução de bibliotecas não autorizadas. - Signtool: Verificar e aplicar code signing. - Sysmon: Monitorar eventos de carregamento de DLL (Event ID 7). Ferramentas Específicas do Linux: - auditd: Monitorar alterações em caminhos de bibliotecas e arquivos críticos. - SELinux/AppArmor: Definir políticas para restringir o carregamento de bibliotecas. - ldconfig e chattr: Proteger arquivos de configuração LD e prevenir modificações não autorizadas. Soluções Multiplataforma: - Wazuh ou OSSEC: Monitoramento de integridade de arquivos para alterações em bibliotecas. - Tripwire: Detectar e alertar sobre modificações não autorizadas em bibliotecas. ## Técnicas Mitigadas | ID | Técnica | |---|---------| | T1574 | [[t1574-hijack-execution-flow\|T1574 — Hijack Execution Flow]] | | T1547.008 | [[t1547-008-lsass-driver\|T1547.008 — LSASS Driver]] | | T1574.001 | [[t1574-001-dll\|T1574.001 — DLL]] | --- *Fonte: [MITRE ATT&CK — M1044](https://attack.mitre.org/mitigations/M1044)* ## Contexto LATAM > [!globe] Relevância Regional > Restrição de carregamento de bibliotecas é relevante no combate ao DLL hijacking, técnica amplamente utilizada por malware bancário brasileiro e RATs como [[s1087-asyncrat]] e [[quasar-rat]] que frequentemente se injetam em processos legítimos para evasão. Ambientes Windows corporativos brasileiros com alto volume de software legado tendem a ter múltiplas DLL search order vulnerabilities não corrigidas. > - Adoção em SOCs brasileiros: baixo — SafeDLLSearchMode e restrições de LD_PRELOAD raramente configurados fora de ambientes de alta segurança; monitoramento via Sysmon Event ID 7 presente em SOCs maduros > - Regulamentações relevantes: BACEN 4893/2021 (hardening de endpoints para sistemas financeiros), CIS Benchmark Level 2 (recomendado pelo setor financeiro nacional), NIST SP 800-167 adaptado > - Desafios regionais: incompatibilidade de SafeDLLSearchMode com aplicações fiscais brasileiras (NFe, TOTVS, SAP localizados), ausência de assinatura digital em muitos softwares legados nacionais, custo de reválidação de aplicações críticas após hardening ## Notas Relacionadas - [[_defenses|Hub de Defesas]] — visão geral defensiva - [[_mitigations|Todas as Mitigações]] — catálogo M-series completo