
DepAlert est une passerelle de sécurité open-source pour votre pipeline CI/CD. Il analyse les SBOMs par rapport aux données de renseignement sur les logiciels malveillants et vous indique rapidement si votre build inclut des paquets malveillants connus.
Cet outil fait partie de la plateforme CTWall. Voir : CTWall
DepAlert est une passerelle de sécurité open source pour votre pipeline CI/CD. Il analyse les SBOM par rapport aux données de renseignement sur les logiciels malveillants et vous indique rapidement si votre build contient des packages malveillants connus.
DepAlert résout les problèmes fondamentaux de la chaîne d'approvisionnement logicielle qui affectent directement la vitesse de publication, les risques et les coûts :
MALWARE, CLEAN, UNKNOWN) à chaque exécution du pipeline.fail-on) et un flux d'exception vérifiable.Voir 00_quick_start.md pour des instructions pas à pas.
depalert est une CLI CI/CD qui :
POST /api/v1/ingest)GET /api/v1/tests/{testId}/revisions/{revisionId}/depalert-verdict)L'outil est limité à un projet. Vous pouvez sélectionner le projet cible par :
project-id (UUID), ouproject-name (résolu via l'API).Si les deux sont fournis, project-id a la priorité.
DepAlert renvoie un résultat de révision :
CLEAN - aucune détection de logiciel malveillant - sortie 0MALWARE - au moins une détection de logiciel malveillant a été trouvée dans la révision - sortie 1UNKNOWN - l'analyse n'est pas encore terminée - sortie 2 (ou sortie 0 avec fail-on=NONE)Format de sortie CLI :
VERDICT: <MALWARE|CLEAN|UNKNOWN> (malware=<n> clean=<n> unknown=<n> total=<n>, elapsed=<t>)
Le mode JSON est disponible via --format json (ou CTWALL_OUTPUT=json).
Exemple de sortie JSON :
{
"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 = succès1 = échec de la politique ou erreur d'exécution2 = le verdict final est UNKNOWN et fail-on n'est pas NONE| Option | ENV | Requis | Défaut | Description |
|---|---|---|---|---|
--url | CTWALL_API_URL | oui | http://localhost:8080 | URL de l'API CTWall |
--key | CTWALL_API_KEY | non | vide | Jeton API (Authorization: Bearer ...) |
--project-id | CTWALL_PROJECT_ID | conditionnel | aucun | UUID du projet cible (prioritaire sur project-name) |
--project-name | CTWALL_PROJECT_NAME | conditionnel | aucun | Nom du projet cible (résolu en UUID via l'API) |
--file | CTWALL_SBOM_FILE (ou SBOM_FILE legacy) | oui | aucun | Chemin du fichier SBOM |
--product | CTWALL_PRODUCT | oui | aucun | Nom du produit |
--scope | CTWALL_SCOPE | oui | aucun | Nom de la portée |
--test | CTWALL_TEST | oui | aucun | Nom du test |
--fail-on | CTWALL_FAIL_ON | non | MALWARE | Liste CSV de verdicts : MALWARE,CLEAN,UNKNOWN ou NONE |
--ignore-file | CTWALL_IGNORE_FILE | non | depalert.ignore | Fichier YAML optionnel d'exceptions pour le remplacement local du verdict et les mises à jour de triage |
--format | CTWALL_OUTPUT | non | text | Format de sortie : text ou |
project-id ou project-name est requis.project-name est résolu en utilisant GET /api/v1/projects.https est requis pour les hôtes non locaux.--allow-insecure, ouCTWALL_ALLOW_INSECURE=true.--skip-tls-verify, ouCTWALL_SKIP_TLS_VERIFY=true.Veuillez consulter
DepAlert est sous licence BSD 3-Clause License
json--timeout-seconds | CTWALL_WAIT_TIMEOUT_SECONDS | non | 180 | Délai d'attente synchrone en secondes |
--allow-insecure | CTWALL_ALLOW_INSECURE | non | false | Autoriser HTTP pour les hôtes non locaux |
--skip-tls-verify | CTWALL_SKIP_TLS_VERIFY | non | false | Ignorer la vérification du certificat TLS pour HTTPS (non sécurisé, test uniquement) |