Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
threat-finder — Scanner di vulnerabilità runtime: individua le CVE nei servizi effettivamente in esecuzione su un host e le classifica in base all'esposizione di rete. | Kitploit
Strumenti/GitHubGitHub/offseq/threat-finder
Scanner di VulnerabilitàAnalisi delle VulnerabilitàSicurezza di ReteDevSecOpsThreat Intelligence
GitHuboffseq/threat-finder

threat-finder

Scanner di vulnerabilità runtime: individua le CVE nei servizi effettivamente in esecuzione su un host e le classifica in base all'esposizione di rete.

Vedi Repository
57616 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

OffSeq Threat Finder

CI crates.io docs.rs license

threat-finder individua il software vulnerabile effettivamente in esecuzione su un host — non ciò che un manifest dichiara — e ti dice quali risultati sono raggiungibili in rete. Risolve ogni servizio in esecuzione (e, con --scope all, ogni pacchetto di sistema operativo installato) in un Package-URL esatto e lo confronta con il catalogo OffSeq Radar usando regole di versione native dell'ecosistema, così le build backportate/corrette non vengono segnalate erroneamente.

OffSeq Threat Finder

root@kitploit:~
Vulnerability summary (highest risk first):

  openssh-server@1:8.9p1-3ubuntu0.6 — 1 finding(s)  [PUBLIC tcp 0.0.0.0:22]
      [ACT-NOW 92]  HIGH  CVE-2024-6387  [KEV]  regreSSHion: remote code execution in OpenSSH
                          → fix: 1:8.9p1-3ubuntu0.10   https://radar.offseq.com/threat/…
  [email protected] — 1 finding(s)
      [SCHEDULE 41] MED   CVE-2023-44487        HTTP/2 Rapid Reset

2 confirmed finding(s) across 2 asset(s); 1 exposed, 1 known-exploited.

Installazione

root@kitploit:~
brew install offseq/tap/threat-finder   # Homebrew (macOS/Linux), prebuilt
cargo binstall threat-finder            # prebuilt binary, no toolchain
cargo install threat-finder             # from source

Gli archivi precompilati per Linux/macOS (x86_64 + arm64) e Windows (x86_64) sono nella pagina delle release. Per compilare dai sorgenti è richiesto Rust ≥ 1.87. Sono supportati Linux, macOS, i BSD e Windows.

Avvio rapido

root@kitploit:~
export OFFSEQ_API_KEY=...    # from https://radar.offseq.com/console
threat-finder

Analizza i servizi in esecuzione, stampa un riepilogo ordinato per rischio e scrive il report JSON completo in /tmp/threats.json. Aggiungi --scope all per analizzare anche ogni pacchetto di sistema operativo installato.

Utilizzo

root@kitploit:~
threat-finder [OPTIONS]
root@kitploit:~
# CI: only high+ findings, JSON to stdout, no prompts
OFFSEQ_API_KEY=… threat-finder --yes --json --severity high > report.json

# Fail the build only when a network-exposed service has a known-exploited CVE
OFFSEQ_API_KEY=… threat-finder --yes --quiet --fail-on exposed

