
CLI moderna per esplorare dati sulle vulnerabilità con potenti funzionalità di ricerca, filtraggio e analisi.

# 1. Get vulnx
go install github.com/projectdiscovery/vulnx/v2/cmd/vulnx@latest
# 2. Explore commands
vulnx --help
vulnx search --help
# 3. Start exploring vulnerabilities (no API key required)
vulnx filters # See all available search fields
vulnx search apache # Basic search (subject to rate limits)
# 4. Set up your API key (recommended to avoid rate limits)
vulnx auth # Get free API key at https://cloud.projectdiscovery.io
# 5. Enhanced exploration with higher limits
vulnx search apache # No rate limits
vulnx id CVE-2021-44228 # Faster responses
Cerca vulnerabilità con precisione:
vulnx search "severity:critical && is_remote:true"
vulnx search "apache || nginx" --limit 20
vulnx search "cvss_score:>8.0 && cve_created_at:2024"
Ottieni informazioni dettagliate sulle vulnerabilità:
vulnx id CVE-2021-44228
vulnx id CVE-2024-1234 --json
Analizza i pattern delle vulnerabilità:
vulnx analyze --fields severity
vulnx analyze --fields affected_products.vendor
Formati di output:
vulnx search "apache" --json # Machine-readable JSON
vulnx search "apache" --output results.json # Save to file
vulnx search "apache" --silent # Quiet output
Controllo della ricerca:
vulnx search "apache" --limit 50 # Get 50 results
vulnx search "apache" --sort-desc cvss_score # Sort by CVSS score
vulnx search "apache" --fields cve_id,severity # Specific fields only
Ricerca avanzata:
vulnx search --term-facets severity=5,tags=10 "apache"
vulnx search --range-facets numeric:cvss_score:high:8:10 "remote"
vulnx search --highlight "apache" # Enable search highlighting
vulnx search --facet-size 20 "nginx" # More facet buckets
vulnx search --detailed "xss" # Detailed output like 'id' command
Esplora cosa puoi cercare:
vulnx filters # Show all available search fields
vulnx filters --json # Machine-readable field list
vulnx filters --output fields.json # Save field info to file
Il comando filters mostra informazioni dettagliate su tutti i campi ricercabili, inclusi:
Esempio di output:
Field: severity
Data Type: string
Description: Vulnerability severity level (e.g., critical, high, medium, low, info)
Can Sort: Yes
Facet Possible: Yes
Search Analyzer: keyword-lower
Examples: severity:critical, severity:high
Enum Values: critical, high, medium, low, info, unknown
Total: 69 filters available
Usa questo comando per scoprire nuove possibilità di ricerca e comprendere la sintassi dei campi prima di costruire query complesse.
Trova vulnerabilità ad alto rischio:
vulnx search "severity:critical && is_remote:true && is_kev:true"
vulnx search "cvss_score:>8.0 && cve_created_at:>=2024" # High CVSS from 2024
vulnx search "is_kev:true && age_in_days:<90" # Recent KEV exploits
Cerca per tecnologia:
vulnx search "apache" # Apache vulnerabilities
vulnx search "apache || nginx" # Multiple technologies
vulnx search "affected_products.vendor:microsoft" # By vendor
Filtra per gravità e punteggi:
vulnx search "severity:high" # High severity
vulnx search "cvss_score:>7.0" # CVSS score above 7
vulnx search "epss_score:>0.8" # High EPSS score
Ricerche basate sul tempo:
vulnx search "cve_created_at:>=2024" # Published in 2024 or later
vulnx search "cve_created_at:>=2024-01-01 && cve_created_at:<2024-07-01" # First half of 2024
vulnx search "age_in_days:<30" # Recent vulnerabilities (last 30 days)
Trova vulnerabilità sfruttabili:
vulnx search "is_poc:true" # Has proof of concept
vulnx search "is_kev:true" # Known exploited vulns
vulnx search "is_template:true" # Has Nuclei templates
vulnx search --detailed "log4j" # Detailed analysis of specific vuln
Filtro per prodotto e vendor:
vulnx search --product apache,nginx # Filter by products (searches both vendor and product fields)
vulnx search --vendor microsoft,oracle # Filter by vendors only
vulnx search "NOT apache" # Exclude products using query syntax
vulnx search "NOT affected_products.vendor:microsoft" # Exclude vendors using query syntax
Gravità e punteggi:
vulnx search --severity critical,high # Filter by severity
vulnx search "NOT severity:low" # Exclude severities using query syntax
vulnx search --cvss-score ">8.0" # Filter by CVSS score
vulnx search --epss-score ">0.8" # Filter by EPSS score
vulnx search --vuln-status confirmed # Filter by status
vulnx search --vuln-age "<30" # Recent vulnerabilities
Caratteristiche degli exploit:
vulnx search --kev # KEV vulnerabilities only
vulnx search --template # Has Nuclei templates
vulnx search --poc # Has proof of concept
vulnx search --hackerone # HackerOne reported
vulnx search --remote-exploit # Remotely exploitable
Metodi di input multipli:
# Single ID lookup
vulnx id CVE-2024-1234
# Multiple IDs (comma-separated)
vulnx id CVE-2024-1234,CVE-2024-5678,CVE-2023-9999
# Auto-detection from stdin (no 'id' command needed!)
echo "CVE-2024-1234" | vulnx
echo -e "CVE-2024-1234\nCVE-2024-5678" | vulnx
# File input
vulnx id --file ids.txt
Elaborazione in batch:
# JSON output for automation
vulnx id --json CVE-2024-1234 CVE-2024-5678
# Save to file
vulnx id --output vulns.json --file ids.txt
# Pipeline integration
cat report.txt | grep -o 'CVE-[0-9]\{4\}-[0-9]\+' | vulnx id --json
Ricerche di base:
vulnx search "apache" # Simple term
vulnx search "remote code execution" # Phrase search
vulnx search "severity:critical" # Field search
Logica booleana:
vulnx search "apache && nginx" # Both terms
vulnx search "apache || nginx" # Either term
vulnx search "apache NOT tomcat" # Exclude term
vulnx search "(apache || nginx) && severity:high" # Grouped
Intervalli e wildcard:
vulnx search "cvss_score:>8.0" # Greater than
vulnx search "cvss_score:<9.0" # Less than
vulnx search "cve_created_at:>=2024-01-01" # Date comparison
vulnx search "age_in_days:<30" # Recent vulnerabilities
vulnx search "apache*" # Wildcard
Importante: i campi data richiedono operatori di confronto (>=, >, <, <=).
Confronti su data singola:
vulnx search "cve_created_at:>=2024" # CVEs from 2024 onward
vulnx search "cve_created_at:<2024" # CVEs before 2024
vulnx search "cve_created_at:>2024-06-01" # CVEs after June 1, 2024
Intervalli di date:
# CVEs from January 2024 only
vulnx search "cve_created_at:>=2024-01-01 && cve_created_at:<2024-02-01"
# High CVSS CVEs from 2024
vulnx search "cvss_score:>8.0 && cve_created_at:>=2024"
# Recent vulnerabilities (age-based)
vulnx search "age_in_days:<30" # Last 30 days
vulnx search "age_in_days:>365" # Older than 1 year
Formati supportati:
2024 (anno)2024-01 (anno-mese)2024-01-15 (data completa)vulnx funziona senza una chiave API, ma l'autenticazione offre vantaggi significativi:
⚠️ Senza chiave API:
✅ Con chiave API:
Configura l'autenticazione:
vulnx auth # Interactive setup
vulnx auth --api-key YOUR_API_KEY # Non-interactive (automation)
vulnx auth --test # Test current API key
export PDCP_API_KEY="your-key-here" # Environment variable
Modalità di autenticazione:
vulnx auth - Configurazione guidata con promptvulnx auth --api-key KEY - Ideale per automazione/CI/CDvulnx auth --test - Valida la configurazione correnteGestione della versione:
vulnx version # Show version and check for updates
vulnx version --disable-update-check # Show version without update check
vulnx update # Update to latest version
vulnx --update # Alternative update command
Opzioni globali:
vulnx --json search "apache" # JSON output
vulnx --silent search "apache" # No banner
vulnx --timeout 60s search "apache" # Custom timeout
vulnx --disable-update-check search "apache" # Disable automatic update checks
Problemi di limiti di frequenza:
Rate limit exceeded! API key required for higher limits.
→ Run: vulnx auth to configure API key and get higher limits
Configurazione per automazione/CI/CD:
# Docker containers
vulnx auth --api-key "$SECRET_API_KEY"
# CI/CD pipelines
vulnx auth --api-key "${PDCP_API_KEY}"
# Kubernetes init containers
vulnx auth --api-key "$(cat /secrets/api-key)"
# Test authentication in scripts
vulnx auth --test && echo "Auth OK" || echo "Auth failed"
Suggerimenti sui limiti di frequenza:
Configure API key with 'vulnx auth' to avoid rate limits
→ This appears when no API key is configured. To remove:
1. Set up API key: vulnx auth
2. Or use --silent flag to suppress informational messages
Nessun risultato:
vulnx search "is_kev:true" --limit 1 # Test with known results
vulnx healthcheck # Check connectivity
Set di risultati grandi:
vulnx search "apache" --limit 100 # Increase limit
vulnx search "apache" --offset 100 # Pagination
vulnx search --fields cve_id,severity "apache" # Fewer fields
Problemi di connessione:
vulnx --timeout 60s search "apache" # Increase timeout
vulnx --proxy http://localhost:8080 search "apache" # Use proxy
vulnx --debug search "apache" # Debug mode
Comandi di aiuto (nessuna chiave API richiesta):
vulnx --help # All commands overview
vulnx search --help # Search command help
vulnx id --help # ID command help
vulnx filters --help # Filters command help
vulnx analyze --help # Analyze command help
vulnx version # Version info with update check
vulnx version --disable-update-check # Version info without update check
Esplorazione dei dati (soggetta a limiti di frequenza senza chiave API):
vulnx filters # Show all searchable fields
vulnx search help # Detailed search fields
vulnx analyze help # Available analyze fields
⚠️ Nota Tutti i comandi funzionano senza una chiave API, ma sono soggetti a limiti di frequenza. Configura una chiave API con
vulnx authper limiti più elevati e prestazioni migliori.
vulnx search apachevulnx auth per un uso intensivo--disable-update-check per disabilitarevulnx filters per scoprire tutti i campi di ricerca disponibili e la loro sintassi--json per scripting e automazioneanalyze per comprendere i pattern dei datiPer pattern di utilizzo avanzati ed esempi, consulta USAGE.md.
Per la configurazione dello sviluppo, i controlli di qualità del codice e le linee guida per i contributi, consulta DEVELOPMENT.md.
vulnx è distribuito sotto licenza MIT.
| Comando | Scopo | Esempio |
|---|
search | Trova vulnerabilità con filtri avanzati | vulnx search "apache && severity:high" |
id | Ottieni dettagli per uno specifico CVE | vulnx id CVE-2021-44228 |
filters | Elenca tutti i campi di ricerca e i filtri disponibili | vulnx filters |
analyze | Aggrega i dati per campi | vulnx analyze -f severity |
auth | Configura l'accesso API | vulnx auth |
version | Mostra info sulla versione e verifica aggiornamenti | vulnx version |
update | Aggiorna vulnx all'ultima versione | vulnx update |
healthcheck | Verifica la connettività | vulnx healthcheck |
| Flag | Short | Descrizione | Esempio |
|---|
--product | -p | Filtra per prodotti | --product apache,nginx |
--vendor | Filtra per vendor | --vendor microsoft,oracle | |
--severity | -s | Filtra per gravità | --severity critical,high |
--tags | Filtra per tag | --tags rce,injection | |
--cvss-score | Filtra per punteggio CVSS | --cvss-score ">8.0" | |
--epss-score | Filtra per punteggio EPSS | --epss-score ">0.8" | |
--vuln-age | -a | Filtra per età | --vuln-age "<30" |
--vuln-type | Filtra per tipo di vulnerabilità | --vuln-type sql_injection | |
--kev | Solo vulnerabilità KEV | --kev | |
--template | -t | Ha template Nuclei | --template |
--poc | Ha proof of concept | --poc | |
--hackerone | Segnalata su HackerOne | --hackerone | |
--remote-exploit | Sfruttabile da remoto | --remote-exploit | |
--vuln-status | Filtra per stato della vulnerabilità | --vuln-status confirmed |
| Flag | Short | Descrizione | Esempio |
|---|
--detailed | Output dettagliato come 'id' | --detailed | |
--highlight | Abilita evidenziazione della ricerca | --highlight | |
--limit | -n | Numero di risultati | --limit 50 |
--offset | Offset di paginazione | --offset 100 | |
--sort-asc | Ordina crescente | --sort-asc cvss_score | |
--sort-desc | Ordina decrescente | --sort-desc cve_created_at | |
--fields | Seleziona campi specifici | --fields cve_id,severity | |
--term-facets | Calcola facet per termini | --term-facets severity=5 | |
--range-facets | Calcola facet per intervalli | --range-facets numeric:cvss_score:high:8:10 | |
--facet-size | Numero di bucket facet | --facet-size 20 |
| Campo | Descrizione | Valori di esempio |
|---|
severity | Gravità della vulnerabilità | low, medium, high, critical |
cvss_score | Punteggio CVSS (0-10) | 7.5, >8.0, <9.0 |
cve_id | Identificativo CVE | CVE-2021-44228 |
is_remote | Sfruttabile da remoto | true, false |
is_kev | Vulnerabilità nota sfruttata | true, false |
is_poc | Ha proof of concept | true, false |
affected_products.vendor | Nome del vendor | apache, microsoft |
affected_products.product | Nome del prodotto | tomcat, windows |
cve_created_at | Data di pubblicazione | >=2024, >2024-01-01, <2023 |
age_in_days | Giorni dalla pubblicazione | <30, >365, <=90 |