
CLI en Rust para reconocimiento de red acotado: descubrimiento de puertos TCP/UDP, identificación de servicios, recopilación de evidencia DNS/TLS/HTTP y búsqueda de nombres de usuario en fuentes públicas con correlación.
Motor de reconocimiento y evidencias
Reconocimiento acotado y correlación de evidencias en Rust.
RXScan combina reconocimiento de red, búsqueda en fuentes públicas, investigación y correlación de evidencias en una única CLI.
Puede descubrir hosts y puertos, identificar los servicios observados, recopilar evidencias acotadas de protocolos y web, buscar en proveedores públicos, correlacionar hallazgos y persistir los resultados para su posterior análisis y comparación.
RXScan es intencionadamente conservador respecto a lo que informa. Un número de puerto no identifica un servicio, un éxito HTTP no confirma por sí mismo una cuenta, y la cobertura incompleta se mantiene distinta de un resultado negativo.
Compilar e instalar desde el repositorio:
git clone https://github.com/DarkRX1/RXScan.git
cd RXScan
cargo install --path . --locked
Comprueba la compilación instalada:
rxscan --version
rxscan --help
Ejecuta un escaneo de reconocimiento normal:
rxscan example.test
Buscar en fuentes públicas:
rxscan search --username exampleuser
Investigar y correlacionar hallazgos públicos:
rxscan investigate --username exampleuser
Esos son los tres puntos de entrada principales:
rxscan TARGET
rxscan search ...
rxscan investigate ...
El escaneo predeterminado utiliza el flujo de trabajo recon, nivel 3 y ajustes de ejecución equilibrados.
rxscan example.test
Especifique los puertos cuando desee una selección exacta de puertos:
rxscan example.test --ports 22,80,443
rxscan example.test --ports 1-1024
rxscan example.test --ports 22,80,443,8000-8100
Escanee el rango completo de puertos TCP:
rxscan example.test --all-ports
El descubrimiento UDP es explícito:
rxscan example.test --udp
Muestra el plan efectivo y el detalle de ejecución adicional:
rxscan example.test --explain
RXScan admite:
rxscan example.test --scan-mode auto
rxscan example.test --scan-mode connect
rxscan example.test --scan-mode syn
El escaneo de conexión TCP es la ruta de escaneo portátil que RXScan utiliza actualmente en su plataforma compatible.
El escaneo SYN sin procesar está disponible para IPv4 en Linux cuando la capacidad requerida está disponible. Cuando la ruta SYN solicitada no se puede utilizar, RXScan informa el fallback efectivo en lugar de presentar silenciosamente un escaneo de conexión como SYN.
El escaneo UDP utiliza sondas nativas acotadas y sigue siendo opcional.
El descubrimiento UDP actual con reconocimiento de protocolo incluye sondas pequeñas para servicios como DNS, NTP y SSDP.
El silencio UDP no se informa como prueba de que un puerto esté abierto o cerrado. RXScan conserva la incertidumbre resultante de open|filtered.
La detección de SO es explícita y respaldada por evidencia, nunca una suposición a partir de una sola pista:
rxscan example.test --os
--os ejecuta un plan de sondeo acotado por host dentro del alcance (como máximo 6 sondeos TCP/ICMP normales, reutilizando puertos que el escaneo ya conoce) y explica cada candidato: evidencia coincidente, evidencia en conflicto, evidencia no disponible, cobertura y procedencia. Sin la capacidad de paquetes sin procesar, se degrada honestamente a evidencia pasiva con confianza reducida. Unknown es un resultado de primera clase cuando la evidencia es insuficiente. Consulte docs/OS_FINGERPRINTING.md para el modelo de evidencia, las limitaciones y la realidad actual del corpus.
RXScan identifica servicios a partir del comportamiento de protocolo observado en lugar de asignar un servicio únicamente por su número de puerto.
La identificación nativa actual cubre protocolos comunes, incluidos:
Según el protocolo y la evidencia disponible, las observaciones pueden incluir información de producto/versión, banners, endpoints y títulos HTTP, datos de certificados TLS, información de identidad SSH y evidencia tecnológica normalizada.
Los servicios desconocidos permanecen desconocidos cuando RXScan no tiene evidencia suficiente para identificarlos.
No se requiere autenticación para estas sondas de identificación.
La búsqueda de nombres de usuario está disponible a través de:
rxscan search --username exampleuser
La salida normal se centra en hallazgos positivos y de incertidumbre útiles en lugar de imprimir cada resultado negativo del proveedor.
Un hallazgo puede distinguir entre un perfil observado, otro recurso observado y una ubicación candidata no confirmada.
Por ejemplo:
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
Las etiquetas son intencionales:
| Etiqueta | Significado |
|---|---|
Profile | perfil público específico de la identidad observado |
Resource | recurso específico de la identidad observado que no es necesariamente un perfil público |
Candidate | ubicación específica de la identidad que no ha sido confirmada |
Las páginas de inicio genéricas de proveedores o los endpoints de API no se presentan como URL de perfil confirmadas.
RXScan también mantiene distintos los resultados de los proveedores, como bloqueado, limitado por tasa, desconocido, error y no escaneado, en lugar de convertirlos en resultados falsos negativos.
Muestra el conjunto completo de resultados humanos con:
rxscan search --username exampleuser --all
Muestra detalles adicionales de ejecución y clasificación con:
rxscan search --username exampleuser --explain
Los hallazgos públicos pueden pasarse a través del pipeline de investigación y correlación de RXScan:
rxscan investigate --username exampleuser
La vista predeterminada se centra en cuentas, URL útiles, confianza y relaciones significativas.
Los recursos web secundarios, como JavaScript estático, hojas de estilo, fuentes e imágenes, se conservan cuando son relevantes para la evidencia subyacente, pero no dominan el informe humano predeterminado.
Las vistas detalladas pueden exponer más de los datos de relación recopilados.
La investigación sigue siendo pasiva de forma predeterminada. Descubrir un objetivo de red mediante evidencia pública no autoriza ni desencadena automáticamente un escaneo de red.
RXScan almacena las observaciones como evidencia tipada utilizada por sus rutas de generación de informes, investigación, grafo, historial y análisis.
Varias reglas se aplican deliberadamente en todo el proyecto: