Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
guarddog — 🐍 🔍 GuardDog ist ein CLI-Tool zur Identifizierung bösartiger PyPI- und npm-Pakete | Kitploit
Tools/GitHubGitHub/datadog/guarddog
Statische AnalyseSchwachstellenscannerDynamische Analyse (Sandboxing)Code-AnalyseMalware-AnalyseDevSecOpsSecret-ErkennungBedrohungsanalyseLieferkettensicherheit
GitHubdatadog/guarddog

guarddog

🐍 🔍 GuardDog ist ein CLI-Tool zur Identifizierung bösartiger PyPI- und npm-Pakete

1.2k11245vor 1 MonatVon Kitploit geprüft
Repository anzeigenWebseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

GuardDog

Test OpenSSF Scorecard OpenSSF Best Practices

GuardDog

GuardDog ist ein CLI-Tool, das bösartige PyPI- und npm-Pakete, Go-Module, Rust-Crates, RubyGems, GitHub Actions oder VSCode-Erweiterungen identifiziert. Es führt statische Analysen des Paketquellcodes (mittels YARA-Regeln) durch und analysiert Paketmetadaten, um Lieferkettenangriffe zu erkennen.

Was GuardDog besonders macht: Anstatt nur verdächtige Muster aufzulisten, korreliert GuardDog die Funde, um tatsächliche Risiken auf Basis von Angriffsketten zu identifizieren. Ein Paket benötigt sowohl die Fähigkeit (Capability), eine Aktion auszuführen (z. B. Netzwerkzugriff), als auch einen Bedrohungsindikator (z. B. verdächtige Domain) in derselben Datei, um als hohes Risiko eingestuft zu werden.

Es lädt Code herunter und scannt ihn von:

  • NPM: Pakete, die auf npmjs.org gehostet werden
  • PyPI: Quelldateien (tar.gz) von Paketen, die auf PyPI.org gehostet werden
  • Go: GoLang-Quelldateien von Repositorys, die auf GitHub.com gehostet werden
  • Rust: Crates, die auf crates.io gehostet werden
  • RubyGems: Gem-Pakete, die auf rubygems.org gehostet werden
  • GitHub Actions: JavaScript-Quelldateien von Repositorys, die auf GitHub.com gehostet werden
  • VSCode-Erweiterungen: Erweiterungen (.vsix), die auf marketplace.visualstudio.com gehostet werden

GuardDog demo usage

So funktioniert GuardDog

GuardDog verwendet ein risikobasiertes Erkennungsmodell, das Code-Fähigkeiten mit Bedrohungsindikatoren korreliert:

  1. Erkennung: Regeln identifizieren entweder Fähigkeiten (was Code kann) oder Bedrohungen (verdächtige Indikatoren)
  2. Korrelation: Fähigkeiten und Bedrohungen, die in derselben Datei gefunden werden, bilden Risiken (dateiübergreifende Treffer bilden ebenfalls Risiken, jedoch mit herabgestufter Schwere)
  3. Bewertung: Risiken werden anhand der Vollständigkeit und Raffinesse der Angriffskette bewertet (0–10)
  4. Berichterstattung: Pakete erhalten eine Schweregrad-Einstufung (niedrig/mittel/hoch) mit detaillierter Risikoaufschlüsselung

Warum dieser Ansatz?

Traditionelle SAST-Tools kennzeichnen jedes verdächtige Muster unabhängig voneinander, was zu Alarmmüdigkeit führt. GuardDog versteht, dass:

  • Fähigkeiten allein nicht bösartig sind (Netzwerkbibliotheken sollten HTTP-Anfragen stellen)
  • Bedrohungsindikatoren allein Fehlalarme sein können (Test-Fixtures, Dokumentation)
  • Fähigkeit + Bedrohung zusammen ein tatsächliches Risiko anzeigen (Code, der etwas Bösartiges kann und wird)

Risikobewertung

Pakete erhalten eine Punktzahl von 0–10, basierend auf vier Faktoren:

FaktorGewichtungBeschreibung
Schweregrad30%Höchster Schweregrad-Fund (niedrig/mittel/hoch)
Angriffskette20%Vorhandensein vollständiger Angriffsstufen (früh → mittel/spät)
Spezifität30%Wie spezifisch Muster für Malware im Vergleich zu legitimem Code sind
Raffinesse20%Fortschrittsgrad der Technik

