Référence des outils
📄 Vous préférez hors ligne ? Téléchargez ce guide au format PDF.
DepCheck expose cinq outils. Ils sont tous en lecture seule — ils recherchent des données et les renvoient ; aucun ne modifie votre projet, vos manifestes ni aucun état côté serveur.
| Outil | En une ligne |
|---|---|
check_package | Cette version précise d'un paquet est-elle vulnérable ? |
scan_dependencies | Quels paquets de tout ce manifeste sont vulnérables ? |
suggest_safe_version | Quelle est la version la plus récente sans aucun avis connu ? |
get_advisory | Détail complet (CVSS, plages, références) pour un identifiant d'avis. |
get_cve_intel | Cette CVE est-elle exploitée dans la nature (KEV / EPSS) ? |
Les exemples de réponses ci-dessous sont illustratifs — la sortie réelle reflète les données d'avis en direct au moment de l'appel.
check_package
Vérifiez une version de paquet par rapport aux bases de données d'avis. C'est l'outil à appeler avant d'ajouter ou d'épingler une dépendance.
Paramètres
| Nom | Requis | Description |
|---|---|---|
ecosystem | ✅ | npm, Go, PyPI, crates.io, Maven, RubyGems, Packagist, NuGet, Hex, Pub. Les alias python, rust, java sont acceptés. |
name | ✅ | Nom publié exact — lodash, @scope/pkg, github.com/gin-gonic/gin, org.apache.logging.log4j:log4j-core. |
version | ✅ | Version concrète (4.17.20, v1.9.0). Les opérateurs de plage (^, ~, >=) sont réduits à leur borne inférieure. |
Exemple
{ "ecosystem": "npm", "name": "lodash", "version": "4.17.20" }
Renvoie — les avis affectant exactement cette version, ainsi que la version sûre
minimale vers laquelle migrer. Lorsque des renseignements sur l'exploitation sont
disponibles, les avis figurant sur la liste CISA KEV ou dotés d'un score EPSS élevé sont
marqués exploited et triés en premier.
{
"package": "[email protected] (npm)",
"vulnerable": true,
"advisories": [
{
"id": "GHSA-29mw-wpgm-hmr9",
"aliases": ["CVE-2021-23337"],
"summary": "Injection de commande dans lodash",
"severity": "High",
"exploited": false,
"fixed": "4.17.21"
}
],
"min_safe_version": "4.17.21"
}
scan_dependencies
Analysez un manifeste entier en un seul appel. Utilisez-le lors de la revue d'un service, après avoir ajouté plusieurs dépendances, ou pour répondre à la question « nos dépendances sont-elles sûres ? ». Seuls les paquets vulnérables sont renvoyés (chacun avec une cible de mise à niveau) ; les paquets sains sont simplement comptés.
Paramètres (point de terminaison hébergé)
Le serveur hébergé n'a aucun accès à votre système de fichiers, donc votre agent lit le fichier et en transmet le texte :
| Nom | Requis | Description |
|---|---|---|
manifest_content | ✅ | Le texte complet du fichier manifeste. |
manifest_name | ✅ | Le nom du fichier, qui sélectionne l'analyseur : go.mod, package.json, package-lock.json, requirements.txt, pyproject.toml, Cargo.toml, Cargo.lock, pom.xml, composer.json. |
Un manifeste comportant des plages (^4.17.0) est vérifié à sa borne inférieure. Pour
détecter ce qui est réellement résolu, analysez le lockfile (package-lock.json,
Cargo.lock, un pyproject de type poetry.lock, …) au lieu du manifeste, ou en plus de
celui-ci.
Lorsque vous exécutez DepCheck en local, scan_dependencies accepte également un
manifest_path (un chemin du système de fichiers) comme alternative à manifest_content +
manifest_name.
Renvoie
{
"manifest": "package.json",
"total_dependencies": 42,
"clean": 39,
"vulnerable": [
{
"name": "minimist",
"current": "1.2.5",
"advisories": ["GHSA-xvch-5gv4-984h"],
"highest_severity": "Critical",
"exploited": true,
"upgrade_to": "1.2.8"
}
]
}
Corrigez en premier les résultats exploited: true — ce sont ceux qui font l'objet
d'attaques actives. Mettez à niveau chaque paquet vulnérable vers sa version upgrade_to.
suggest_safe_version
Obtenez la version la plus récente d'un paquet ne présentant aucun avis connu. Utilisez-le pour choisir la version à ajouter, ou pour sélectionner la cible de mise à niveau d'une dépendance vulnérable — ne choisissez jamais à la main une version susceptible de porter ses propres avis.
Paramètres
| Nom | Requis | Description |
|---|---|---|
ecosystem | ✅ | Mêmes valeurs que check_package. |
name | ✅ | Nom de paquet publié exact. |
include_prerelease | ➖ | Prendre également en compte les versions alpha/beta/rc. Valeur par défaut false. |
Écosystèmes pris en charge par cet outil : npm, Go, PyPI, crates.io, Maven, RubyGems, NuGet. Il sonde les dernières versions (via deps.dev) par rapport à OSV jusqu'à en trouver une saine.
Renvoie
{
"package": "express (npm)",
"safe_version": "4.21.2",
"checked_latest_first": true
}
get_advisory
Détail complet pour un identifiant d'avis renvoyé par les autres outils — GHSA-…,
CVE-…, RUSTSEC-…, GO-… ou PYSEC-…. Utilisez-le pour décider si une vulnérabilité
signalée compte réellement au regard de la manière dont votre code utilise le paquet.
Paramètres
| Nom | Requis | Description |
|---|---|---|
id | ✅ | Identifiant d'avis, par ex. GHSA-29mw-wpgm-hmr9 ou CVE-2021-23337. |
Renvoie — description, vecteur et score CVSS, plages de versions affectées et liens de référence.
{
"id": "GHSA-29mw-wpgm-hmr9",
"aliases": ["CVE-2021-23337"],
"summary": "Injection de commande dans lodash",
"details": "Les versions de lodash antérieures à 4.17.21 sont vulnérables à l'injection de commande via template.",
"cvss": { "score": 7.2, "vector": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H" },
"affected": [{ "introduced": "0", "fixed": "4.17.21" }],
"references": ["https://github.com/lodash/lodash/commit/..."]
}
get_cve_intel
Renseignements sur l'exploitation d'une CVE, issus des données de menace Cert-IX : statut CISA KEV (connue comme exploitée dans la nature), score/percentile de probabilité d'exploitation EPSS, ainsi que CVSS + CWE du NVD. Utilisez-le pour prioriser — une CVE listée dans KEV ou à EPSS élevé fait l'objet d'attaques actives et doit passer devant une autre au CVSS plus élevé mais non exploitée.
Accepte un identifiant CVE, ou un identifiant d'avis GHSA/GO/RUSTSEC (ses alias CVE
sont résolus automatiquement).
Paramètres
| Nom | Requis | Description |
|---|---|---|
id | ✅ | Identifiant CVE (CVE-2021-44228) ou identifiant d'avis (GHSA-jfh8-c2jp-5v3q). |
Renvoie
{
"cve": "CVE-2021-44228",
"kev": { "listed": true, "date_added": "2021-12-10" },
"epss": { "score": 0.975, "percentile": 0.99997 },
"cvss": 10.0,
"cwe": ["CWE-502", "CWE-917"]
}
get_cve_intel est activé lorsque DepCheck s'appuie sur le miroir Elasticsearch Cert-IX
(index KEV/EPSS) — ce qui est le cas du point de terminaison hébergé
mcp.cert-ix.com/depcheck. Une instance locale entièrement hors ligne sans le miroir
expose les quatre autres outils.
La priorisation, en une seule règle
Lorsque plusieurs éléments sont vulnérables, l'ordre de tri de DepCheck encode la priorité :
exploited/ listé dans KEV / EPSS élevé — attaqué activement. À corriger en premier, même devant un CVSS brut plus élevé.- Sévérité Critical / High — à corriger ensuite.
- Medium / Low — à planifier.
Déplacez ensuite chaque paquet vers la version upgrade_to / min_safe_version /
safe_version que les outils vous fournissent. Consultez Flux de travail d'agent
pour savoir comment intégrer cela dans la boucle d'édition d'un agent.
Cette page vous a-t-elle été utile ?