Codici di uscita: 0 ok · 1 errore di lookup/IO · 2 chiave API mancante · 3 sistema operativo non supportato · 4 limite di frequenza/quota, o accesso API richiesto (è necessario l'upgrade) · 5 soglia --fail-on raggiunta.

Chiave API (ottienila dalla Radar Console), risolta in quest'ordine:

  1. La variabile d'ambiente OFFSEQ_API_KEY (ottima per CI/cron).
  2. La chiave salvata in $XDG_CONFIG_HOME/offseq-rust/config.toml (0600), a meno che non venga specificato --reset.
  3. Una richiesta interattiva e nascosta su una TTY — poi salvata per la volta successiva.

Una sessione non interattiva (--yes / nessuna TTY) senza chiave disponibile esce con 2.

Imposta OFFSEQ_CONFIG_DIR per sovrascrivere la posizione della configurazione (predefinita: la directory di configurazione per utente del sistema operativo) — utile per container/CI che necessitano di un percorso deterministico.

Come funziona

Corrispondenza a coordinate esatte. Ogni asset diventa un purl che porta la sua versione completa (epoch + revisione della distribuzione) e un qualificatore ?distro=, ad es. pkg:deb/ubuntu/openssh-server@1:8.9p1-3ubuntu0.6?distro=jammy. L'inventario viene confrontato in chiamate batch POST /match/batch (una richiesta per blocco delle dimensioni del tier) lato server, con regole di versione native dell'ecosistema (dpkg/rpm/apk/semver) — così una build backportata e corretta come 1.18.0-6+deb11u3 non viene segnalata erroneamente, e non c'è alcuna supposizione di versione lato client. I risultati sono suddivisi dal flag confirmed dell'API: i riscontri confermati vengono riportati; i riscontri per coordinate la cui versione non può essere confermata vengono mostrati separatamente come non confermati / triage (esclusi dal conteggio, da byCve e da --fail-on; puoi eliminarli con --strict).

Correlazione con l'esposizione di rete. Gli scanner di manifest (Trivy, Grype, osv-scanner) leggono gli elenchi dei pacchetti; gli scanner esterni (Nessus, OpenVAS) richiedono un secondo host. Questo strumento mappa il processo di ogni servizio in esecuzione sui socket su cui è in ascolto (/proc/net su Linux, lsof sugli altri Unix, Get-NetTCPConnection / netstat su Windows) e classifica la raggiungibilità — loopback / private / public. Un servizio vulnerabile su 0.0.0.0 è un rischio molto diverso da uno su 127.0.0.1: i risultati vengono ordinati prima per esposizione e --fail-on exposed vincola la CI esattamente a questo. Non viene inviato alcun pacchetto. I risultati includono anche KEV CISA ed EPSS.

Prioritizzazione sensibile all'esposizione. Ogni risultato riceve un riskScore (0–100) e una fascia decision in stile SSVC — act-now · soon · schedule · track — derivati dalla combinazione di severità, EPSS, KEV ed esposizione di rete dell'asset proprietario. Il riepilogo fa precedere ogni riga da un badge in stile [ACT-NOW 92] e ordina in base a esso, così i pochi problemi pubblici e noti come sfruttati emergono in cima a un host rumoroso. Il punteggio usa la stessa formula in locale e lato server (la vista di monitoraggio di Radar aggiunge un piccolo bonus quando un risultato KEV è oltre la data di scadenza — una data che la CLI non ha), e compare in --json e SARIF (properties).

Monitoraggio continuo

Una scansione singola è un'istantanea nel tempo. Registra un host una volta e Radar continua a controllare: quando una CVE appena pubblicata colpisce una delle sue coordinate, ricevi un avviso (email + Console), prioritizzato in base all'esposizione — nessuna nuova scansione necessaria.

Dopo una scansione interattiva, lo strumento chiede:

root@kitploit:~
Add these 42 services to Radar for continuous monitoring & alerts? [Y/n/never]

Y registra questo host; n salta questa esecuzione; never ricorda la tua scelta (viene salvata nella configurazione e non ti verrà più chiesto). In una nuova scansione riporta anche il drift (+added / -removed / ~changed) e gli eventuali risultati nuovi dall'ultima scansione. Gestisci i tuoi host — attiva/disattiva il monitoraggio, visualizza i risultati, annulla la registrazione — nella sezione Inventory della Radar Console.

Per l'automazione, salta la richiesta: --register registra in modalità non interattiva (disattivata di default in CI), --no-register rinuncia, --host-name <NAME> etichetta l'host e --unregister lo rimuove. Un id stabile per host e la tua preferenza sulla richiesta risiedono in $XDG_CONFIG_HOME/offseq-rust/config.toml. La registrazione non modifica mai il codice di uscita — un intoppo nel monitoraggio non farà fallire la scansione. Richiede un piano Basic/Pro/Enterprise (o Pro Console).

Ambito e copertura

--scope running (predefinito) analizza i servizi attivi — il piccolo insieme ad alto segnale la cui esposizione può essere correlata. --scope all elenca inoltre ogni pacchetto di sistema operativo installato (dpkg/rpm/pacman/apk/brew/pkg/pkg_info), espandendo la superficie confrontata di 10–50×. Un pacchetto che supporta anche un processo in esecuzione ed esposto mantiene quell'esposizione (gli asset vengono deduplicati e uniti per coordinata). Il kernel è coperto come suo pacchetto (linux-image…) con --scope all.

--scope all può produrre da centinaia a migliaia di pacchetti. Con il piano gratuito (15 lookup/ora) si incorre nel rate-limit; lo strumento avvisa quando l'inventario supera il budget. (I lookup sono già raggruppati in batch; una cache locale dei risultati è nella roadmap.)

Supporto per sistema operativo

Dove nessun pacchetto possiede un binario, la versione ricade su una sonda --version irrobustita (solo percorso assoluto, ambiente sanificato). Su macOS, i servizi di sistema Apple (com.apple.*, percorsi protetti da SIP) vengono saltati — sono coperti dalla versione del sistema operativo, e sondarne centinaia è inutile.

Su Windows, tutto viene raccolto tramite powershell.exe integrato (nessun runtime aggiuntivo, nessun admin per l'inventario di base). Le app installate vengono mappate alle CPE NVD attraverso una tabella di nomi curata (le app non mappate ripiegano su una ricerca per nome piuttosto che su una supposizione errata); l'edizione/build del sistema operativo diventa una CPE del sistema operativo qualificata per funzionalità (ad es. windows_11_23h2); e --windows-missing-updates aggiunge un advisory facoltativo di Windows Update Agent per le patch di sicurezza in sospeso.

Output

JSON, con chiavi deterministiche (ordinate) e nessun timestamp, così i report producono diff puliti:

  • services — pkg@version → risultati confermati (cveId, severity, cvssScore, epss, kev, riskScore, decision, confirmed, matchedRange, matchBasis, fixedVersions, remediation, cwes, references, ), prima quelli a rischio più alto.

È disponibile anche un report SARIF 2.1.0 (--sarif) per le interfacce di code-scanning.

L'ecosistema OffSeq

Sviluppo

root@kitploit:~
cargo build --release
cargo test                 # unit tests
cargo test -- --ignored    # + macOS live-discovery smoke test
cargo clippy --all-targets

Il motore è una crate libreria (find_threats) con un'astrazione Collector (servizi in esecuzione e pacchetti del sistema operativo oggi; lockfile / container / SBOM in seguito), quindi il binario è una CLI sottile sopra di esso.

Licenza

Con doppia licenza MIT o Apache-2.0, a tua scelta.

Scarica lo strumento
FlagDescription
-o, --output <PATH>Scrive il report JSON in PATH (predefinito: richiesta, o /tmp/threats.json)
--jsonStampa il report JSON su stdout invece che su un file
--scope <SCOPE>running (predefinito) o all (+ ogni pacchetto di sistema operativo installato)
--severity <LEVEL>Segnala solo i risultati con livello pari o superiore a critical|high|medium|low
--strictScarta i risultati la cui coordinata non è confermata (riporta solo i confermati)
--fail-on <WHAT>Esce con codice 5 se esistono risultati corrispondenti: any|critical|high|medium|low|kev|exposed
--sarif <PATH>Scrive anche un report SARIF 2.1.0 (per interfacce di code-scanning)
--include <GLOB> / --exclude <GLOB>Filtra gli asset tramite glob sul nome (ripetibile)
-q, --quietSopprime il banner, l'avanzamento e il riepilogo
--no-colorDisabilita i colori ANSI
-y, --yesAccetta i valori predefiniti, non chiede mai conferma (CI/cron)
--resetRichiede di nuovo la chiave API, ignorando quella salvata
--registerRegistra l'host analizzato su Radar per il monitoraggio continuo (senza richieste)
--no-registerNon registrare e non chiedere il monitoraggio in questa esecuzione
--host-name <NAME>Hostname descrittivo da inviare con una registrazione
--unregisterRimuove l'inventario di questo host da Radar ed esce
--windows-missing-updates(Windows) Elenca anche gli aggiornamenti di sicurezza in sospeso da Windows Update Agent (scansione online; eseguire con privilegi elevati)
-h, --help / -V, --versionAiuto / versione
OSRilevamentoSorgente delle coordinate
Linux (systemd)ListUnits → /proc/<pid>/exedpkg / rpm / pacman / apk
Linux (SysV/OpenRC)service --status-all / rc-statusdatabase dei pacchetti
macOSlaunchctl list → ps (solo terze parti)Homebrew
FreeBSD / DragonFlyservice -epkg
OpenBSDrcctl ls startedpkg_info
NetBSD/etc/rc.d statuspkg_info
Solaris / illumossvcs → svcpropsonda (--version)
WindowsWin32_Service → Get-NetTCPConnection / netstatregistry / winget / Appx / Chocolatey / Scoop → CPE; npm / pip / dotnet → purl; la build del sistema operativo → CPE
radarUrl
  • unconfirmed — corrispondenze per coordinate la cui versione non ha potuto essere confermata (triage).
  • assets — pkg@version → { exe, versionSource, exposed, reachability, listeners } (versionSource = package-db | probe; reachability copre TCP e UDP).
  • byCve — ogni CVE aggregata su tutti gli asset interessati ("correggi una volta, risolvi molti").
  • errors — errori di lookup per asset, così un errore non viene mai letto come "pulito".
  • registration — presente quando l'esecuzione ha registrato l'host: host_id, monitoring, drift, summary, newSinceLastCount.
  • meta — { tool, version, schemaVersion } (schemaVersion 2).
  • OffSeqAudit di sicurezza UE, monitoraggio delle minacce, CISO-as-a-Service, conformità NIS2
    RadarIntelligence sulle minacce in tempo reale — il catalogo con cui threat-finder confronta
    Radar ConsoleAbbonamenti, feed personalizzati e la tua OFFSEQ_API_KEY
    Radar APIDocumentazione REST per l'endpoint /match usato qui
    Radar ThreatsDatabase ricercabile di CVE / malware / attori delle minacce
    Radar FeedsFeed personalizzati che aggregano CISA, CIRCL, ThreatFox, …
    Radar PricingDal piano gratuito a Enterprise
    BreachMonitoraggio di fughe di dati nel dark web e credenziali esposte
    VeilSteganografia PNG lato client (AES-256-GCM)
    GuardAnalista AI per sicurezza e conformità dei siti web
    TrainingCorsi di sicurezza e privacy accreditati PECB