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
cage — Harness di riproduzione, patch e strumenti di analisi per l'audit di un benchmark di cyber-difesa basato su apprendimento automatico: cattura le tracce degli agenti, esegue ablazioni red-agent e ricalcola ogni figura del paper a partire dai dati rilasciati. | Kitploit
Strumenti/GitHubGitHub/jrice-ai/cage
Strumenti DifensiviScripting e AutomazioneMachine LearningPaper e RicercaApprendimento e FormazioneRed TeamingRisorse CurateSicurezza dell'IAAttacco Avversario
GitHubjrice-ai/cage

cage

Harness di riproduzione, patch e strumenti di analisi per l'audit di un benchmark di cyber-difesa basato su apprendimento automatico: cattura le tracce degli agenti, esegue ablazioni red-agent e ricalcola ogni figura del paper a partire dai dati rilasciati.

2 giorni 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 →
Vedi Repository
Condividi

cage, lo strumento dietro "What a CAGE 4 Score Measures"

Questo repository è l'harness, le patch, gli strumenti di analisi e il registro alla base del paper What a CAGE 4 Score Measures: An Audit of a Learned Cyber-Defense Benchmark, Its Reference Defenders, and the Tables Built on Them (James M. Rice e consulenti, Rochester Institute of Technology, 2026). L'identificatore arXiv viene aggiunto qui nel primo commit successivo alla pubblicazione. Il tag arxiv-v1 è lo stato da cui è stato calcolato ogni numero del paper pubblicato.

Le tracce e i checkpoint da cui sono calcolati i numeri del paper sono depositati separatamente, all'indirizzo https://doi.org/10.5281/zenodo.23681828, in quattro archivi.

ArchivioContenutoEstrarre insha256
traces_arms_arxiv-v1.tar.zsti record dei passi di ogni braccio di valutazione dell'audit principale, i 123 elencati nell'Appendice B del paper e i bracci diagnostici indicati in ARMS.md, una directory per braccio, un file JSON-lines per episodiodata/traces/db2c3d17684180e5d4ca7fb9a7f1f739b5414e62da0e8c4b9b792cd31568f456
traces_pilot_arxiv-v1.tar.zsti record dei passi del pilot busy-check e della sua continuazione (bracci denominati kbf_*)data/traces/ece72ca24d17bf688144b2d0276ae9f0209aa8a50f95ecdd0aab9a6f8a9c0fc0
checkpoints_pilot_arxiv-v1.tar.zsti checkpoint conservati e lo stato di ripresa delle esecuzioni di addestramento del pilot e della continuazionerepos/cage-4-submission/checkpoints/dc2c8219e12a0c2931263be0003c8858039931b04b019e1bfa60c0ba6856c07e
checkpoints_continuation_arxiv-v1.tar.zsti checkpoint delle esecuzioni di continuazione Wrecker della Sezione 5repos/cage-4-submission/checkpoints/in SHA256SUMS
run_logs_arxiv-v1.tar.zsti log di addestramento e valutazione delle esecuzioni del pilot e della continuazione da entrambe le macchine, con pilot_runs.log, che registra per ogni esecuzione host, numero di thread, numero di worker, digest del codice e immaginedata/in SHA256SUMS

SHA256SUMS nel deposito li elenca tutti e quattro. Verificare un archivio con sha256sum -c SHA256SUMS prima di estrarlo.

Cosa si trova dove

