Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
kratosminifilter — Kratos es un controlador Minifilter de alto rendimiento para el sistema de archivos de Windows diseñado para detectar, bloquear e inmunizar permanentemente | Kitploit
Herramientas/GitHubGitHub/mukendi/kratosminifilter
Herramientas DefensivasAnálisis de MalwareInteligencia de AmenazasRespuesta a IncidentesDetección de Anomalías
GitHubmukendi/kratosminifilter

kratosminifilter

Kratos es un controlador Minifilter de alto rendimiento para el sistema de archivos de Windows diseñado para detectar, bloquear e inmunizar permanentemente

Ver Repositorio
41hace 19 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

🛡️ Kratos Minifilter — Controlador Antiransomware del Núcleo de Windows

Proyecto de Investigación de Seguridad Defensiva — Controlador minifilter de Windows desarrollado en C++ para la detección y neutralización en tiempo real de ransomware a nivel de núcleo (Ring 0).


📋 Tabla de Contenidos

  • Resumen
  • Arquitectura
  • Mecanismos de Detección
  • Lista Negra por Huella Digital
  • Instalación
  • Configuración
  • Limitaciones
  • Advertencias Legales

Resumen

Kratos (Kratos.sys) es un controlador minifilter de Windows que opera en la altitud 425342 (nivel Antivirus) a través del Filter Manager (fltmgr.sys). A diferencia de las soluciones antivirus basadas en firmas estáticas, Kratos adopta un enfoque puramente conductual:

  • Sin base de datos de firmas — detecta ransomware desconocido
  • Modo kernel — intercepción atómica antes de la validación en disco
  • Multinivel — conductual + entrópico + estructural
  • Persistente — lista negra por hash para bloquear reejecuciones

Objetivos

ObjetivoResultado
Archivos Afectados (Primera Ejecución)< 5
Archivos Afectados (Reejecuciones)0
Tasa de Falsos Positivos0% (Después de Ajuste)
Compatibilidad

Arquitectura

root@kitploit:~
Modo Usuario
    │
    ▼
Filter Manager (fltmgr.sys) ← Altitud 425342
    │
    ▼
┌─────────────────────────────────────────────────────┐
│                  KRATOS.SYS                         │
│                                                     │
│  IRP_MJ_CREATE      → Inicialización de contextos   │
│  IRP_MJ_WRITE       → Análisis entrópico            │
│  IRP_MJ_READ        → Conteo de relación L/E        │
│  IRP_MJ_SET_INFORMATION → Detección de Eliminación/Cambio de Nombre│
│                                                     │
│  RTL_AVL_TABLE  → KS_PROCESS_CONTEXT por PID        │
│  FLT_FILE_CONTEXT → Entropía + estado por archivo   │
└─────────────────────────────────────────────────────┘
    │
    ▼
NTFS / ReFS

Mecanismos de Detección

Nivel 1 — Conductual

Kratos distingue entre eliminaciones de archivos valiosos (.docx, .pdf, .jpg...) y eliminaciones de archivos de sistema/caché usando KS_IsValuableFile():

  • ValuableDeleteCount — eliminaciones fuera de directorios del sistema
  • RenameToSuspicious — cambio de nombre a una extensión desconocida
  • HighEntropyWrites — aumento de entropía detectado

Nivel 2 — Entropía

Cálculo mediante una LUT precalculada (KratosEntropyLUT512) — evita el uso de log2(), que no está disponible en modo kernel. Muestra de 512 bytes por operación de escritura.

  • Delta: archivo existente con baja entropía → datos cifrados
  • Absoluto: nuevo archivo .tmp con entropía ≥ 7.5/8 bits

Nivel 3 — Estructural (Lista Blanca Inversa)

Innovación principal: en lugar de una lista negra de extensiones maliciosas, Kratos utiliza una lista blanca de extensiones legítimas.

root@kitploit:~
Original extension is valuable? YES
New extension is recognized? NO
→ SUSPECT — regardless of the extension chosen

Fórmula de Puntuación

root@kitploit:~
ValuableDeleteCount > 10 → +10 pts
RenameToSuspicious > 2 → +40 pts
HighEntropyWrites > 3 → +40 pts
RansomNoteCreated → +60 pts
ShadowCopyDeleted → +75 pts

Puntuación ≥ 60 → ADVERTENCIA
Puntuación ≥ 80 → CRÍTICO + Matar + Lista negra

Lista Negra por Huella Digital

Una vez detectado el ransomware, Kratos calcula su hash FNV-1a de 64 bits en los primeros 4096 bytes del ejecutable (Cabecera PE + inicio del código) y lo persiste en el registro:

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

Cada vez que se crea un proceso, ProcessNotifyCallback verifica la lista negra antes de cualquier ejecución. El proceso se bloquea mediante CreationStatus = STATUS_ACCESS_DENIED.

Resistencia al cambio de nombre: el hash FNV-1a es idéntico independientemente del nombre del archivo (Hercule-AES.exe, HERCUL~1.EXE, chrome.exe...).

Protección contra suplantación: Los procesos incluidos en la lista blanca se validan mediante Nombre Esperado + Ruta:

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

Instalación

Requisitos Previos

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

Compilación

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

Despliegue (VM de Prueba)

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

Configuración

Extensiones Monitoreadas (Lista Blanca Inversa)

Modifique g_LegitExtensions[] en KratosDetection.cpp para ajustar las extensiones consideradas legítimas después de un cambio de nombre.

Procesos en Lista Blanca

Modifique g_TrustedProcesses[] para agregar procesos legítimos con su ruta esperada:

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

Umbrales de Puntuación

Modifique KS_EvaluateThreatScore() en KratosDetection.cpp para ajustar los umbrales de ADVERTENCIA/CRÍTICO según su entorno.


Limitaciones

  • De 1 a 3 archivos pueden verse afectados durante la primera ejecución
  • No hay mecanismo de recuperación automática para archivos cifrados
  • FNV-1a no es resistente a la falsificación intencional de colisiones (se recomienda SHA-256 para producción)

Texto alternativo

Advertencias Legales

⚠️ Este controlador se desarrolla dentro de un marco de investigación de seguridad defensiva.

  • El uso está estrictamente reservado para entornos de prueba aislados (VMs sin acceso a la red)
  • Cualquier despliegue en un sistema de producción se realiza bajo la única responsabilidad del usuario
  • El autor declina toda responsabilidad por cualquier daño resultante del uso inadecuado
  • Modificar este controlador para eludir sistemas de seguridad sin autorización es ilegal
Descargar herramienta
NTFS / ReFS