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
Argus — Framework di analisi statica a fasi per flussi di lavoro GitHub Actions. Rileva vulnerabilità di code injection tramite taint-tracking e un classificatore di impatto, generando report SARIF per la sicurezza CI/CD. | Kitploit
Strumenti/GitHubGitHub/purs3lab/argus
Analisi StaticaAnalisi delle VulnerabilitàAnalisi del CodiceDevSecOpsSicurezza della Supply ChainPaper e RicercaApprendimento e Formazione
GitHubpurs3lab/argus

Argus

Framework di analisi statica a fasi per flussi di lavoro GitHub Actions. Rileva vulnerabilità di code injection tramite taint-tracking e un classificatore di impatto, generando report SARIF per la sicurezza CI/CD.

Vedi Repository
54152 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

Argus

Questo repository contiene il codice per il nostro articolo USENIX Security '23 "ARGUS: A Framework for Staged Static Taint Analysis of GitHub Workflows and Actions". Argus è uno strumento completo di analisi della sicurezza progettato specificamente per GitHub Actions. Costruito con l'obiettivo di migliorare la sicurezza dei flussi di lavoro CI/CD, Argus utilizza tecniche di tracciamento del taint e un classificatore di impatto per rilevare potenziali vulnerabilità nei flussi di lavoro di GitHub Action.

Visita il nostro sito web - secureci.org per maggiori informazioni.

Funzionalità

  • Taint-Tracking: Argus utilizza algoritmi sofisticati per tracciare il flusso di dati potenzialmente non fidati da fonti specifiche a sink critici per la sicurezza all'interno dei flussi di lavoro di GitHub Actions. Ciò consente l'identificazione di vulnerabilità che potrebbero portare ad attacchi di code injection.

  • Impact Classifier: Argus classifica le vulnerabilità identificate in classi di gravità Alta, Media e Bassa, fornendo una comprensione più chiara dell'impatto potenziale di ciascuna vulnerabilità identificata. Questo è cruciale per dare priorità agli sforzi di mitigazione.

Utilizzo

Questo script Python fornisce un'interfaccia a riga di comando per interagire con repository e azioni GitHub.

root@kitploit:~
python argus.py --mode [mode] --url [url] [--output-folder path_to_output] [--config path_to_config] [--verbose] [--branch branch_name] [--commit commit_hash] [--tag tag_name] [--action-path path_to_action] [--workflow-path path_to_workflow]

Parametri:

  • --mode: La modalità di funzionamento. Scegliere 'repo' o 'action'. Questo parametro è obbligatorio.
  • --url: L'URL di GitHub. Usare USERNAME:TOKEN@URL per repository privati. Questo parametro è obbligatorio.
  • --output-folder: La cartella di output. Il valore predefinito è '/tmp'. Questo parametro è facoltativo.
  • --config: Il file di configurazione. Questo parametro è facoltativo.
  • --verbose: Modalità verbosa. Se questa opzione viene fornita, il livello di logging è impostato su DEBUG. Altrimenti, è impostato su INFO. Questo parametro è facoltativo.
  • --branch: Il nome del branch. È necessario fornire esattamente uno tra --branch, --commit, --tag. Questo parametro è facoltativo.
  • --commit: L'hash del commit. È necessario fornire esattamente uno tra --branch, , . Questo parametro è facoltativo.

Esempio:

Per usare questo script per interagire con un repository GitHub, puoi eseguire un comando come il seguente:

root@kitploit:~
python argus.py --mode repo --url https://github.com/username/repo.git --branch master

Questo eseguirebbe lo script in modalità repo sul branch master del repository specificato.

Come utilizzarlo

Argus può essere eseguito all'interno di un contenitore Docker. Per farlo, segui i passaggi:

  • Installa docker e docker-compose
    • apt-get -y install docker.io docker-compose
  • Clona il branch release di questo repository
    • git clone <>
  • Costruisci il contenitore Docker
    • docker-compose build
  • Ora puoi eseguire argus. Esempio di esecuzione:
    • docker-compose run argus --mode {mode} --url {url to target repo}
  • I risultati saranno disponibili nella cartella results

Visualizzazione dei risultati SARIF

Puoi visualizzare i risultati SARIF tramite un visualizzatore online o con un'estensione di Visual Studio Code (VSCode).

  1. Visualizzatore Online: Il SARIF Web Viewer è uno strumento online che ti permette di visualizzare i file SARIF. Puoi caricare il tuo file SARIF (argus_report.sarif) direttamente sul sito web per visualizzare i risultati.

  2. Estensione VSCode: Se preferisci usare VSCode, puoi installare l'estensione SARIF Viewer. Dopo aver installato l'estensione, puoi aprire il tuo file SARIF (argus_report.sarif) in VSCode. I risultati appariranno nel pannello SARIF Explorer, che fornisce una visione dettagliata e navigabile dei risultati.

Ricorda di gestire il file SARIF con cura, specialmente se contiene informazioni sensibili dal tuo codebase.

Risoluzione dei problemi

Se c'è un problema riguardante la necessità di autorizzazione Github per l'esecuzione, puoi fornire username:TOKEN nella variabile d'ambiente GITHUB_CREDS. Questo verrà utilizzato per tutte le richieste fatte a Github. Nota, non memorizziamo queste informazioni da nessuna parte, né creiamo nulla nell'account Github - lo usiamo solo per clonare i repository.

Contributi

Argus è un progetto open-source e accogliamo con favore i contributi della comunità. Che si tratti di segnalare un bug, suggerire una funzionalità o scrivere codice, i tuoi contributi sono sempre apprezzati!

Citare Argus

Se usi Argus nella tua ricerca, cita il nostro articolo:

root@kitploit:~
  @inproceedings{muralee2023Argus,
    title={ARGUS: A Framework for Staged Static Taint Analysis of GitHub Workflows and Actions},
    author={S. Muralee, I. Koishybayev, A. Nahapetyan, G. Tystahl, B. Reaves, A. Bianchi, W. Enck, 
      A. Kapravelos, A. Machiry},
    booktitle={32st USENIX Security Symposium (USENIX Security 23)},
    year={2023},
  }

Licenza

Argus è concesso in licenza GPL.

Scarica lo strumento
--commit
--tag
  • --tag: Il tag. È necessario fornire esattamente uno tra --branch, --commit, --tag. Questo parametro è facoltativo.
  • --action-path: Il percorso (relativo) all'azione. Non è possibile fornire --action-path nella modalità repo. Questo parametro è facoltativo.
  • --workflow-path: Il percorso (relativo) al workflow. Non è possibile fornire --workflow-path nella modalità action. Questo parametro è facoltativo.