
CLI Rust per la ricognizione di rete limitata: scoperta di porte TCP/UDP, identificazione dei servizi, raccolta di evidenze DNS/TLS/HTTP e ricerca di username da fonti pubbliche con correlazione.
Motore di ricognizione e correlazione delle evidenze
Ricognizione circoscritta e correlazione delle evidenze in Rust.
RXScan combina ricognizione di rete, ricerca su fonti pubbliche, indagine e correlazione delle evidenze in un'unica CLI.
È in grado di scoprire host e porte, identificare i servizi osservati, raccogliere evidenze circoscritte a livello di protocollo e web, cercare su provider pubblici, correlare i risultati e conservare i risultati per analisi e confronti successivi.
RXScan è intenzionalmente prudente su ciò che riporta. Un numero di porta non identifica un servizio, un esito HTTP positivo non conferma di per sé un account, e una copertura incompleta viene tenuta distinta da un risultato negativo.
Compila e installa dal repository:
git clone https://github.com/DarkRX1/RXScan.git
cd RXScan
cargo install --path . --locked
Controlla la build installata:
rxscan --version
rxscan --help
Esegui una normale scansione di ricognizione:
rxscan example.test
Cerca nelle fonti pubbliche:
rxscan search --username exampleuser
Indagare e correlare i risultati pubblici:
rxscan investigate --username exampleuser
Quelli sono i tre principali punti di ingresso:
rxscan TARGET
rxscan search ...
rxscan investigate ...
La scansione predefinita utilizza il workflow recon, livello 3 e impostazioni di esecuzione bilanciate.
rxscan example.test
Specifica le porte quando desideri una selezione esatta delle porte:
rxscan example.test --ports 22,80,443
rxscan example.test --ports 1-1024
rxscan example.test --ports 22,80,443,8000-8100
Scansiona l'intera gamma di porte TCP:
rxscan example.test --all-ports
Il rilevamento UDP è esplicito:
rxscan example.test --udp
Mostra il piano effettivo e i dettagli di esecuzione aggiuntivi:
rxscan example.test --explain
RXScan supporta:
rxscan example.test --scan-mode auto
rxscan example.test --scan-mode connect
rxscan example.test --scan-mode syn
La scansione TCP connect è il percorso di scansione portabile attualmente utilizzato da RXScan sulla sua piattaforma supportata.
La scansione SYN raw è disponibile per IPv4 su Linux quando la capability richiesta è disponibile. Quando il percorso SYN richiesto non può essere utilizzato, RXScan segnala il fallback effettivo anziché presentare silenziosamente una scansione connect come SYN.
La scansione UDP utilizza probe nativi con limiti e rimane opt-in.
L'attuale scoperta UDP consapevole del protocollo include piccoli probe per servizi come DNS, NTP e SSDP.
Il silenzio UDP non viene segnalato come prova che una porta sia aperta o chiusa. RXScan preserva l'incertezza risultante open|filtered.
Il rilevamento del sistema operativo è esplicito e supportato da evidenze, mai una supposizione basata su un singolo indizio:
rxscan example.test --os
--os esegue un piano di probe limitato per ogni host in scope (al massimo 6 probe TCP/ICMP normali, riutilizzando porte già note alla scansione) e spiega ogni candidato: evidenze corrispondenti, evidenze in conflitto, evidenze non disponibili, copertura e provenienza. Senza la capacità di raw-packet degrada onestamente a evidenze passive con confidenza ridotta. Unknown è un risultato di prima classe quando le evidenze sono insufficienti. Consultare docs/OS_FINGERPRINTING.md per il modello di evidenze, i limiti e la realtà attuale del corpus.
RXScan identifica i servizi dal comportamento osservato del protocollo invece di assegnare un servizio unicamente in base al numero di porta.
L'identificazione nativa attuale copre protocolli comuni tra cui:
A seconda del protocollo e delle evidenze disponibili, le osservazioni possono includere informazioni su prodotto/versione, banner, endpoint e titoli HTTP, dati dei certificati TLS, informazioni sull'identità SSH ed evidenze tecnologiche normalizzate.
I servizi sconosciuti restano sconosciuti quando RXScan non dispone di evidenze sufficienti per identificarli.
Nessuna autenticazione è richiesta per queste probe di identificazione.
La ricerca per username è disponibile tramite:
rxscan search --username exampleuser
L'output normale si concentra su risultati positivi e incerti utili invece di stampare ogni risultato negativo del provider.
Un risultato può distinguere tra un profilo osservato, un'altra risorsa osservata e una posizione candidata non confermata.
Ad esempio:
FINDINGS
✓ provider / exampleuser
Profile https://example.test/exampleuser
high · 94% · public profile
? another-provider / exampleuser
Candidate https://example.test/u/exampleuser
low · 25% · weak evidence
Le etichette sono intenzionali:
| Etichetta | Significato |
|---|---|
Profile | profilo pubblico specifico dell'identità osservato |
Resource | risorsa specifica dell'identità osservata che non è necessariamente un profilo pubblico |
Candidate | posizione specifica dell'identità che non è stata confermata |
Le homepage generiche dei provider o gli endpoint API non vengono presentati come URL di profilo confermati.
RXScan mantiene inoltre distinti gli esiti dei provider come bloccato, rate-limited, sconosciuto, errore e non scansionato, anziché convertirli in risultati falsi negativi.
Mostra l'insieme completo dei risultati umani con:
rxscan search --username exampleuser --all
Mostra ulteriori dettagli di esecuzione e classificazione con:
rxscan search --username exampleuser --explain
I risultati pubblici possono essere elaborati attraverso la pipeline di indagine e correlazione di RXScan:
rxscan investigate --username exampleuser
La vista predefinita si concentra su account, URL utili, affidabilità e relazioni significative.
Le risorse web secondarie come JavaScript statico, fogli di stile, font e immagini vengono conservate quando pertinenti alle evidenze sottostanti, ma non dominano il report umano predefinito.
Le viste dettagliate possono esporre una maggiore quantità di dati sulle relazioni raccolte.
L'indagine rimane passiva per impostazione predefinita. Scoprire un target di rete tramite evidenze pubbliche non autorizza né attiva automaticamente una scansione di rete.
RXScan memorizza le osservazioni come evidenze tipizzate utilizzate dai suoi percorsi di reporting, indagine, grafo, cronologia e analisi.
Diverse regole sono applicate deliberatamente in tutto il progetto: