¿Usar Nmap para escanear el reenvío de puertos?

6

He habilitado el reenvío de puertos en mi enrutador para hacer algunas pruebas con Nmap. La dirección IP interna 10.0.0.10 en el puerto 4245 se está enviando a mi dirección IP pública en el puerto 4245. Puedo acceder a esta con x.x.x.x:4245

Sin embargo, Nmap está reportando que el puerto 4245 está cerrado. Para estar seguro, he especificado el número de puerto y deshabilitado el descubrimiento del host. He intentado esto tanto a través de TCP y UDP. Los comandos que he probado son sudo nmap -sS -Pn -p 4245 x.x.x.x y sudo nmap -sU -Pn -p 4245 x.x.x.x

Ambos resultados muestran el puerto 4245 como cerrado.

Nota: x.x.x.x es mi dirección IP pública.

    
pregunta Gavin Youker 20.12.2016 - 06:24
fuente

2 respuestas

2

Respuesta larga, consulte TL; DR a continuación.

No creo que sea un problema de Nmap, sino un problema de reenvío de puertos. Me imagino que está escaneando desde la red local (si ese no es el caso, ignórelo).

El reenvío de puertos a menudo no funciona desde la red local, por una razón muy simple. Supongamos que esta es su red:

(A)--+
     |                    (           )
     |---(Rpr--R--Rpu)---(  Internet   )---(X)
     |                    (           )
(B)--+

A y B son dos computadoras en su red local, ambas con direcciones IP privadas, R es su enrutador (que hace el NAT y el reenvío de puertos), con una dirección pública (Rpu) y una privada (Rpr) en su LAN . X es una computadora en Internet, con una dirección pública.

Ha configurado el reenvío de puertos en R para que los paquetes que llegan a Rpu: 4245 (esto significa que la dirección IP Rpu, puerto 4245) se reenvíen a A: 4245.

Cuando X envía un paquete a Rpu: 4245, llega a R, que traduce la dirección de destino a A: 4245 y enruta el paquete a A. Cuando A responde, envía un paquete de A: 4245 a X. Esto el paquete se envía a R ya que su destino está fuera de la LAN y R es la puerta de enlace. R cambia la fuente de A: 4245 a Rpu: 4245, y enruta el paquete, que llega a X como un paquete desde Rpu: 4245 a X, todo está bien.

Ahora, cuando B envía un paquete a Rpu: 4245, lo envía a R (porque Rpu está fuera de la LAN y R es el enrutador). Supongamos que R hace el reenvío de puertos de todos modos, establece el destino en A: 4245 y enruta el paquete (de B a A: 4245) a A. Cuando A responde, envía un paquete de A: 4245 a B. Y esta vez no enviará el paquete a R sino directamente a B, ya que B está en la LAN. El paquete llega a B como un paquete de A: 4245 a B, y por lo tanto no puede verse como la respuesta al paquete de B a Rpu: 4245, la dirección de origen no coincide.

Esto podría funcionar si R también cambiara la dirección de origen a Rpr (o Rpu, o cualquier dirección fuera de la LAN), porque en ese caso, A enviaría las respuestas a R y R podría traducir las direcciones a la inversa, pero eso es Probablemente no sea el caso.

TL; DR. Ejecute sus pruebas desde una computadora fuera de su LAN con: nmap -sP4245 -p 4245 x.x.x.x ( -sP4245 le indica a Nmap que use un paquete SYN en el puerto 4245 durante la exploración de ping). Desde su LAN, solo puede verificar que el puerto esté abierto al escanear (con las mismas opciones) su dirección privada, pero eso deja la configuración de reenvío de puerto sin probar.

    
respondido por el Pierre 23.12.2016 - 19:16
fuente
0

Si nmap informa un puerto TCP a closed , esto significa que obtuvo una respuesta (RST) cuando intentó iniciar una conexión al servicio, si no hubiera recibido respuesta, habría obtenido un filtered de resultados que generalmente significa "No obtuve nada por lo que no sé lo que está pasando".

Por lo general, esto ocurre cuando el puerto está abierto pero no hay nada que se esté ejecutando (o que no se esté ejecutando en él que responda a la solicitud recibida)

Un par de pensamientos sobre tu problema

1) ¿Desde dónde escanea el puerto? Por lo general, no intentaría escanear su dirección IP externa desde dentro de la red, es probable que NAT se confunda por eso.

2) ¿Cuáles son los resultados si intenta escanear la dirección IP interna (10.0.0.10) desde la red interna? ¿Recibe una respuesta abierta en ese puerto?

    
respondido por el Rоry McCune 23.12.2016 - 13:28
fuente

Lea otras preguntas en las etiquetas