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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ethibench — Framework di valutazione per agenti di penetration testing AI che misura la scoperta validata di vulnerabilità utilizzando il matching semantico basato su LLM, la risoluzione bipartita e l'analisi cumulativa su target del mondo reale. | Kitploit
Strumenti/GitHubGitHub/jd0965199-oss/ethibench
Frameworks per Penetration TestingAnalisi delle VulnerabilitàPenetration TestingMachine LearningPaper e RicercaApprendimento e FormazioneSicurezza dell'IA
GitHubjd0965199-oss/ethibench

ethibench

Framework di valutazione per agenti di penetration testing AI che misura la scoperta validata di vulnerabilità utilizzando il matching semantico basato su LLM, la risoluzione bipartita e l'analisi cumulativa su target del mondo reale.

Vedi Repository
304 mesi faNon ancora revisionato

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

Dal Controllato al Selvaggio: Valutazione degli Agenti di Pentesting nel Mondo Reale

Gli agenti di pentesting basati su intelligenza artificiale sono sempre più credibili come sistemi di sicurezza offensiva, ma i benchmark attuali forniscono ancora indicazioni limitate su quali sistemi otterranno i migliori risultati su target del mondo reale. La maggior parte delle valutazioni esistenti misura e ottimizza obiettivi predefiniti come il flag capture, l'esecuzione remota di codice, la riproduzione di exploit o la similarità delle traiettorie, in ambienti semplificati o limitati. Questi benchmark sono preziosi per misurare capacità circoscritte, ma non catturano adeguatamente la complessità, l'esplorazione aperta e il processo decisionale strategico richiesti dal pentesting realistico. Presentiamo un framework di valutazione pratico che sposta la valutazione dal completamento del compito alla scoperta validata di vulnerabilità, consentendo la valutazione su target sufficientemente complessi che coprono più superfici d'attacco e classi di vulnerabilità. Il framework combina ground-truth strutturato con semantic matching basato su LLM per identificare le vulnerabilità, risoluzione bipartita per valutare i finding in condizioni di ambiguità realistica, manutenzione continua del ground-truth, valutazione ripetuta e cumulativa di agenti stocastici, metriche di efficienza e selezione di suite ridotte per una sperimentazione sostenibile. Questa metodologia fa avanzare lo stato dell'arte consentendo un confronto più realistico e operativamente informativo degli agenti di pentesting basati su IA. Per garantire la riproducibilità, rilasciamo inoltre ground-truth annotati da esperti e il codice per il protocollo di valutazione proposto.

Pipeline di valutazione per strumenti di security testing. Confronta i finding degli strumenti con i dataset ground truth utilizzando il matching basato su LLM e produce metriche di precision, recall, F1 e F0.5.

Installazione

poetry install

Richiede Python 3.11+ e Poetry installati.

Avvio Rapido

# 1. Set your LLM API key
export OPENAI_API_KEY="..."

# 2. Run evaluation
ethibench evaluate ./my_experiment --dataset path/to/dataset.yaml

# 3. View results
cat ./my_experiment/evaluation_outputs/summary.md

Comandi CLI

ethibench evaluate

Esegue l'intera pipeline di valutazione su una directory di esperimento.

ethibench evaluate <experiment_dir> --dataset <dataset.yaml> [options]

# Batch: evaluate all experiments in a folder
ethibench evaluate --parent-dir final_experiments/ --dataset <dataset.yaml>

# Force re-evaluation (ignore cached artifacts)
ethibench evaluate <experiment_dir> --dataset <dataset.yaml> --force

Argomenti:

  • experiment_dir — (opzionale) Directory contenente le sottodirectory target (o sottodirectory run_* ciascuna con le proprie sottodirectory target). Può essere omessa quando si usa --parent-dir.

Opzioni:

  • --dataset, -d — (obbligatorio) Percorso del file YAML del dataset.
  • --gt-dir, -g — Directory del ground truth. Il valore predefinito è gt/ accanto al file YAML del dataset.
  • --output-dir, -o — Directory di output. Il valore predefinito è evaluation_outputs/ all'interno della directory dell'esperimento. Ignorata in modalità batch.
  • --replicates, -n — Numero di repliche del matching LLM (predefinito: 1).
  • --force, -f — Riesegue tutti i passaggi, ignorando gli artefatti in cache. Per impostazione predefinita, i risultati intermedi esistenti (raw matchings, bipartite matchings, metriche) vengono riutilizzati.
  • --parent-dir, -p — Cartella padre contenente più directory di esperimento da valutare in batch. Tutte le sottodirectory immediate vengono trattate come esperimenti.

