Skip to content
KitploitKITPLOIT
ToolsBlog
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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
kerneleye — Kernel-Level-Sicherheit und Angriffsreaktion für Linux-Server. | Kitploit
Tools/GitHubGitHub/abdeljalilait/kerneleye
DefensivwerkzeugeContainer-SicherheitKonfigurationsprüfungForensikNetzwerksicherheitCloud-SicherheitBedrohungsanalyseEinbruchserkennungIncident ResponseAnomalieerkennungLog-Analyse
1515vor 2 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
GitHub
abdeljalilait/kerneleye

kerneleye

Kernel-Level-Sicherheit und Angriffsreaktion für Linux-Server.

Repository anzeigen
Teilen

KernelEye Logo

KernelEye

Kernel-Level-Datenverkehrsintelligenz und Bedrohungsabwehr für Linux-Server.

KernelEye ist eine selbst gehostete Sicherheitsüberwachungsplattform für Linux-Server. Sie verwendet eBPF, TC und XDP in einem Go-Agenten, um Netzwerkmetadaten zu erfassen, verdächtige Aktivitäten zu bewerten und Gegenmaßnahmen über Kernel-Level-XDP-Blockierung und ipset/iptables-Regeln anzuwenden. Ein Go-Backend speichert und analysiert Ereignisse, während ein React-Dashboard Serververwaltung, Live-Verkehr, Bedrohungsansichten, blockierte IPs, Whitelisting, Berichte und Analysen bereitstellt.

Funktionen

  • Echtzeit-Überwachung des Linux-Datenverkehrs mit eBPF.
  • Bandbreitenverfolgung mit TC-Hooks.
  • Bedrohungsbewertung auf Basis der gemeinsamen Go-Bewertungslogik in shared/scoring.
  • Analyse auf Agent-Seite und optionale automatische Gegenmaßnahmen.
  • XDP-Fast-Path-Paketblockierung und ipset/iptables-Fallback.
  • Analyse-Worker auf Backend-Seite, Blockverwaltung, Datenaufbewahrung und monatliche Berichte.
  • gRPC-Ingestion und Streaming von Block-Befehlen zwischen Agent und Backend mit TLS/mTLS-Verschlüsselung und HMAC-Befehlssignierung.
  • Monotoner Nonce-Replay-Schutz und strukturierte Audit-Protokollierung für alle Gegenmaßnahmen.
  • Periodische Integritätsprüfung der eBPF-Maps und Berichte zur Zustandsattestierung.
  • React-Dashboard mit WebSocket-Updates, Server-Detailansichten, Verwaltung blockierter IPs, Whitelisting, Berichten und Analysen.
  • GeoIP-Anreicherung, wenn MaxMind-Datenbanken konfiguriert sind.
  • OAuth-Unterstützung für GitHub und Google (Self-Hosted-Zugriff für einzelne Besitzer).
  • Datenschutzorientierte Erfassung: nur Metadaten, keine Paketnutzlasten.

Architektur

Tool herunterladen
root@kitploit:~
Monitored Linux host
  eBPF traffic probe + TC bandwidth hooks
  XDP firewall and ipset/iptables remediation
  Go agent (HMAC command verification, audit log)
      |
      | gRPC (TLS/mTLS) + HMAC-signed block commands
      v
Go backend API
  Fiber HTTP API
  gRPC ingest/block services (TLS/mTLS, command signing)
  analysis worker, block manager, retention, reports
  integrity report handler
      |
      v
PostgreSQL
      ^
      |
React dashboard
  REST API + WebSocket live updates

Wichtige Komponenten

Agent

