lab.m8d.io
Panel/Seguridad/Escaner de Puertos

Escaner de Puertos

Puertos abiertos y servicios activos

Seguridad
Acerca de esta herramienta

El Escáner de Puertos de lab.m8d.io realiza un escaneo TCP Connect contra cualquier host público, verificando hasta 200 puertos simultáneamente. Identifica puertos abiertos, servicios asociados (HTTP, SSH, SMTP, bases de datos, etc.), captura banners de servicio cuando están disponibles, mide la latencia de cada conexión y genera una evaluación de seguridad automática que alerta sobre servicios de alto riesgo expuestos a Internet.

Cómo funciona el escaneo TCP Connect

El escaneo TCP Connect es el método de escaneo de puertos más fiable y ampliamente utilizado. Funciona completando el handshake TCP de tres vías (SYN → SYN-ACK → ACK) contra cada puerto objetivo: • Puerto abierto — Si el servidor responde con SYN-ACK, el handshake se completa exitosamente y el puerto se marca como abierto. El escáner intenta leer datos iniciales (banner) durante 500ms antes de cerrar la conexión. • Puerto cerrado — Si el servidor responde con RST (Reset), el puerto está cerrado — el servicio no está escuchando. El tiempo de respuesta es típicamente muy rápido (< 10ms en redes locales). • Puerto filtrado — Si no hay respuesta dentro del timeout de 3 segundos, el puerto se considera filtrado. Esto generalmente indica que un firewall está descartando los paquetes silenciosamente (DROP) en lugar de rechazarlos (REJECT). • Escaneo en lotes — Para optimizar velocidad sin saturar la red, los puertos se escanean en lotes paralelos de 15 conexiones simultáneas. Esto permite escanear los 25 puertos más comunes en 3-5 segundos típicamente. • Captura de banner — Cuando un puerto está abierto, el escáner espera brevemente por datos que el servicio envíe automáticamente (banner). Muchos servicios como SSH, SMTP, FTP y MySQL envían un banner de identificación al conectarse, lo que permite identificar la versión exacta del software.

Presets de puertos disponibles

La herramienta incluye cinco perfiles de escaneo predefinidos, además de la opción de especificar puertos personalizados: • Top 25 — Los 25 puertos más comúnmente encontrados abiertos en Internet: FTP (21), SSH (22), Telnet (23), SMTP (25), DNS (53), HTTP (80), POP3 (110), IMAP (143), HTTPS (443), SMB (445), bases de datos y más. Este es el preset por defecto y cubre la gran mayoría de servicios que se encontrarán en un servidor típico. • Web — Puertos relacionados con servidores web: HTTP (80), HTTPS (443), y puertos alternativos comunes como 8080, 8443, 3000, 4443, 8000 y 8888. Útil para identificar aplicaciones web en puertos no estándar. • Bases de datos — Puertos de sistemas de bases de datos populares: MSSQL (1433), Oracle (1521), MySQL (3306), PostgreSQL (5432), Redis (6379), Elasticsearch (9200), MongoDB (27017), CouchDB (5984) y Cassandra (9042). Una base de datos accesible desde Internet es una de las vulnerabilidades más críticas posibles. • Correo — Puertos de servicios de email: SMTP (25), POP3 (110), IMAP (143), SMTPS (465), Submission (587), IMAPS (993) y POP3S (995). Permite verificar qué protocolos de correo están habilitados y si usan cifrado TLS. • Acceso remoto — SSH (22), Telnet (23), RDP (3389), VNC (5900) y SSH alternativo (2222). Servicios de acceso remoto expuestos son objetivos prioritarios de ataques de fuerza bruta. • Personalizado — Permite especificar puertos individuales (80, 443, 8080) o rangos (8000-8100). Máximo 200 puertos por escaneo.

Evaluación de seguridad automática

El escáner genera alertas de seguridad basadas en los puertos abiertos encontrados: • Telnet (23) — Alerta crítica. Protocolo sin cifrado que transmite todo en texto plano, incluyendo credenciales. Reemplazado por SSH hace más de 20 años. • FTP (21) — Alerta crítica. Transmite credenciales en texto plano. Debe reemplazarse por SFTP (sobre SSH) o FTPS (FTP sobre TLS). • RDP (3389) — Alerta crítica. Remote Desktop expuesto a Internet es uno de los vectores de ataque más explotados. BlueKeep (CVE-2019-0708) y ataques de fuerza bruta son riesgos constantes. • SMB (445) — Alerta crítica. Protocolo SMB expuesto fue el vector de WannaCry, NotPetya y EternalBlue. Nunca debe ser accesible desde Internet. • Bases de datos expuestas — Alerta crítica. MySQL, PostgreSQL, MongoDB, Redis u Oracle accesibles públicamente. MongoDB sin autenticación fue responsable de la exposición de miles de millones de registros. • Solo HTTP sin HTTPS — Alerta informativa. El puerto 80 abierto sin 443 sugiere que el servidor no implementa cifrado TLS.

