
🐺 Vulfy – Scanner de versions de paquets rapide basé sur Rust
Vulfy est un scanner de vulnérabilités ultra-rapide qui vérifie les dépendances de vos projets pour détecter les failles de sécurité connues dans 9 langages de programmation. Construit avec Rust pour des performances maximales, il s'intègre à la base de données OSV.dev pour fournir des informations précises et à jour sur les vulnérabilités.
📖 Documentation complète - Guides complets, tutoriels et référence API
# Linux/WSL
curl -LO https://github.com/mindPatch/vulfy/releases/latest/download/vulfy-linux-x86_64.tar.gz
tar -xzf vulfy-linux-x86_64.tar.gz
sudo mv vulfy /usr/local/bin/
# macOS (Intel)
curl -LO https://github.com/mindPatch/vulfy/releases/latest/download/vulfy-macos-x86_64.tar.gz
tar -xzf vulfy-macos-x86_64.tar.gz
sudo mv vulfy /usr/local/bin/
# macOS (Apple Silicon)
curl -LO https://github.com/mindPatch/vulfy/releases/latest/download/vulfy-macos-aarch64.tar.gz
tar -xzf vulfy-macos-aarch64.tar.gz
sudo mv vulfy /usr/local/bin/
cargo install vulfy
git clone https://github.com/mindPatch/vulfy.git
cd vulfy
cargo build --release
sudo cp target/release/vulfy /usr/local/bin/
Vérifier l'installation :
vulfy --version
# Devrait afficher : vulfy 0.1.0
# Analyser le répertoire courant
vulfy scan packages
# Analyser un répertoire spécifique
vulfy scan packages --path /chemin/vers/projet
# Afficher uniquement les vulnérabilités de sévérité élevée
vulfy scan packages --high-only
# JSON pour l'automatisation/CI
vulfy scan packages --format json --output rapport-securite.json
# CSV pour analyse dans un tableur
vulfy scan packages --format csv --output vulnerabilites.csv
# SARIF pour l'onglet Sécurité de GitHub
vulfy scan packages --format sarif --output vulfy.sarif
# Échouer le build si des vulnérabilités élevées sont détectées
vulfy scan packages --high-only --quiet || exit 1
# Analyser uniquement certains écosystèmes
vulfy scan packages --ecosystems npm,pypi --no-dev-deps
| Écosystème | Fichiers de paquets | Statut |
|---|---|---|
| 📦 npm | package-lock.json, yarn.lock, pnpm-lock.yaml, package.json | ✅ |
| 🐍 Python | requirements.txt, Pipfile.lock, poetry.lock, pyproject.toml | ✅ |
| 🦀 Rust | Cargo.lock, Cargo.toml | ✅ |
| ☕ Java | pom.xml, build.gradle, build.gradle.kts | ✅ |
| 🐹 Go | go.mod, go.sum, go.work | ✅ |
| 💎 Ruby | Gemfile.lock, Gemfile, *.gemspec | ✅ |
| ⚙️ C/C++ | vcpkg.json, CMakeLists.txt, conanfile.txt | 🆕 NOUVEAU ! |
| 🐘 PHP | composer.json, composer.lock | 🆕 NOUVEAU ! |
| 🔷 .NET | *.csproj, packages.config, *.nuspec | 🆕 NOUVEAU ! |
🔍 Recherche de fichiers de paquets...
📦 6 fichiers de paquets trouvés dans 4 écosystèmes
🛡️ RAPPORT DE VULNÉRABILITÉS
┌─────────────────────────────────────────┬──────────────┬──────────┬─────────────────┬──────┐
│ Titre │ ID CVE │ Sévérité │ Paquet │ Année│
├─────────────────────────────────────────┼──────────────┼──────────┼─────────────────┼──────┤
│ Exécution de code à distance dans lodash│ CVE-2021-123 │ 🔥 Élevée│ [email protected] │ 2021 │
│ Traversée de chemin dans express │ CVE-2022-456 │ 🟡 Moyenne│ [email protected] │ 2022 │
│ Injection SQL dans sequelize │ CVE-2020-789 │ 🔥 Élevée│ [email protected] │ 2020 │
└─────────────────────────────────────────┴──────────────┴──────────┴─────────────────┴──────┘
📊 RÉSUMÉ DE L'ANALYSE
• Total de paquets analysés : 42
• Paquets vulnérables : 8
• Total de vulnérabilités : 12
• 🔥 Sévérité élevée : 4
• 🟡 Sévérité moyenne : 6
• 🟢 Sévérité faible : 2
📖 Voir tous les formats de sortie - Exemples JSON, CSV, SARIF
Vulfy inclut un puissant système d'automatisation pour la surveillance continue de la sécurité des dépôts Git.
# Initialiser l'automatisation avec une configuration d'exemple
vulfy automation init --with-examples
# Valider la configuration
vulfy automation validate
# Lancer une analyse manuelle avec la configuration d'automatisation
vulfy automation run
# Démarrer la surveillance continue
vulfy automation start --foreground
# Monitor multiple repositories
[[repositories]]
name = "my-web-app"
url = "https://github.com/user/my-web-app.git"
branches = ["main", "develop"]
ecosystems = ["npm", "pypi"]
[repositories.credentials]
username = "git"
token = "your_github_token_here"
# Schedule daily scans at 2:00 AM UTC
[schedule]
frequency = "daily"
time = "02:00"
timezone = "UTC"
# Discord webhook notifications
[[notifications.webhooks]]
name = "Security Alerts"
url = "https://discord.com/api/webhooks/..."
webhook_type = "discord"
enabled = true
# Advanced security policies
[[policies]]
name = "Critical Authentication Issues"
enabled = true
[policies.conditions]
title_contains = ["authentication", "auth", "bypass"]
severity = ["high", "critical"]
[policies.actions]
notify = true
priority = "critical"
custom_message = "🚨 Critical auth vulnerability detected!"
📖 Guide d'automatisation complet - Configuration détaillée
vulfy scan packages [OPTIONS]
OPTIONS:
-p, --path <CHEMIN> Répertoire à analyser [défaut : répertoire courant]
-f, --format <FORMAT> Format de sortie : table, json, csv, summary, sarif
-o, --output <FICHIER> Enregistrer les résultats dans un fichier
-e, --ecosystems <LISTE> Analyser uniquement les écosystèmes spécifiés (séparés par des virgules)
-q, --quiet Supprimer les messages de progression
--high-only Afficher uniquement les vulnérabilités de sévérité élevée/critique
--no-recursive Ne pas analyser les sous-répertoires
--no-dev-deps Ignorer les dépendances de développement
Créez .vulfy.toml à la racine de votre projet :
[scan]
ecosystems = ["npm", "pypi", "crates.io"]
min_severity = "medium"
skip_dev_deps = true
ignore_paths = ["node_modules", "vendor", ".git"]
[output]
format = "table"
color = "auto"
[api]
timeout = 30
max_concurrent = 10
retry_attempts = 3
📖 Référence complète de configuration - Documentation complète du schéma
Vous avez des demandes de fonctionnalités ? Ouvrez un ticket et discutons-en !
Vulfy est construit avec la performance et la fiabilité comme principes fondamentaux :
📖 Plongée dans l'architecture - Détails d'implémentation technique
Nous accueillons les contributions ! Que ce soit des corrections de bugs, de nouvelles fonctionnalités ou du support d'écosystèmes.
git clone https://github.com/mindPatch/vulfy.git
cd vulfy
cargo build
cargo test
cargo clippy📖 Guide de contribution - Instructions détaillées
vulfy est exécutable : chmod +x vulfyCe projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.