Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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
411513 giorni 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

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.

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

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:

\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:

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

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

Distribuzione (VM di test)

# 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:

{ "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