
DepAlert ist ein Open-Source-Sicherheitsgate für Ihre CI/CD-Pipeline. Es analysiert SBOMs mit Malware-Intelligence-Daten und sagt Ihnen schnell, ob Ihr Build bekannte schädliche Pakete enthält.
Dieses Tool ist Teil der CTWall-Plattform. Siehe: CTWall
DepAlert ist ein Open-Source-Sicherheitsgate für Ihre CI/CD-Pipeline. Es analysiert SBOMs mit Malware-Intelligence-Daten und teilt Ihnen schnell mit, ob Ihr Build bekannte bösartige Pakete enthält.
DepAlert löst zentrale Probleme der Software-Lieferkette, die sich direkt auf Release-Geschwindigkeit, Risiko und Kosten auswirken:
MALWARE, CLEAN, UNKNOWN) liefert.fail-on) und einem prüfbaren Ausnahmeworkflow.Siehe 00_quick_start.md für Schritt-für-Schritt-Anleitungen.
depalert ist ein CI/CD-CLI, das:
POST /api/v1/ingest)GET /api/v1/tests/{testId}/revisions/{revisionId}/depalert-verdict)Das Tool ist projektbezogen. Sie können das Zielprojekt auswählen durch:
project-id (UUID), oderproject-name (über API aufgelöst).Falls beide angegeben sind, hat project-id Vorrang.
DepAlert gibt ein Revisionsergebnis zurück:
CLEAN – kein Malware-Fund erkannt – Exit 0MALWARE – mindestens ein Malware-Fund in der Revision erkannt – Exit 1UNKNOWN – Analyse noch nicht abgeschlossen – Exit 2 (oder Exit 0 mit fail-on=NONE)CLI-Ausgabeformat:
VERDICT: <MALWARE|CLEAN|UNKNOWN> (malware=<n> clean=<n> unknown=<n> total=<n>, elapsed=<t>)
Der JSON-Modus ist über --format json (oder CTWALL_OUTPUT=json) verfügbar.
Beispiel-JSON-Ausgabe:
{
"version": "1.1.0",
"status": "success",
"exitCode": 0,
"projectId": "28e241e3-b924-4e1a-abc2-d592e8dd811c",
"testId": "13271a70-cf47-4f3b-9e33-cb41ed0c793e",
"revisionId": "c4d1f1a4-c018-488e-9dd0-6cfdbed83bf3",
"verdict": "CLEAN",
"malwareComponents": 0,
"cleanComponents": 12,
"unknownComponents": 0,
"totalComponents": 12,
"elapsedMs": 1842,
"timedOut": false,
"failOn": "MALWARE",
"message": "depalert completed"
}
VERDICT: <MALWARE|CLEAN|UNKNOWN> (malware=<n> clean=<n> unknown=<n> total=<n>, elapsed=<t>)
0 = bestanden1 = Policy-Fehler oder Laufzeitfehler2 = endgültiges Urteil ist UNKNOWN und fail-on ist nicht NONE| Flag | ENV | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
--url | CTWALL_API_URL | ja | http://localhost:8080 | CTWall-API-URL |
--key | CTWALL_API_KEY | nein | leer | API-Token (Authorization: Bearer ...) |
--project-id | CTWALL_PROJECT_ID | bedingt | keine | Zielprojekt-UUID (hat Vorrang vor project-name) |
--project-name | CTWALL_PROJECT_NAME | bedingt | keine | Zielprojektname (wird über API in UUID aufgelöst) |
--file | CTWALL_SBOM_FILE (oder legacy SBOM_FILE) | ja | keine | SBOM-Dateipfad |
--product | CTWALL_PRODUCT | ja | keine | Produktname |
--scope | CTWALL_SCOPE | ja | keine | Bereichsname (Scope) |
--test | CTWALL_TEST | ja | keine | Testname |
--fail-on | CTWALL_FAIL_ON | nein | MALWARE | CSV-Urteilsliste: MALWARE,CLEAN,UNKNOWN oder NONE |
--ignore-file | CTWALL_IGNORE_FILE | nein | depalert.ignore | Optionale YAML-Ausnahmedatei für lokale Urteilsüberschreibung und Triaging-Updates |
--format | CTWALL_OUTPUT | nein | text | Ausgabeformat: text oder json |
project-id oder project-name ist erforderlich.project-name wird mittels GET /api/v1/projects aufgelöst.https erforderlich.--allow-insecure, oderCTWALL_ALLOW_INSECURE=true.--skip-tls-verify, oderCTWALL_SKIP_TLS_VERIFY=true.Siehe
DepAlert ist lizenziert unter der BSD 3-Clause-Lizenz.
--timeout-seconds | CTWALL_WAIT_TIMEOUT_SECONDS | nein | 180 | Synchrones Warte-Timeout in Sekunden |
--allow-insecure | CTWALL_ALLOW_INSECURE | nein | false | HTTP für nicht-lokale Hosts erlauben |
--skip-tls-verify | CTWALL_SKIP_TLS_VERIFY | nein | false | TLS-Zertifikatsprüfung für HTTPS überspringen (unsicher, nur zu Testzwecken) |