PercorsoDi cosa si tratta
bin/runesegue un comando in una delle due immagini con questa directory montata su /work, passando gli switch KEEP_* e HMARL_*. Si aspetta il clone in ~/cage.
build/i due Dockerfile (Dockerfile.keep, Dockerfile.marl) e le patch applicate ai repository upstream prima della costruzione delle immagini
scripts/capture.pyesegue la policy rilasciata di KEEP su seed di ambiente appaiati e scrive il record dei passi con le osservazioni grezze degli agenti e lo stato reale del simulatore
scripts/capture_hmarl.pylo stesso per H-MARL Expert, tramite il percorso di valutazione degli autori (--compat) o tramite l'harness di supervisione
scripts/oracle.py, scripts/oracle_rules.pyl'harness di supervisione su KEEP, le regole da O1 a O15 e i difensori delle regole, con gli switch di consegna (--wait-busy, --queue, --min-gap)
red_agents/gli avversari che il paper esegue oltre al FiniteStateRedAgent standard. Wrecker e le sue scale Pn e Qn sono del paper stesso (Sezione 2), e bin/run copia ogni file presente qui nella directory SimpleAgents dell'immagine all'avvio
tools_*.pygli strumenti di analisi. tools_paired.py (differenza appaiata, intervallo bootstrap, vittorie, test del segno), tools_charge.py e tools_busy_charge.py (la carica Restore e il resto), tools_dropped.py (eseguito contro interventi asseriti), tools_cont.py, tools_ceiling.py, tools_fraction_ci.py, tools_latch_sum.py, tools_drawspread.py, tools_lagcorr.py, tools_busy_restores.py, tools_pilot_decisions.py e gli altri. Ognuno stampa ciò che calcola da una directory di trace sotto data/traces/
tools_patch_*.pylo stack di patch sul codice rilasciato. tools_patch_keep_busy.py, tools_patch_keep_seedmode.py e tools_patch_keep_readall.py, in quest'ordine, forniscono al trainer di KEEP gli switch della Sezione 6. tools_patch_hmarl_busy.py fornisce al wrapper di H-MARL lo switch HMARL_BUSY=none. tools_patch_oracle_truth.py aggiunge --log-truth all'harness. Ognuno è idempotente e rifiuta di essere eseguito su codice che non riconosce
run_keep_pilot.sh, eval_keep_pilot.sh, pilot_status.sh, test_keep_*.shil pilota e la continuazione della Sezione 6, la loro valutazione e i loro test
run_busy_reds.shla policy rilasciata di KEEP con il suo controllo busy attivo e disattivato sull'avversario standard e su altri nove (Sezione 6.1)
queue_*.sh, read_*.sh, run_*.sh, rerun_F.sh, gate_O15.sh, pilot_O15.sh, svy_O15.shi lanciatori e i lettori della campagna. Ogni braccio del paper è stato lanciato da uno di questi, quindi costituiscono il record dell'invocazione esatta di ciascun braccio
ARMS.mdogni braccio, per nome, con il suo comando, la sua media e il file che la contiene
RESULTS.mdil registro datato del lavoro, dal più recente
papers/la copia dell'artefatto del livello di analisi del paper, senza il testo del paper. papers/paper1/ledger.csv è il ledger, una riga per ogni numero stampato nel paper, con il comando che lo ricalcola. papers/paper1/fig/ contiene gli script delle figure e delle tabelle. papers/paper1/check_identities.py verifica le identità aritmetiche che ogni build deve soddisfare. Gli script recompute_*.py e means.py in papers/ sono i calcoli di criterio, varianza e quota che il ledger richiama

Tutto ciò che si trova sotto data/ e repos/ è ignorato da git. Le trace vanno sotto data/traces/, i repository upstream e i checkpoint sotto repos/.

Tre livelli di riproduzione

L'Appendice A del paper nomina tre livelli. Richiedono quantità crescenti dell'ambiente.

Livello 1, ogni numero stampato dalle trace rilasciate, senza container

Clona, estrai i due archivi di trace in data/traces/ ed esegui il ricalcolo dalla radice del repository. Esegue ogni comando distinto del ledger da questa directory e verifica che il valore memorizzato di ogni riga compaia nell'output di quel comando.

git clone https://github.com/jrice-ai/cage ~/cage && cd ~/cage && git checkout arxiv-v1
mkdir -p data/traces && tar -I zstd -xf traces_arms_arxiv-v1.tar.zst -C data/traces && tar -I zstd -xf traces_pilot_arxiv-v1.tar.zst -C data/traces
./recompute.sh
python3 papers/paper1/check_identities.py papers/paper1/ledger.csv

I comandi del ledger nominano il livello di analisi tramite il suo percorso sulla macchina degli autori, ~/papers, quindi recompute.sh esegue il controllo con HOME puntato a una directory temporanea che collega papers/ lì. Nulla viene scritto al di fuori del repository. Su un laptop il recompute completo richiede decine di minuti, la maggior parte dei quali per i bracci pilota. Dieci righe, gli iperparametri letti dai checkpoint rilasciati (chiavi keep* e trident*, che vengono eseguite tramite bin/run), richiedono l'immagine di livello 2 e vengono segnalate come non trovate senza di essa. check_identities.py riporta le identità aritmetiche (il costo è uguale alla somma di charge e rest per ogni split, gli intervalli a quattro estrazioni e quattro seed rispetto alle loro medie e deviazioni standard, il rest nullo della coppia H-MARL con maschera disattivata). Gli script per figure e tabelle sotto papers/paper1/fig/ rigenerano le figure e le tabelle del paper dalle stesse tracce con CAGE=~/cage python3 papers/paper1/fig/fig_curves.py e analogamente per fig_drop.py, fig_noise.py, make_tables.py, make_busyreds.py e make_arms.py.

Livello 2, una nuova valutazione di qualsiasi braccio

Questo richiede le due immagini, i repository upstream alle loro revisioni fissate e i checkpoint rilasciati.

Scarica lo strumento