
O Kratos Minifilter é um driver de kernel do Windows (FLTMGR.SYS) criado para detecção de ransomware em tempo real e mitigação de E/S de arquivos. Ele intercepta IRPs de baixo nível para bloquear instantaneamente a criptografia em massa não autorizada e os gatilhos canary.
Kratos Minifilter é um driver de kernel do Windows (FLTMGR.SYS) criado para detecção de ransomware em tempo real e mitigação de E/S de arquivos. Ele intercepta IRPs de baixo nível para bloquear instantaneamente a criptografia em massa não autorizada e gatilhos canary.
Kratos é um Minifilter de Sistema de Arquivos do Windows de pesquisa, construído sobre o Filter Manager da Microsoft (fltmgr.sys).
Em vez de depender de assinaturas de malware, Kratos explora como o ransomware pode ser detectado observando o comportamento do sistema de arquivos diretamente dentro do kernel do Windows.
O projeto demonstra como um driver de segurança pode:
Kratos não tem a intenção de se tornar um antivírus comercial.
Seu objetivo principal é entender como os produtos modernos de Endpoint Detection and Response (EDR) implementam a detecção comportamental de ransomware dentro do kernel do Windows.
Kratos combina três camadas de detecção independentes.
Cada operação de escrita é amostrada.
Em vez de chamar funções de ponto flutuante indisponíveis dentro do kernel, Kratos usa uma tabela de consulta pré-computada.
O detector identifica:
Uma vez que o ransomware é confirmado, Kratos calcula um fingerprint FNV-1a de 64 bits a partir do executável.
O fingerprint é armazenado dentro de:
HKLM\SOFTWARE\Kratos\Blacklist
Execuções futuras são bloqueadas antes que o ransomware comece a criptografar arquivos.
Ao contrário das blacklists baseadas em nomes de arquivos, o fingerprinting sobrevive a:
Aqui está a cronologia exata desta neutralização em Ring 0 pelo Kratos (o driver minifilter anti-ransomware que estou desenvolvendo), reconstruída a partir de logs do kernel — apresentando uma reviravolta inesperada nas pastas compartilhadas do hypervisor:
1. Note Drop (Passagem Silenciosa) DarkSide começa gerando sua nota de resgate .txt. Como arquivos de texto geram baixa entropia e padrões de E/S padrão, Kratos não dispara nenhum alerta. Escolha arquitetural intencional: zero falsos positivos em editores de texto legítimos e softwares de escritório.
2. Violação Comportamental (VM Convidada) O malware muda para sua fase destrutiva, visando arquivos da área de trabalho com a extensão .27efa0d1. Após 3 renomeações suspeitas (um arquivo ZIP e 2 imagens PNG), a análise de sintaxe combinada com alta entropia empurra o Threat Score além do limiar crítico (\ge 80). Ação: Kratos nega E/S (STATUS_ACCESS_DENIED), encerra o processo (PID 6412), amostra os primeiros 4096 bytes do cabeçalho PE e registra seu hash FNV-1a (07BACD78B04E01D9) na blacklist do kernel.
3. Ataque Transfronteiriço: Salvando o Sistema HOST! Uma segunda thread (PID 5236) avança para o diretório blog-security-main no HarddiskVolume5. A Reviravolta: Este volume mapeava diretamente para a pasta compartilhada do hypervisor conectada à unidade física do HOST. DarkSide estava tentando uma infecção lateral de Convidado para Host. Resultado: Anexado a todos os volumes, Kratos intercepta a renomeação após apenas 2 arquivos (about.html e uma página web). O processo é morto instantaneamente, preservando integralmente o projeto hospedado no host.
4. O Golpe Final: Imunização O(1) Uma terceira tentativa de execução do binário é iniciada (PID 704). Logo no callback PreCreate, Kratos faz o hash do cabeçalho PE, corresponde ao fingerprint na blacklist e sufoca a execução na origem: 0 arquivos tocados.
Arquivos de usuário impactados: 5 no total (3 no Convidado, 2 no Host via Pasta Compartilhada).
Infecção lateral Convidado-para-Host Convidado-para-Host: Completamente bloqueada a partir do Ring 0 dentro da VM.
Tempo de resposta: Microssegundos (cálculo de entropia LUT de ponto fixo, zero operações de ponto flutuante)
Defesa proativa: 100% de eficácia do fingerprinting FNV-1a na reexecução.

Figura : Kratos vs DarkSide