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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
agent — Agente Linux basato su eBPF che applica policy di accesso a livello di eseguibile nello spazio kernel, isolando i processi e limitando l'accesso a file, rete e GPU tramite hook LSM. | Kitploit
Strumenti/GitHubGitHub/bomfather/agent
Strumenti DifensiviSicurezza dei ContenitoriAudit di ConfigurazioneSicurezza CloudDevSecOps
GitHubbomfather/agent

agent

Agente Linux basato su eBPF che applica policy di accesso a livello di eseguibile nello spazio kernel, isolando i processi e limitando l'accesso a file, rete e GPU tramite hook LSM.

Vedi Repository
3222518h 1m 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

Bomfather Agent

Bomfather Agent è un agente basato su eBPF che viene eseguito nello spazio del kernel per bloccare le azioni in base a una policy.

Abbiamo creato questo agente per risolvere i problemi che avevamo con le soluzioni esistenti.

  1. Erano troppo complesse da configurare e utilizzare.
  2. Erano troppo lente e inefficienti.
  3. E anche se fossero state semplici da configurare, non erano abbastanza sicure e/o flessibili per funzionare in una varietà di casi d'uso.

Questi punti sono la nostra stella polare per l'intero progetto. Tutte le funzionalità e gli sviluppi sono pensati per soddisfare questi punti.

Nota che cerchiamo di evitare l'uso di codice generato dall'IA in questo repo e non accetteremo PR generate dall'IA.

Funzionalità

  • Semplice da usare: tutto ciò che serve è un kernel con LSM abilitato. Installi l'agente, crei un file di policy di 5-10 righe, avvii l'agente e sei pronto.
  • Policy predefinita di negazione totale: quando viene applicata una restrizione (ad esempio, a un processo è consentito leggere un file), questa viene applicata a tutti i processi, e solo i processi inseriti nella whitelist possono aggirare la restrizione.
  • Applicazione delle policy basata sull'eseguibile: quasi tutta la policy si basa su un eseguibile e su quali risorse (ad esempio file, GPU, rete, ecc.) può accedere.
  • Veloce ed efficiente: l'agente viene eseguito nello spazio del kernel e utilizza eBPF e gli hook LSM per applicare la policy, il che è enormemente più efficiente rispetto a strumenti in userspace come strace.

Prerequisiti

(Qui c'è una guida su come abilitare LSM sul tuo sistema: https://docs.bomfather.dev/prerequisites)

  • Kernel Linux 5.18 o superiore
  • LSM abilitato sul sistema

Installazione

Dai sorgenti

Per compilare dai sorgenti, è necessario avere installati i seguenti strumenti:

go 1.26 or higher
make
clang
llvm
llvm-14
protobuf-compiler
git

Su Debian/Ubuntu, puoi installare le dipendenze di build non-Go con:

apt-get update \
  && apt-get install -y --no-install-recommends \
    clang \
    llvm \
    llvm-14 \
    protobuf-compiler \
  && rm -rf /var/lib/apt/lists/*

Poi compila l'agente con:

make

Avvio rapido

Per un avvio rapido, puoi usare il seguente comando per eseguire l'agente con una policy predefinita:

sudo ./agent run --config config.yaml

Questo eseguirà l'agente con qualunque policy sia definita nel file di configurazione.

Puoi poi facoltativamente usare il seguente comando per vedere lo stato dell'agente:

sudo ./agent status --help

Il comando status serve principalmente per leggere le metriche Prometheus dall'agente.

Come creare una policy

Una policy è un file YAML che definisce le regole applicate dall'agente.

La configurazione è composta principalmente da due sezioni, policies e attributes. La sezione policies definisce chi è autorizzato ad accedere a una risorsa protetta. La sezione policies definisce quali eseguibili sono autorizzati ad accedere a directory o IP protetti. Gli attributes definiscono i confini di un eseguibile, quindi un attributo può fare in modo che un eseguibile si connetta solo a un singolo IP e gli impedisca di connettersi a qualsiasi altro IP.

Ci sono molti modi per creare una policy, quindi per ogni funzionalità abbiamo una sezione dedicata nella documentazione che spiega come creare una policy per quella funzionalità: https://docs.bomfather.dev/configuration-guide.

Ma per un caso d'uso di avvio rapido, puoi usare il seguente file di policy:

policies:
  - executable: "filepath = [absolute-path]/app/signer"
    can_access_dirs:
      - "[absolute-path]/secrets/keys : read"
    is_allowed_to_access_ip:
      - "kms.us-east-1.amazonaws.com:443"

attributes:
  - path: "type = executable | filepath = [absolute-path]/app/signer"
    can_only_access_ips:
      - "kms.us-east-1.amazonaws.com:443"

Questa policy ci permette di isolare il signer e garantire che sia l'unico processo sul sistema in grado di accedere ai dati.

Nella sezione policies, definiamo che l'eseguibile signer è l'unico processo autorizzato ad accedere alla directory /secrets/keys e agli IP associati all'endpoint AWS KMS.

Nella sezione attributes, definiamo che l'eseguibile signer è autorizzato ad accedere solo all'endpoint AWS KMS e a nessun altro IP.

In questa configurazione relativamente semplice, siamo riusciti a rafforzare in modo significativo il nostro processo signer (che nel mondo reale potrebbe far parte di un sistema più grande) con una configurazione lunga solo 10 righe.

Ci sono un paio di altri esempi reali nella documentazione https://docs.bomfather.dev/examples/gpu.

Chiavi API

Facoltativamente, se vuoi esportare le violazioni rilevate dall'agente, puoi includere una chiave API e l'agente invierà le violazioni ai server Bomfather.

Ma, cosa più importante, QUESTO NON È OBBLIGATORIO, l'agente funzionerà comunque allo stesso modo senza di essa. Nessuna funzionalità viene disabilitata se non includi una chiave API, e se non viene inclusa alcuna chiave API, nessun dato di alcun tipo viene inviato ai server Bomfather.

Se invece vuoi usare i server Bomfather, contattaci all'indirizzo [email protected].

Scarica lo strumento