Limitaciones y consideraciones éticas

Esta herramienta está diseñada para uso legítimo — auditoría de tus propios servidores, verificación de configuraciones de firewall y evaluaciones de seguridad autorizadas: • TCP Connect únicamente — No realiza escaneos SYN stealth, UDP, ni técnicas avanzadas de evasión de firewalls. El escaneo TCP Connect es completamente legítimo y detectable por el servidor objetivo. • Timeout de 3 segundos — Un timeout conservador que evita falsos positivos pero puede marcar puertos filtrados como cerrados en redes con alta latencia. • Sin detección de versiones — Más allá de la captura de banner inicial, no se realizan fingerprinting de servicios ni detección activa de versiones como sí hace Nmap con scripts NSE. • Máximo 200 puertos — Limitación de seguridad para evitar escaneos masivos. Para un escaneo completo de los 65535 puertos, se recomienda usar herramientas como Nmap o Masscan en un entorno controlado. • Uso responsable — Escanear puertos de sistemas ajenos sin autorización puede ser ilegal en muchas jurisdicciones. Usa esta herramienta solo en dominios y servidores que administres o para los que tengas autorización explícita.

Preguntas frecuentes

¿Qué significa que un puerto esté 'abierto' vs 'cerrado'?
Un puerto abierto significa que hay un proceso (servicio) escuchando activamente en ese puerto y acepta conexiones TCP. El servidor responde con SYN-ACK al handshake. Un puerto cerrado significa que el sistema operativo está activo pero no hay ningún servicio escuchando — el servidor responde con RST (Reset). Un puerto filtrado (que esta herramienta muestra como cerrado por timeout) significa que un firewall está descartando los paquetes sin responder, lo que impide determinar si hay un servicio detrás.
¿Es ilegal escanear puertos?
La legalidad del escaneo de puertos varía por jurisdicción. En general, escanear tus propios sistemas es completamente legal. Escanear sistemas ajenos sin autorización puede considerarse acceso no autorizado o preparación para un ataque según las leyes de delitos informáticos de cada país (CFAA en EE.UU., Convenio de Budapest en Europa). En el contexto de penetration testing, el escaneo de puertos siempre requiere un contrato de autorización (Rules of Engagement) firmado por el propietario del sistema.
¿Por qué aparecen más puertos cerrados que abiertos?
Es completamente normal. Un servidor bien configurado solo tiene abiertos los puertos estrictamente necesarios para los servicios que ofrece. Un servidor web típico tendrá abiertos solo 80 (HTTP) y 443 (HTTPS), más posiblemente 22 (SSH) para administración. Todos los demás puertos deberían estar cerrados o filtrados por firewall. Ver muchos puertos abiertos, especialmente servicios como bases de datos o protocolos legacy (Telnet, FTP), es indicativo de una configuración de seguridad deficiente.
¿Qué es un banner de servicio y por qué es importante?
Un banner es la información que un servicio envía automáticamente al establecer una conexión TCP. Por ejemplo, un servidor SSH puede enviar 'SSH-2.0-OpenSSH_8.9p1', un servidor SMTP puede enviar '220 mail.example.com ESMTP Postfix'. Los banners revelan el software y versión exacta del servicio, lo que permite buscar vulnerabilidades conocidas (CVEs) para esa versión específica. Por esta razón, muchos administradores configuran banners personalizados o los eliminan completamente como medida de hardening.
¿Esta herramienta puede detectar si hay un firewall?
Indirectamente, sí. Si un puerto no responde dentro del timeout de 3 segundos (ni SYN-ACK ni RST), es probable que haya un firewall con política DROP. Un puerto cerrado sin firewall responde inmediatamente con RST. Sin embargo, esta herramienta no distingue explícitamente entre 'cerrado' y 'filtrado' en la interfaz — ambos se muestran como cerrados. Para distinguirlos, herramientas como Nmap con escaneo SYN (-sS) pueden diferenciar los estados filtered, closed y open|filtered.