Der Agent befindet sich in agent/ und ist der Linux-Host-Prozess.

  • agent/main.go startet Registrierung, Laden von eBPF, Bandbreitenverfolgung, Gegenmaßnahmen, Bewertung, Aggregation und Streaming von Block-Befehlen.
  • agent/ebpf/traffic_probe.c erfasst Verkehrsmetadaten.
  • agent/ebpf/xdp_firewall.c implementiert XDP-Paketfilterung.
  • agent/tc.go konfiguriert die TC-Bandbreitenverfolgung.
  • agent/aggregator.go bündelt Ereignisse und übermittelt sie an das Backend.
  • agent/history_store.go und agent/flush.go kümmern sich um lokale Persistenz und Wiederholungsverhalten.
  • agent/remediation/ enthält Analyzer, Auto-Blocking sowie XDP-, ipset- und Hybrid-Remediatoren.

Der Agent benötigt Linux und erhöhte Rechte für eBPF/XDP-Operationen.

Backend

Das Backend befindet sich in backend/.

  • backend/cmd/api/main.go startet die Fiber-HTTP-API und gRPC-Dienste.
  • backend/internal/api/ enthält Authentifizierung, Dashboard-Handler, gRPC-Handler, Block-APIs, Whitelist-APIs, WebSocket-Behandlung und Ratenbegrenzung.
  • backend/internal/analysis/ enthält Bewertungs-Worker, Blockverwaltung, Datenaufbewahrung und die Logik für monatliche Berichte.
  • backend/internal/database/ enthält den von sqlc generierten Datenbankzugriffscode.
  • backend/internal/geoip/ übernimmt die GeoIP-Anreicherung.
  • backend/internal/email/ sendet bei Konfiguration E-Mails über Mailtrap.
  • backend/migrations/ enthält PostgreSQL-Migrationen.

HTTP verwendet standardmäßig Port 8080; gRPC standardmäßig Port 9091.

Dashboard

Das Dashboard befindet sich in dashboard/ und ist eine Vite-React-Anwendung.

  • dashboard/src/pages/ enthält Seiten für Übersicht, Server, Serverdetails, Bedrohungen, Warnungen, Berichte, Visualizer, blockierte IPs, Whitelist, Login, Profil und OAuth-Callback.
  • dashboard/src/components/ enthält Live-Verkehr, Block-Feed, Diagramme, Serverlisten, Konfiguratoren und gemeinsame Layout-Komponenten.
  • dashboard/src/api/client.ts definiert den REST-API-Client.
  • dashboard/src/context/WebSocketContext.tsx verwaltet Live-Ereignis-Updates.

Der Dev-Server ist für http://localhost:3000 konfiguriert.

Landingpage

Die öffentliche Marketing-Website befindet sich in kerneleye-landing-page/. Das Produktions-Frontend-Image baut sowohl die Landingpage als auch das Dashboard und stellt sie dann über nginx bereit.

Gemeinsamer Code und Protokolle

  • shared/scoring/ enthält das gemeinsame Bedrohungsbewertungsmodul, das sowohl vom Agenten als auch vom Backend verwendet wird.
  • shared/cmdsigning/ enthält das Modul für HMAC-SHA256-Befehlssignierung und Nonce-Replay-Schutz.
  • proto/kerneleye/v1/ enthält Protobuf-Definitionen für Ingest- und Block-Dienste.
  • proto/gen/go/ enthält generierten Go-Protobuf-Code.

Datenschutz

KernelEye prüft keine Paketnutzlasten oder Anwendungsinhalte.

Erfasste Metadaten umfassen:

  • Quell- und Ziel-IP-Adressen.
  • Ports und Protokolle.
  • TCP-Flags und Verbindungszähler.
  • Paket- und Byte-Zähler.
  • Verkehrsrichtung.
  • Zeitstempel.
  • Optionale GeoIP/ASN-Anreicherung.

Nicht erfasst:

  • Paketnutzlasten.
  • HTTP-Anfragekörper oder -Header.
  • Benutzeranmeldeinformationen.
  • Anwendungsdaten.

Bedrohungsbewertung

Die Bedrohungsbewertung ist in shared/scoring/scorer.go implementiert. Der aktuelle Scorer ist differenzierter als eine einzelne lineare Formel: Er berücksichtigt SYN-Rate, Zugriff auf eindeutige Ports, fehlgeschlagene Handshakes, Burst-Verhalten, Dienstmissbrauch, Richtung, Konfidenz und den Abfall des Scores im Laufe der Zeit.

