Scanner de vulnérabilités écrit en Go qui utilise les données fournies par https://osv.dev
Utilisez OSV-Scanner pour détecter les vulnérabilités existantes affectant les dépendances de votre projet. OSV-Scanner fournit une interface officiellement prise en charge pour la base de données OSV et une interface CLI pour OSV-Scalibr, qui relie la liste des dépendances d'un projet aux vulnérabilités qui les affectent.
OSV-Scanner prend en charge une large gamme de types de projets, de gestionnaires de paquets et de fonctionnalités, notamment :
OSV-Scanner utilise la bibliothèque extensible OSV-Scalibr en interne pour fournir cette fonctionnalité. Si un langage ou un gestionnaire de paquets n'est pas actuellement pris en charge, veuillez soumettre une demande de fonctionnalité.
La base de données sous-jacente, OSV.dev, présente plusieurs avantages par rapport aux bases de données d'avis de sécurité et aux scanners propriétaires :
Tout cela aboutit à des notifications de vulnérabilités précises et exploitables, ce qui réduit le temps nécessaire pour les résoudre. Consultez OSV.dev pour plus de détails !
Pour installer OSV-Scanner, veuillez vous référer à la section installation de notre documentation. Les versions d'OSV-Scanner sont disponibles sur la page des versions du dépôt GitHub. La méthode recommandée consiste à télécharger un binaire précompilé pour votre plateforme. Vous pouvez également utiliser
go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest pour le compiler à partir des sources.
Pour plus d'informations, veuillez lire notre documentation détaillée pour apprendre à utiliser OSV-Scanner. Pour des informations détaillées sur chaque fonctionnalité, cliquez sur leurs titres dans ce README.
Veuillez noter : il s'agit des instructions pour la dernière version bêta d'OSV-Scanner V2. Si vous utilisez V1, consultez plutôt le README et la documentation de la V1.
$ osv-scanner scan source -r /path/to/your/dir
Cette commande analysera récursivement le répertoire spécifié à la recherche de tous les fichiers de paquets pris en charge, tels que package.json, go.mod, pom.xml, etc., et affichera toutes les vulnérabilités découvertes.
OSV-Scanner offre la possibilité d'utiliser l'analyse des appels pour déterminer si une fonction vulnérable est réellement utilisée dans le projet, ce qui se traduit par moins de faux positifs et des alertes exploitables.
OSV-Scanner peut également détecter le code C/C++ vendorisé pour l'analyse des vulnérabilités. Voir ici pour plus de détails.
OSV-Scanner prend en charge plus de 11 écosystèmes de langages et plus de 19 types de fichiers de verrouillage. Pour vérifier si votre écosystème est couvert, consultez notre documentation détaillée.
OSV-Scanner prend également en charge une analyse complète et tenant compte des couches pour les images de conteneurs, afin de détecter les vulnérabilités dans les paquets des systèmes d'exploitation et les dépendances spécifiques aux langages suivants.
| Distributions prises en charge | Artefacts de langage pris en charge |
|---|---|
| Alpine OS | Go |
| Debian | Java |
| Ubuntu | Node |
| Python |
Consultez la documentation complète pour plus de détails sur la prise en charge.
Utilisation :
$ osv-scanner scan image my-image-name:tag

Vérifiez les licences de vos dépendances à l'aide des données de deps.dev. Pour un résumé :
osv-scanner --licenses path/to/repository
Pour vérifier par rapport à une liste de licences autorisées (format SPDX) :
osv-scanner --licenses="MIT,Apache-2.0" path/to/directory
Analysez votre projet par rapport à une base de données OSV locale. Aucune connexion réseau n'est requise après le téléchargement initial de la base de données. La base de données peut également être téléchargée manuellement.
osv-scanner --offline --download-offline-databases ./path/to/your/dir