Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
ksentinel — Linux-Kernel-Integritätsmonitor zur Erkennung von Syscall-Hooking | Kitploit
Tools/GitHubGitHub/matheuzsecurity/ksentinel
DefensivwerkzeugeEinbruchserkennung
GitHubmatheuzsecurity/ksentinel

ksentinel

Linux-Kernel-Integritätsmonitor zur Erkennung von Syscall-Hooking

Repository anzeigen
88747vor 7 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

ksentinel - Integritätsmonitor für Kernel-Syscalls

Singularity Rootkit

Überblick

ksentinel überwacht kritische Kernel-Funktionen und die Syscall-Tabelle auf nicht autorisierte Änderungen. Es erkennt häufige Syscalls, die von den meisten Rootkits angegriffen werden, darunter ftrace-Hooks, kprobes und Syscall-Table-Hijacking.

Funktionen

  • Überprüfung der Funktionsprolog-Integrität (FNV-1a-Hash-basiert)
  • Überwachung der Systemaufruftabelle (512 Einträge)
  • LSTAR MSR-Verifikation (x86_64 Syscall-Einstiegspunkt)
  • Anti-Entlade-Schutz mit Entsperrschlüssel-Mechanismus
  • Kontinuierliche Überwachung mit konfigurierbaren Intervallen

HINWEIS: ksentinel befindet sich in der ersten Version; weitere Verbesserungen werden in zukünftigen Commits folgen.

Überwachte Funktionen

VFS-Schicht:

  • filldir, filldir64, do_getdents64, vfs_read, vfs_write, vfs_open

Netzwerkstack:

  • tcp4_seq_show, tcp6_seq_show, udp4_seq_show, udp6_seq_show

Berechtigungen:

  • commit_creds, prepare_kernel_cred

Modulsystem:

  • load_module, free_module

Tracing-Infrastruktur:

  • register_kprobe, register_ftrace_function, ftrace_set_filter

Plus über 500 zusätzliche Syscall-Wrapper durch Präfixvergleich.

Erstellen

make

Während der Kompilierung wird ein zufälliger 32-stelliger Entsperrschlüssel generiert und angezeigt. Notieren Sie ihn sofort. Dieser Schlüssel ist im kompilierten Modul eingebettet und wird nicht extern gespeichert.

Bewahren Sie ihn sicher auf, falls der Anti-Entlade-Schutz aktiviert ist.

Installation

sudo make install

Das Modul lädt versteckt vor lsmod mit standardmäßig aktiviertem Anti-Entlade-Schutz.

Verwendung

Manuelles Laden

sudo insmod ksentinel.ko

Verwendung des Manager-Skripts

sudo ./ksentinel-manager.sh load      # load module
sudo ./ksentinel-manager.sh status    # check status
sudo ./ksentinel-manager.sh watch     # monitor live
sudo ./ksentinel-manager.sh violations # view alerts

Überwachungsprotokolle

dmesg -wT | grep ksentinel

Entsperren des Moduls

Wenn der Anti-Entlade-Schutz aktiviert ist, muss das Modul vor der Entfernung entsperrt werden:

echo "your_32char_key" > /proc/.ksctl

Oder verwenden Sie den Manager:

sudo ./ksentinel-manager.sh unlock

Entfernen des Moduls

sudo rmmod ksentinel

Modulparameter

ParameterTypeDefaultDescription
period_msuint2000Integritätsprüfintervall in Millisekunden
sym_prefixesstring"sys_,x64_sys,do_sys,ksys_"Komma-getrennte Symbolpräfixe zur Überwachung
extra_symsstring""Zusätzliche spezifische Symbole zur Überwachung
anti_unloadbooltrueAnti-Entlade-Schutz aktivieren

Beispiel mit benutzerdefinierten Parametern:

sudo insmod ksentinel.ko period_ms=5000 anti_unload=false

Leistungsaspekte

ksentinel führt periodische Integritätsprüfungen basierend auf dem period_ms-Parameter durch.

Niedrigere Intervalle bieten schnellere Erkennung, erhöhen aber die CPU-Auslastung. Das Standardintervall (2000ms) hat minimale Auswirkungen auf moderne Systeme.

Erkennungsbeispiele

Inline-Hook erkannt

ksentinel: [CHANGE - HOOK PATTERN] sys_getdents64 @ 0xffffffff81234567
  baseline=1234567890abcdef  current=fedcba0987654321
  bytes: e9 ab cd ef 12 90 90 90 ...
  flags: JMP/CALL_DETECTED ENDBR64_PREFIX

Syscall-Tabellen-Hook

ksentinel: [SCT HOOK] syscall[78] expected=0xffffffff81111111 got=0xffffffffa0222222 (fake_getdents+0x0)

LSTAR-Manipulation

ksentinel: [LSTAR TAMPERED] baseline=0xffffffff81800000 now=0xffffffffa0300000 (evil_syscall_entry+0x0)

Erkennung bekannter Rootkits

ksentinel kann Änderungen erkennen, die von folgenden Rootkits vorgenommen wurden:

  • PUMAKIT - ftrace-basiertes Hooken (18 Syscalls)
  • Diamorphine - Patchen der Syscall-Tabelle
  • KoviD - kprobes-basiertes Verstecken

Die Erkennung hängt davon ab, dass ksentinel vor dem Rootkit geladen wird.

Anforderungen

Kernel-Konfiguration:

  • CONFIG_KALLSYMS=y
  • CONFIG_KPROBES=y
  • CONFIG_MODULES=y

Unterstützte Kernel:

  • Linux 5.4 bis 6.12+
  • x86_64-Architektur (LSTAR-Überprüfung)
  • ARM64-Unterstützung (ohne LSTAR-Überprüfungen)

Einschränkungen

  1. Nur Erkennung - Verhindert oder entfernt keine Rootkits
  2. Baseline-Annahme - Geht davon aus, dass der Kernel zum Zeitpunkt des Modulladens sauber ist
  3. Race Condition - Rootkits, die vor ksentinel geladen wurden, können nicht erkannt werden
  4. Umgehung - Raffinierte Rootkits können den Überwachungscode selbst angreifen

Sicherheitsaspekte

  • Laden Sie ksentinel so früh wie möglich während des Bootvorgangs
  • Speichern Sie den Entsperrschlüssel sicher offline

Fehlerbehebung

Modul lädt nicht

Überprüfen Sie die Kernel-Konfiguration:

grep -E "KALLSYMS|KPROBES" /boot/config-$(uname -r)

Modul lässt sich nicht entladen

Das Modul ist mit Anti-Entlade-Schutz versteckt. Entsperren Sie es zuerst:

sudo ./ksentinel-manager.sh unlock

Entwicklung

make clean          # clean build artifacts
make                # compile module
make install        # load module
make uninstall      # unload module

Mitwirken

Beiträge sind willkommen. Halten Sie den Codestil ein und fügen Sie Tests für neue Funktionen hinzu.

Lizenz

GPL-2.0-only

Dieses Programm ist freie Software, lizenziert unter der GPL Version 2.0. Alle Änderungen müssen die Namensnennung des ursprünglichen Autors beibehalten und unter derselben Lizenz verbreitet werden.

Siehe LICENSE-Datei für die vollständigen Bedingungen.

Autor

MatheuZSecurity

Rootkit-Forscher-Community: https://discord.gg/66N5ZQppU7

Haftungsausschluss

Dieses Tool dient der Sicherheitsforschung und Systemadministration. Verwenden Sie es verantwortungsbewusst. Der Autor übernimmt keine Haftung für Missbrauch oder Schäden, die durch diese Software verursacht werden.

Tool herunterladen