Standard-Klassifizierungsschwellen:

root@kitploit:~
< 20   normal
20-39  suspicious
>= 40  malicious
>= 40  eligible for auto-blocking when remediation is enabled

Der Backend-Analyse-Worker verwendet außerdem akkumulierte Verkehrsfenster und kann die Blockverwaltung für Hochrisiko-Quellen auslösen.

Gegenmaßnahmen

KernelEye unterstützt aktive Gegenmaßnahmen, wenn diese auf dem Agenten aktiviert sind.

EbeneImplementierungZweck
XDPagent/remediation/xdp_remediator.goSchnelle Verwerfungen auf Kernel-Ebene vor dem Netzwerk-Stack
IPSetagent/remediation/ipset_remediator.goipset/iptables-Blockverwaltung
Hybridagent/remediation/hybrid_remediator.goKoordiniert XDP- und ipset-Verhalten
Auto-Blockeragent/remediation/auto_blocker.goBlockiert Quellen oberhalb konfigurierter Score-Schwellen
Backend-Blockmanagerbackend/internal/analysis/block_manager.goKoordiniert backend-generierten Blockstatus und -befehle

Das Dashboard bietet außerdem die Verwaltung blockierter IPs und der Whitelist.

Schnellstart

Voraussetzungen

  • Go 1.25.x für die aktuellen Backend- und Agent-Module.
  • Node.js/npm für die React-Apps.
  • PostgreSQL 14+ oder 15+.
  • Für den Agenten: Linux mit BTF-Unterstützung, Root-Rechte, clang/LLVM, bpftool, libbpf-Header, ipset und iptables.

Umgebung konfigurieren

root@kitploit:~
cp .env.example .env

Legen Sie mindestens fest:

root@kitploit:~
DATABASE_URL=postgres://kerneleye:<password>@localhost:5432/kerneleye?sslmode=disable
JWT_SECRET=<at-least-32-characters>
API_KEY_SECRET=<strong-secret>
CORS_ORIGINS=http://localhost:3000

Optionale Integrationen umfassen Redis-Ratenbegrenzung, Mailtrap-E-Mail, GitHub/Google-OAuth und MaxMind-GeoIP.

Backend starten

root@kitploit:~
cd backend
go mod download
go run cmd/api/main.go

Das Backend startet:

  • HTTP-API auf http://localhost:8080
  • gRPC auf localhost:9091

Dashboard starten

root@kitploit:~
cd dashboard
npm install
npm run dev

Öffnen Sie http://localhost:3000.

Die Anmeldung erfolgt ausschließlich über OAuth. Setzen Sie AUTH_OWNER_EMAIL und konfigurieren Sie mindestens einen OAuth-Anbieter (GitHub oder Google) für den Dashboard-Zugriff. Nur die konfigurierte Besitzer-E-Mail-Adresse darf sich anmelden.

Agent bauen und ausführen

root@kitploit:~
cd agent
bpftool btf dump file /sys/kernel/btf/vmlinux format c > ebpf/vmlinux.h
go generate ./...
go build -o kerneleye-agent
sudo KERNELEYE_API_KEY=<server-api-key> \
  KERNELEYE_SERVER=localhost:8080 \
  KERNELEYE_GRPC_URL=localhost:9091 \
  ./kerneleye-agent

Nützliche Agent-Flags:

root@kitploit:~
-enable-remediation     enable active blocking and auto-blocking
-xdp                    enable XDP fast-path blocking
-interface <name>       select XDP network interface
--read-only             monitor and report only, never block
--insecure              disable TLS (dev only)
--tls-ca-file <path>    backend CA certificate for TLS verification
--tls-cert-file <path>  agent client certificate for mTLS
--tls-key-file <path>   agent client private key for mTLS
-list-blocked           print current ipset state and exit
-flush-blocklists       flush ipset and XDP blocklists and exit
-clear-data             remove local agent SQLite stores and exit
-version                print build version

