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
krie — Integrità del runtime del kernel Linux con eBPF | Kitploit
Strumenti/GitHubGitHub/gui774ume/krie
Strumenti DifensiviAnalisi di BinariRilevamento Intrusioni
GitHubgui774ume/krie

krie

Integrità del runtime del kernel Linux con eBPF

Vedi Repository
186222 anni faRevisionato da Kitploit

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

KRIe

License: GPL v2 License

KRIe è un progetto di ricerca che mira a rilevare exploit del kernel Linux tramite eBPF. KRIe è ben lontano dall'essere una strategia infallibile: dai limiti legati a eBPF alle rilevazioni post-exploit che potrebbero basarsi su un kernel compromesso per emettere eventi di sicurezza, è chiaro che un attaccante motivato sarà infine in grado di aggirarlo. Detto ciò, l'obiettivo del progetto è rendere la vita più difficile agli attaccanti e, in ultima analisi, impedire che exploit preconfezionati funzionino su un kernel vulnerabile.

KRIe è stato sviluppato utilizzando CO-RE (Compile Once - Run Everywhere) in modo da essere compatibile con un'ampia gamma di versioni del kernel. Se il tuo kernel non esporta le informazioni di debug BTF, KRIe cercherà di scaricarle automaticamente da BTFHub. Se il tuo kernel non è disponibile su BTFHub, ma sei stato in grado di generare manualmente i dati BTF del tuo kernel, puoi fornirli nel file di configurazione (vedi sotto).

Requisiti di sistema

Questo progetto è stato sviluppato su Ubuntu Focal 20.04 (Kernel Linux 5.15) ed è stato testato su versioni precedenti fino a Ubuntu Bionic 18.04 (Kernel Linux 4.15).

  • golang 1.18+
  • (opzionale) Si presuppone che gli header del kernel siano installati in lib/modules/$(uname -r), altrimenti aggiornate il Makefile con la loro posizione.
  • (opzionale) clang & llvm 14.0.6+

I campi opzionali sono necessari per ricompilare i programmi eBPF.

Compilazione

  1. Poiché KRIe è stato costruito usando CO-RE, non dovresti aver bisogno di ricompilare i programmi eBPF. Tuttavia, se desideri comunque ricompilarli, puoi usare il seguente comando:
root@kitploit:~
# ~ make build-ebpf
  1. Per compilare KRIE, esegui:
root@kitploit:~
# ~ make build
  1. Per installare KRIE (copia in /usr/bin/krie) esegui:
root@kitploit:~
# ~ make install

Per iniziare

KRIe deve essere eseguito come root. Esegui sudo krie -h per ottenere aiuto.

root@kitploit:~
# ~ krie -h
Usage:
  krie [flags]

Flags:
      --config string   File di configurazione di KRIe (default "./cmd/krie/run/config/default_config.yaml")
  -h, --help            aiuto per krie

Configurazione

root@kitploit:~
## Log level, options are: panic, fatal, error, warn, info, debug or trace
log_level: debug

## JSON output file, leave empty to disable JSON output.
output: "/tmp/krie.json"

## BTF information for the current kernel in .tar.xz format (required only if KRIE isn't able to locate it by itself)
vmlinux: ""

## events configuration
events:
  ## action taken when an init_module event is detected
  init_module: log

  ## action taken when an delete_module event is detected
  delete_module: log

  ## action taken when a bpf event is detected
  bpf: log

  ## action taken when a bpf_filter event is detected
  bpf_filter: log

  ## action taken when a ptrace event is detected
  ptrace: log

  ## action taken when a kprobe event is detected
  kprobe: log

  ## action taken when a sysctl event is detected
  sysctl:
    action: log

    ## Default settings for sysctl programs (kernel 5.2+ only)
    sysctl_default:
      block_read_access: false
      block_write_access: false

    ## Custom settings for sysctl programs (kernel 5.2+ only)
    sysctl_parameters:
      kernel/yama/ptrace_scope:
        block_write_access: true
      kernel/ftrace_enabled:
        override_input_value_with: "1\n"

  ## action taken when a hooked_syscall_table event is detected
  hooked_syscall_table: log

  ## action taken when a hooked_syscall event is detected
  hooked_syscall: log

  ## kernel_parameter event configuration
  kernel_parameter:
    action: log
    periodic_action: log
    ticker: 1 # sends at most one event every [ticker] second(s)
    list:
      - symbol: system/kprobes_all_disarmed
        expected_value: 0
        size: 4
      #      - symbol: system/selinux_state
      #        expected_value: 256
      #        size: 2

      # sysctl
      - symbol: system/ftrace_dump_on_oops
        expected_value: 0
        size: 4
      - symbol: system/kptr_restrict
        expected_value: 0
        size: 4
      - symbol: system/randomize_va_space
        expected_value: 2
        size: 4
      - symbol: system/stack_tracer_enabled
        expected_value: 0
        size: 4
      - symbol: system/unprivileged_userns_clone
        expected_value: 0
        size: 4
      - symbol: system/unprivileged_userns_apparmor_policy
        expected_value: 1
        size: 4
      - symbol: system/sysctl_unprivileged_bpf_disabled
        expected_value: 1
        size: 4
      - symbol: system/ptrace_scope
        expected_value: 2
        size: 4
      - symbol: system/sysctl_perf_event_paranoid
        expected_value: 2
        size: 4
      - symbol: system/kexec_load_disabled
        expected_value: 1
        size: 4
      - symbol: system/dmesg_restrict
        expected_value: 1
        size: 4
      - symbol: system/modules_disabled
        expected_value: 0
        size: 4
      - symbol: system/ftrace_enabled
        expected_value: 1
        size: 4
      - symbol: system/ftrace_disabled
        expected_value: 0
        size: 4
      - symbol: system/sysctl_protected_fifos
        expected_value: 1
        size: 4
      - symbol: system/sysctl_protected_hardlinks
        expected_value: 1
        size: 4
      - symbol: system/sysctl_protected_regular
        expected_value: 2
        size: 4
      - symbol: system/sysctl_protected_symlinks
        expected_value: 1
        size: 4
      - symbol: system/sysctl_unprivileged_userfaultfd
        expected_value: 0
        size: 4

  ## action to check when a register_check fails on a sensitive kernel space hook point
  register_check: log

Documentazione

  • La prima versione di KRIe è stata annunciata al BlackHat 2022, durante il briefing: Return to Sender - Detecting Kernel Exploits with eBPF

Licenza

  • Il codice Go è sotto licenza Apache 2.0.
  • I programmi eBPF sono sotto licenza GPL v2.
Scarica lo strumento