Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
kratosminifilter — Kratos è un driver Minifilter del File System di Windows ad alte prestazioni progettato per rilevare, bloccare e immunizzare permanentemente | Kitploit
Strumenti/GitHubGitHub/mukendi/kratosminifilter
Strumenti DifensiviAnalisi MalwareThreat IntelligenceRisposta agli IncidentiRilevamento di Anomalie
GitHubmukendi/kratosminifilter

kratosminifilter

Kratos è un driver Minifilter del File System di Windows ad alte prestazioni progettato per rilevare, bloccare e immunizzare permanentemente

Vedi Repository
4121 mese faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

🛡️ Kratos Minifilter — Driver Anti-Ransomware per Kernel Windows

Progetto di Ricerca sulla Sicurezza Difensiva — Driver minifilter per Windows sviluppato in C++ per il rilevamento e la neutralizzazione in tempo reale dei ransomware a livello di kernel (Ring 0).


📋 Indice

  • Panoramica
  • Architettura
  • Meccanismi di Rilevamento
  • Blacklist per Impronta Digitale
  • Installazione
  • Configurazione
  • Limitazioni
  • Avvertenze Legali

Panoramica

Kratos (Kratos.sys) è un driver minifilter per Windows che opera all'altitudine 425342 (livello Anti-Virus) tramite il Filter Manager (fltmgr.sys). A differenza delle soluzioni antivirus basate su firme statiche, Kratos adotta un approccio puramente comportamentale:

  • Nessun database di firme — rileva ransomware sconosciuti
  • Modalità kernel — intercettazione atomica prima della convalida su disco
  • Multi-livello — comportamentale + entropico + strutturale
  • Persistente — blacklist per hash per bloccare le riesecuzioni
  • Obiettivi

    | Obiettivo | Risultato |

    |-----------|-----------|

    | File Colpiti (Prima Esecuzione) | < 5 |

    | File Colpiti (Riesecuzioni) | 0 |

    | Tasso di Falsi Positivi | 0% (Dopo la regolazione) |

    | Compatibilità | NTFS / ReFS |


    Architettura

    root@kitploit:~
    User-Mode
        │
        ▼
    Filter Manager (fltmgr.sys) ← Altitude 425342
        │
        ▼
    ┌─────────────────────────────────────────────────────┐
    │                  KRATOS.SYS                         │
    │                                                     │
    │  IRP_MJ_CREATE      → Initializing contexts         │
    │  IRP_MJ_WRITE       → Entropic analysis             │
    │  IRP_MJ_READ        → R/W ratio counting            │
    │  IRP_MJ_SET_INFORMATION → Delete/Rename Detection   │
    │                                                     │
    │  RTL_AVL_TABLE  → KS_PROCESS_CONTEXT per PID        │
    │  FLT_FILE_CONTEXT → Entropy + state per file        │
    └─────────────────────────────────────────────────────┘
        │
        ▼
    NTFS / ReFS
    

    Meccanismi di Rilevamento

    Livello 1 — Comportamentale

    Kratos distingue tra eliminazioni di file di valore (.docx, .pdf, .jpg...) ed eliminazioni di file di sistema/cache utilizzando KS_IsValuableFile():

    • ValuableDeleteCount — eliminazioni al di fuori delle directory di sistema
    • RenameToSuspicious — rinomina in un'estensione sconosciuta
    • HighEntropyWrites — aumento di entropia rilevato

    Livello 2 — Entropia

    Calcolo tramite una LUT precalcolata (KratosEntropyLUT512) — evita l'uso di log2(), non disponibile in modalità kernel. Campione di 512 byte per operazione di scrittura.

    • Delta: file esistente con bassa entropia → dati crittografati
    • Assoluto: nuovo file .tmp con entropia ≥ 7,5/8 bit

    Livello 3 — Strutturale (Whitelist Inversa)

    Innovazione principale: invece di una blacklist di estensioni dannose, Kratos utilizza una whitelist di estensioni legittime.

    root@kitploit:~
    L'estensione originale è di valore? SÌ
    La nuova estensione è riconosciuta? NO
    → SOSPETTO — indipendentemente dall'estensione scelta
    

    Questo approccio può rilevare LockBit 3.0 (.xmjzh8q), BlackCat/ALPHV (casuale) e qualsiasi futuro ransomware che utilizzi un'estensione sconosciuta.

    Formula di Punteggio

    root@kitploit:~
    ValuableDeleteCount > 10 → +10 pts
    RenameToSuspicious > 2 → +40 pts
    HighEntropyWrites > 3 → +40 pts
    RansomNoteCreated → +60 pts
    ShadowCopyDeleted → +75 pts
    
    Punteggio ≥ 60 → AVVISO
    Punteggio ≥ 80 → CRITICO + Kill + Blacklist
    

    Blacklist per Impronta Digitale

    Una volta rilevato il ransomware, Kratos calcola il suo hash FNV-1a a 64 bit sui primi 4096 byte dell'eseguibile (Intestazione PE + inizio del codice) e lo salva nel registro:

    root@kitploit:~
    \Registry\Machine\SOFTWARE\Kratos\Blacklist
      └── 1F81F13004B5B920 = "C:\Users\...\Hercule.exe"
    

    Ogni volta che viene creato un processo, ProcessNotifyCallback controlla la blacklist prima di qualsiasi esecuzione. Il processo viene bloccato tramite CreationStatus = STATUS_ACCESS_DENIED.

    Resistenza alla rinomina: l'hash FNV-1a è identico indipendentemente dal nome del file (Hercule-AES.exe, HERCUL~1.EXE, chrome.exe...).

    Protezione contro lo spoofing: i processi nella whitelist vengono validati tramite Nome + Percorso Previsti:

    root@kitploit:~
    chrome.exe + \Program Files\Google\Chrome\Application\ → Legitimate
    chrome.exe + C:\Users\...\Desktop\                    → IMPOSTOR
    

    Installazione

    Prerequisiti

    • Windows 10/11 (x64)
    • Visual Studio 2022 con WDK (Windows Driver Kit)
    • VM con Secure Boot disabilitato (o test signing abilitato)

    Compilazione

    root@kitploit:~
    # Open KratosMinifilter.sln in Visual Studio
    # Configuration: Debug or Release / x64
    # Build → Build Solution
    

    Distribuzione (VM di test)

    root@kitploit:~
    # On the target VM — enable test mode
    bcdedit /set testsigning on
    
    # Copy Kratos.sys and Kratos.inf
    # Install via Device Manager or sc.exe
    sc create Kratos type= kernel start= boot binPath= "C:\Kratos\Kratos.sys"
    sc start Kratos
    

    Configurazione

    Estensioni Monitorate (Whitelist Inversa)

    Modificare g_LegitExtensions[] in KratosDetection.cpp per regolare le estensioni considerate legittime dopo una rinomina.

    Processi in Whitelist

    Modificare g_TrustedProcesses[] per aggiungere processi legittimi con il loro percorso previsto:

    root@kitploit:~
    { "myapp.exe", L"\\Program Files\\MyApp\\" },
    

    Soglie di Punteggio

    Modificare KS_EvaluateThreatScore() in KratosDetection.cpp per regolare le soglie AVVISO/CRITICO in base al proprio ambiente.


    Limitazioni

    • Da 1 a 3 file potrebbero essere colpiti durante la prima esecuzione
    • Nessun meccanismo di ripristino automatico per i file crittografati
    • L'FNV-1a non è resistente alla forzatura intenzionale delle collisioni (SHA-256 consigliato per la produzione)

    Texte alternatif

    Avvertenze Legali

    ⚠️ Questo driver è sviluppato nell'ambito di un progetto di ricerca sulla sicurezza difensiva.

    • L'uso è strettamente riservato ad ambienti di test isolati (VM senza accesso alla rete)
    • Qualsiasi implementazione su un sistema di produzione è effettuata sotto la esclusiva responsabilità dell'utente
    • L'autore declina ogni responsabilità per eventuali danni derivanti da un uso improprio
    • Modificare questo driver per eludere i sistemi di sicurezza senza autorizzazione è illegale

    Scarica lo strumento