Wenn --enable-remediation gesetzt ist, muss CMD_SIGNING_KEY sowohl auf dem Agenten als auch auf dem Backend konfiguriert sein. Generieren Sie ihn mit openssl rand -base64 32.

Projektstruktur

root@kitploit:~
kerneleye/
├── agent/                     Go eBPF/XDP monitoring agent
│   ├── ebpf/                  eBPF C programs and compiled objects
│   ├── remediation/           analyzer, XDP, ipset, hybrid remediation
│   ├── assets/                embedded XDP object assets
│   └── scripts/               ipset helper scripts and service files
├── backend/                   Go Fiber API and gRPC backend
│   ├── cmd/api/               backend entrypoint
│   ├── internal/api/          HTTP, auth, WebSocket, gRPC, block APIs
│   ├── internal/analysis/     workers, blocking, retention, reports
│   ├── internal/database/     sqlc generated queries and helpers
│   ├── internal/email/        Mailtrap email service
│   ├── internal/geoip/        MaxMind GeoIP service
│   └── migrations/            PostgreSQL migrations
├── dashboard/                 React dashboard app
├── kerneleye-landing-page/    React landing page app
├── proto/                     protobuf definitions and generated Go code
├── shared/
│   ├── scoring/            shared threat scoring Go module
│   └── cmdsigning/         HMAC command signing and nonce tracking
├── docs/                      additional project documentation
├── tests/                     traffic simulation shell scripts
├── docker/                    frontend nginx and install script templates
├── Dockerfile.backend         backend container build
├── Dockerfile.frontend        landing + dashboard + agent download image
├── docker-compose.yml         production-oriented compose stack
└── Makefile                   generation, build, and docker targets

Tech-Stack

EbeneTechnologien
AgentGo, cilium/ebpf, XDP, TC, gRPC, SQLite local stores, zap
BackendGo, Fiber, gRPC, PostgreSQL, sqlc, Redis, Mailtrap
DashboardReact, TypeScript, Vite, Ant Design, React Query, Recharts
LandingpageReact, TypeScript, Vite, Tailwind CSS
ProtokolleProtobuf, gRPC
BereitstellungDocker, Docker Compose, nginx, Traefik labels

Getestet auf

Der KernelEye-Agent wurde auf den folgenden Konfigurationen getestet. Diese Tabelle wird aktualisiert, sobald neue Umgebungen validiert werden.

BetriebssystemKernelCPURAMArchAnmerkungen
Ubuntu 26.04 LTS7.0.0-15-genericAMD EPYC-Genoa (2 vCPU)3.7 GBx86_64—

Für die eBPF-Userspace-Integration verwenden wir ebpf-go.

Build und Generierung

Häufige Make-Ziele:

root@kitploit:~
make gen-proto
make gen-sql
make gen-ebpf
make build-backend
make build-agent
make build
make docker-build

Das Frontend-Docker-Image erstellt die Landingpage, das Dashboard und ein herunterladbares Linux-Agent-Binary.

Dokumentation

  • Erste Schritte
  • Entwicklungsleitfaden
  • Codebase-Index
  • Sicherheitsarchitektur
  • Bedrohungsmodell
  • Vertrauensmodell
  • Analyse des Bewertungssystems
  • Agent-Architektur
  • Gegenmaßnahmen
  • Datenbank-Migrationen

Kontakt

  • Website: https://example.com
  • E-Mail: [email protected]

Lizenz

KernelEye ist Open Source unter der Apache License, Version 2.0 (Apache-2.0). Siehe LICENSE.

Copyright 2026 Abdeljalil Aitetaleb.

Der Name KernelEye, die Logos und die visuelle Identität sind nicht unter der Apache-Lizenz lizenziert. Siehe TRADEMARKS.md für die Bedingungen zur Markennutzung.