
🐺 Vulfy – Scanner di versioni di pacchetti veloce basato su Rust
Vulfy è uno scanner di vulnerabilità velocissimo che controlla le dipendenze del tuo progetto per problemi di sicurezza noti in 9 linguaggi di programmazione. Sviluppato in Rust per garantire prestazioni massime, si integra con il database OSV.dev per fornire informazioni accurate e aggiornate sulle vulnerabilità.
📖 Documentazione Completa - Guide complete, tutorial e riferimento 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/
Verifica dell'Installazione:
vulfy --version
# Should output: vulfy 0.1.0
# Scan current directory
vulfy scan packages
# Scan specific directory
vulfy scan packages --path /path/to/project
# Only show high-severity vulnerabilities
vulfy scan packages --high-only
# JSON for automation/CI
vulfy scan packages --format json --output security-report.json
# CSV for spreadsheet analysis
vulfy scan packages --format csv --output vulnerabilities.csv
# SARIF for GitHub Security tab
vulfy scan packages --format sarif --output vulfy.sarif
# Fail build if high-severity vulnerabilities found
vulfy scan packages --high-only --quiet || exit 1
# Scan specific ecosystems only
vulfy scan packages --ecosystems npm,pypi --no-dev-deps
| Ecosistema | File dei Pacchetti | Stato |
|---|---|---|
| 📦 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 | 🆕 NUOVO! |
| 🐘 PHP | composer.json, composer.lock | 🆕 NUOVO! |
| 🔷 .NET | *.csproj, packages.config, *.nuspec | 🆕 NUOVO! |
🔍 Scanning for package files...
📦 Found 6 package files across 4 ecosystems
🛡️ VULNERABILITY REPORT
┌─────────────────────────────────────────┬──────────────┬──────────┬─────────────────┬──────┐
│ Title │ CVE ID │ Severity │ Package │ Year │
├─────────────────────────────────────────┼──────────────┼──────────┼─────────────────┼──────┤
│ Remote Code Execution in lodash │ CVE-2021-123 │ 🔥 High │ [email protected] │ 2021 │
│ Path Traversal in express │ CVE-2022-456 │ 🟡 Medium│ [email protected] │ 2022 │
│ SQL Injection in sequelize │ CVE-2020-789 │ 🔥 High │ [email protected] │ 2020 │
└─────────────────────────────────────────┴──────────────┴──────────┴─────────────────┴──────┘
📊 SCAN SUMMARY
• Total packages scanned: 42
• Vulnerable packages: 8
• Total vulnerabilities: 12
• 🔥 High severity: 4
• 🟡 Medium severity: 6
• 🟢 Low severity: 2
📖 Vedi Tutti i Formati di Output - Esempi JSON, CSV, SARIF
Vulfy include un potente sistema di automazione per il monitoraggio continuo della sicurezza dei repository Git.
# Initialize automation with example configuration
vulfy automation init --with-examples
# Validate configuration
vulfy automation validate
# Run manual scan using automation config
vulfy automation run
# Start continuous monitoring
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!"
📖 Guida Completa all'Automazione - Configurazione e installazione dettagliate
vulfy scan packages [OPTIONS]
OPTIONS:
-p, --path <PATH> Directory to scan [default: current directory]
-f, --format <FORMAT> Output format: table, json, csv, summary, sarif
-o, --output <FILE> Save results to file
-e, --ecosystems <LIST> Only scan specific ecosystems (comma-separated)
-q, --quiet Suppress progress output
--high-only Show only high/critical severity vulnerabilities
--no-recursive Don't scan subdirectories
--no-dev-deps Skip development dependencies
Crea un file .vulfy.toml nella root del progetto:
[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
📖 Riferimento Completo alla Configurazione - Documentazione completa dello schema
Hai richieste di funzionalità? Apri una issue e parliamone!
Vulfy è costruito con prestazioni e affidabilità come principi fondamentali:
📖 Approfondimento sull'Architettura - Dettagli tecnici di implementazione
Accogliamo con piacere i contributi! Che si tratti di correzioni di bug, nuove funzionalità o supporto per nuovi ecosistemi.
git clone https://github.com/mindPatch/vulfy.git
cd vulfy
cargo build
cargo test
cargo clippy📖 Guida ai Contributi - Istruzioni dettagliate per contribuire
vulfy sia eseguibile: chmod +x vulfyQuesto progetto è concesso in licenza sotto la Licenza MIT - consulta il file LICENSE per i dettagli.