Bewertungsetiketten:

  • 0: Keine Risiken erkannt
  • 0.1–3: Geringes Risiko (einstufige Bedrohungen, geringe Spezifität)
  • 3.1–7.5: Mittleres Risiko (partielle Angriffskette, Metadatenindikatoren oder einstufige Code-Funde)
  • 7.6–10: Hohes Risiko (mehrstufige Angriffskette mit Quellcode-Beweisen — nahezu sichere Kompromittierung)

Angriffsketten-Stufen (basierend auf MITRE ATT&CK):

  • Früh: Erster Zugriff, Ausführungsfähigkeiten
  • Mittel: Persistenz, Umgehung der Verteidigung, Zugriff auf Anmeldeinformationen
  • Spät: Command & Control, Exfiltration, Auswirkung

Schauen Sie sich die neue Datadog Agent Integration und das Cloud SIEM Content Pack für GuardDog an.


Erste Schritte

Installation

Der einfachste Weg, GuardDog auszuführen, ist die Verwendung von uvx:

uvx guarddog pypi scan requests

Für die lokale Installation:

uv tool install guarddog
# oder
pip install guarddog

Oder verwenden Sie das Docker-Image:

docker pull ghcr.io/datadog/guarddog
alias guarddog='docker run --rm ghcr.io/datadog/guarddog'

Hinweis: Unter Windows ist Docker die einzige unterstützte Installationsmethode.

Beispielverwendung

# Die neueste Version des Pakets 'requests' scannen
guarddog pypi scan requests

# Eine bestimmte Version des Pakets 'requests' scannen
guarddog pypi scan requests --version 2.28.1

# Das Paket 'requests' mit 2 bestimmten Heuristiken scannen
guarddog pypi scan requests --rules exec-base64 --rules code-execution

# Das Paket 'requests' mit allen Regeln außer einer scannen
guarddog pypi scan requests --exclude-rules exec-base64

# Ein lokales Paketarchiv scannen
guarddog pypi scan /tmp/triage.tar.gz

# Ein lokales Paketverzeichnis scannen
guarddog pypi scan /tmp/triage/

# Ein in S3 gespeichertes Paket scannen (einen Ordner/Präfix oder ein einzelnes Archivobjekt)
guarddog pypi scan s3://my-bucket/path/to/package/
guarddog pypi scan s3://my-bucket/path/to/package.tar.gz

# Jedes Paket scannen, das in einer requirements.txt-Datei eines lokalen Ordners referenziert wird
guarddog pypi verify workspace/guarddog/requirements.txt

# Jedes Paket scannen, das in einer requirements.txt-Datei referenziert wird, und eine SARIF-Datei ausgeben – funktioniert nur für verify
guarddog pypi verify --output-format=sarif workspace/guarddog/requirements.txt

# JSON auf der Standardausgabe ausgeben – funktioniert für jeden Befehl
guarddog pypi scan requests --output-format=json

# Alle Befehle funktionieren auch für npm, go, crates, rubygems
guarddog npm scan express

guarddog go scan github.com/DataDog/dd-trace-go

guarddog go verify /tmp/repo/go.mod

# Rust-Crates scannen
guarddog crates scan serde

guarddog crates verify /tmp/repo/Cargo.lock

# RubyGems-Pakete scannen
guarddog rubygems scan rails

guarddog rubygems verify /tmp/repo/Gemfile.lock

# Zusätzlich kann das Scannen von GitHub Actions unterstützt werden, die in JavaScript implementiert sind
guarddog github_action scan DataDog/synthetics-ci-github-action

guarddog github_action verify /tmp/repo/.github/workflows/main.yml

# VSCode-Erweiterungen aus dem Marketplace scannen
guarddog extension scan ms-python.python

# Eine bestimmte Version einer VSCode-Erweiterung scannen
guarddog extension scan ms-python.python --version 2023.20.0

# Ein lokales VSCode-Erweiterungsverzeichnis oder ein VSIX-Archiv scannen
guarddog extension scan /tmp/my-extension/

# Im Debug-Modus ausführen
guarddog --log-level debug npm scan express

Sandbox-Scans

Tool herunterladen