Cosa fa:

  1. Raccoglie i finding — esamina le sottodirectory target (nome cartella = target_id), carica ogni findings.jsonl, assegna subset_name dal dataset YAML.
  2. Raw LLM matching — confronta ogni finding con ogni elemento ground truth utilizzando un LLM.
  3. Bipartite matching — algoritmo ungherese per trovare l'assegnazione 1-a-1 ottimale.
  4. Metriche — calcola TP, FP, FN, duplicati, precision, recall, F1, F0.5 e severity score per subset.
  5. Aggregazione — calcola le medie su repliche e run, produce i risultati complessivi pesati/non pesati.
  6. Metriche di costo — carica metrics.json per target se presente, aggrega costo/token/durata.
  7. Grafici — genera i grafici PNG in evaluation_outputs/plots/.
  8. Riepilogo — scrive evaluation_outputs/summary.md.

ethibench analyze

Esegue gli strumenti di analisi sugli output di valutazione esistenti.

ethibench analyze <experiment_dir> --dataset <dataset.yaml> [options]

# Batch: analyze all experiments and produce aggregated results
ethibench analyze --parent-dir final_experiments/ --dataset <dataset.yaml>

Argomenti:

  • experiment_dir — (opzionale) Directory dell'esperimento da analizzare. Può essere omessa quando si usa --parent-dir.

Opzioni:

  • --dataset, -d — (obbligatorio) Percorso del file YAML del dataset.
  • --gt-dir, -g — Directory del ground truth. Il valore predefinito è gt/ accanto al file YAML del dataset.
  • --output-dir, -o — Directory degli output di valutazione. Il valore predefinito è evaluation_outputs/ all'interno della directory dell'esperimento.
  • --parent-dir, -p — Cartella padre contenente più directory di esperimento da analizzare in batch. Produce l'analisi per esperimento più i risultati aggregati.

Output per esperimento (evaluation_outputs/analysis/):

  • duplicates.json — finding abbinati nel raw matching ma rimossi dall'ottimizzazione bipartita.
  • unmatched.json — finding senza corrispondenza ground truth (falsi positivi).
  • statistics.json — statistiche di copertura GT, distribuzione dei finding per GT.

Output aggregati (solo con --parent-dir, in <parent-dir>/aggregated_analysis/):

  • all_duplicates.jsonl — tutti i finding duplicati in tutti gli esperimenti (JSONL, oggetti finding completi con campo experiment).
  • all_false_positives.jsonl — tutti i finding non abbinati/falsi positivi in tutti gli esperimenti (formato JSONL).
  • gt_statistics_avg.json — copertura GT media per subset, più riepilogo della copertura per esperimento.

ethibench compare

Confronta i risultati della valutazione tra più esperimenti, producendo grafici affiancati e un report di riepilogo. Ogni esperimento deve avere già gli output di valutazione (esegui prima ethibench evaluate). Le etichette sono sempre i nomi delle directory.

# Explicit experiment directories
ethibench compare exp-gpt4o/ exp-claude/ --output-dir comparison/

# Auto-discover all experiments under a parent folder
ethibench compare --parent-dir all-experiments/ --output-dir comparison/

# Mix: explicit dirs + auto-discovery
ethibench compare exp-extra/ --parent-dir all-experiments/ --output-dir comparison/

Argomenti:

  • experiment_dirs — (opzionale) Una o più directory di esperimento da includere esplicitamente.

Opzioni:

  • --output-dir, -o — (obbligatorio) Directory di output per i risultati del confronto.
  • --parent-dir, -p — Cartella padre da cui individuare automaticamente gli esperimenti. Viene inclusa qualsiasi sottodirectory immediata contenente una cartella evaluation_outputs/, in ordine alfabetico. Può essere combinata con experiment_dirs espliciti.

Output (in --output-dir):

  • comparison.json — dati grezzi di confronto per tutti gli esperimenti.
  • plots/ — grafici PNG affiancati.
  • comparison.md — riepilogo in Markdown.
  • pairwise_comparison.md — confronto statistico A/B a coppie (top 4 esperimenti per F1).
  • pairwise_comparison.tex — versione LaTeX della tabella a coppie.
  • cumulative-analysis/ — (se esistono dati cumulativi) analisi delta che confronta la F1 media con quella cumulativa, più i grafici di confronto cumulativi.

Formati dei File

Findings (findings.jsonl)

Scarica lo strumento