Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Argus — Gestuftes statisches Taint-Analyse-Framework für GitHub Actions Workflows. Erkennt Code-Injection-Schwachstellen mittels Taint-Tracking und einem Impact-Klassifizierer und erstellt SARIF-Berichte für CI/CD-Sicherheit. | Kitploit
Tools/GitHubGitHub/purs3lab/argus
Statische AnalyseSchwachstellenanalyseCode-AnalyseDevSecOpsLieferkettensicherheitPapers & ForschungLernen & Bildung
GitHubpurs3lab/argus

Argus

Gestuftes statisches Taint-Analyse-Framework für GitHub Actions Workflows. Erkennt Code-Injection-Schwachstellen mittels Taint-Tracking und einem Impact-Klassifizierer und erstellt SARIF-Berichte für CI/CD-Sicherheit.

Repository anzeigen
5415vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Argus

Dieses Repository enthält den Code für unser USENIX Security '23 Paper "ARGUS: A Framework for Staged Static Taint Analysis of GitHub Workflows and Actions". Argus ist ein umfassendes Sicherheitsanalysetool, das speziell für GitHub Actions entwickelt wurde. Mit dem Ziel, die Sicherheit von CI/CD-Workflows zu verbessern, nutzt Argus Taint-Tracking-Techniken und einen Impact Classifier, um potenzielle Schwachstellen in GitHub Action Workflows zu erkennen.

Besuchen Sie unsere Website - secureci.org für weitere Informationen.

Funktionen

  • Taint-Tracking: Argus verwendet hochentwickelte Algorithmen, um den Fluss potenziell nicht vertrauenswürdiger Daten von bestimmten Quellen zu sicherheitskritischen Senken in GitHub Actions Workflows zu verfolgen. Dies ermöglicht die Identifizierung von Schwachstellen, die zu Code-Injection-Angriffen führen könnten.

  • Impact Classifier: Argus klassifiziert identifizierte Schwachstellen in die Schweregrade Hoch, Mittel und Niedrig, um ein klareres Verständnis der potenziellen Auswirkungen jeder identifizierten Schwachstelle zu ermöglichen. Dies ist entscheidend für die Priorisierung von Abhilfemaßnahmen.

Verwendung

Dieses Python-Skript bietet eine Befehlszeilenschnittstelle für die Interaktion mit GitHub-Repositories und GitHub-Aktionen.

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]

Parameter:

  • --mode: Der Betriebsmodus. Wählen Sie entweder 'repo' oder 'action'. Dieser Parameter ist erforderlich.
  • --url: Die GitHub-URL. Verwenden Sie USERNAME:TOKEN@URL für private Repos. Dieser Parameter ist erforderlich.
  • --output-folder: Der Ausgabeordner. Der Standardwert ist '/tmp'. Dieser Parameter ist optional.
  • --config: Die Konfigurationsdatei. Dieser Parameter ist optional.
  • --verbose: Ausführlicher Modus. Wenn diese Option angegeben wird, wird die Protokollierungsebene auf DEBUG gesetzt. Andernfalls wird sie auf INFO gesetzt. Dieser Parameter ist optional.
  • --branch: Der Branchname. Sie müssen genau eine der Optionen angeben: --branch, --commit, --tag. Dieser Parameter ist optional.
  • --commit: Der Commit-Hash. Sie müssen genau eine der Optionen angeben: --branch, , . Dieser Parameter ist optional.

Beispiel:

Um dieses Skript zur Interaktion mit einem GitHub-Repo zu verwenden, könnten Sie einen Befehl wie den folgenden ausführen:

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

Dies würde das Skript im Repo-Modus auf dem Master-Branch des angegebenen Repositories ausführen.

So verwenden Sie es

Argus kann in einem Docker-Container ausgeführt werden. Gehen Sie dazu wie folgt vor:

  • Installieren Sie Docker und Docker-Compose
    • apt-get -y install docker.io docker-compose
  • Klonen Sie den Release-Branch dieses Repos
    • git clone <>
  • Erstellen Sie den Docker-Container
    • docker-compose build
  • Jetzt können Sie Argus ausführen. Beispielaufruf:
    • docker-compose run argus --mode {mode} --url {url to target repo}
  • Die Ergebnisse sind im Ordner results verfügbar

Anzeigen von SARIF-Ergebnissen

Sie können SARIF-Ergebnisse entweder über einen Online-Viewer oder mit einer Visual Studio Code (VSCode)-Erweiterung anzeigen.

  1. Online-Viewer: Der SARIF Web Viewer ist ein Online-Tool, mit dem Sie SARIF-Dateien visualisieren können. Sie können Ihre SARIF-Datei (argus_report.sarif) direkt auf die Website hochladen, um die Ergebnisse anzuzeigen.

  2. VSCode-Erweiterung: Wenn Sie lieber VSCode verwenden möchten, können Sie die SARIF Viewer Erweiterung installieren. Nach der Installation der Erweiterung können Sie Ihre SARIF-Datei (argus_report.sarif) in VSCode öffnen. Die Ergebnisse werden im SARIF-Explorer-Bereich angezeigt, der eine detaillierte und navigierbare Ansicht der Ergebnisse bietet.

Denken Sie daran, die SARIF-Datei mit Vorsicht zu behandeln, insbesondere wenn sie sensible Informationen aus Ihrer Codebasis enthält.

Fehlerbehebung

Falls ein Problem mit der erforderlichen GitHub-Autorisierung für die Ausführung auftritt, können Sie username:TOKEN in der Umgebungsvariable GITHUB_CREDS angeben. Dies wird für alle Anfragen an GitHub verwendet. Beachten Sie, dass wir diese Informationen nirgendwo speichern und auch nichts im GitHub-Konto erstellen – wir verwenden sie nur zum Klonen der Repositories.

Beiträge

Argus ist ein Open-Source-Projekt, und wir begrüßen Beiträge aus der Community. Ob es sich um das Melden eines Fehlers, das Vorschlagen einer Funktion oder das Schreiben von Code handelt – Ihre Beiträge werden immer geschätzt!

Zitieren von Argus

Wenn Sie Argus in Ihrer Forschung verwenden, zitieren Sie bitte unser Paper:

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},
  }

Lizenz

Argus ist unter der GPL-Lizenz lizenziert.

Tool herunterladen
--commit
--tag
  • --tag: Der Tag. Sie müssen genau eine der Optionen angeben: --branch, --commit, --tag. Dieser Parameter ist optional.
  • --action-path: Der (relative) Pfad zur Aktion. Sie können --action-path nicht im Repo-Modus angeben. Dieser Parameter ist optional.
  • --workflow-path: Der (relative) Pfad zum Workflow. Sie können --workflow-path nicht im Aktionsmodus angeben. Dieser Parameter ist optional.