Skip to content

Puertos y servicios por defecto

PuertoServicio
25SMTP
22SSH
110POP3
143IMAP
80HTTP
443HTTPS
137 138, 139NETBIOS
115SFTP
23Telnet
21FTP
3389RDP
3306MySQL
1433MS SQL Server

Nmap

Escaneo de Top 10 puertos

c
sudo nmap 10.129.2.28 --top-ports=10 

Starting Nmap 7.80 ( https://nmap.org ) at 2020-06-15 15:36 CEST
Nmap scan report for 10.129.2.28
Host is up (0.021s latency).

PORT     STATE    SERVICE
21/tcp   closed   ftp
22/tcp   open     ssh
23/tcp   closed   telnet
25/tcp   open     smtp
80/tcp   open     http
110/tcp  open     pop3
139/tcp  filtered netbios-ssn
443/tcp  closed   https
445/tcp  filtered microsoft-ds
3389/tcp closed   ms-wbt-server
MAC Address: DE:AD:00:00:BE:EF (Intel Corporate)

Enumeración de puertos abiertos UDP

c
sudo nmap 10.129.2.28 -F -sU

Starting Nmap 7.80 ( https://nmap.org ) at 2020-06-15 16:01 CEST
Nmap scan report for 10.129.2.28
Host is up (0.059s latency).
Not shown: 95 closed ports
PORT     STATE         SERVICE
68/udp   open|filtered dhcpc
137/udp  open          netbios-ns
138/udp  open|filtered netbios-dgm
631/udp  open|filtered ipp
5353/udp open          zeroconf
MAC Address: DE:AD:00:00:BE:EF (Intel Corporate)

Nmap done: 1 IP address (1 host up) scanned in 98.07 seconds
c
sudo nmap 10.129.2.28 -sU -Pn -n --disable-arp-ping --packet-trace -p 137 --reason 

Starting Nmap 7.80 ( https://nmap.org ) at 2020-06-15 16:15 CEST
SENT (0.0367s) UDP 10.10.14.2:55478 > 10.129.2.28:137 ttl=57 id=9122 iplen=78
RCVD (0.0398s) UDP 10.129.2.28:137 > 10.10.14.2:55478 ttl=64 id=13222 iplen=257
Nmap scan report for 10.129.2.28
Host is up, received user-set (0.0031s latency).

PORT    STATE SERVICE    REASON
137/udp open  netbios-ns udp-response ttl 64
MAC Address: DE:AD:00:00:BE:EF (Intel Corporate)

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

/dev/tcp

  • Para la enumeracion de puertos, vamos uso del recurso de /dev/tcp que aun que en la consola nos dirá que no exista, este si existe (o almenos entiendandolo asi, que esto tiene otra explicación pero ese no es la finalidad de este post)

Si nosotros enviamos un comentario vacio a la ruta /dev/tcp/192.168.98.1/53 con la dirección ip y el puerto, no tendremos ningun ouput si el puerto esta activo, pero podremos ver el codigo de estado. El codigo de estado indica si lo que se ha ejecutado se llevó acabo correctamente, esto nos servira para saber si el puerto esta o no abierto.

  • Ejemplo de cuando el puerto 53 esta activo
c
❯ echo '' > /dev/tcp/192.168.98.1/53
❯ echo $?
0
  • Ejemplo de cuando el puerto 577 no esta activo
c
❯ echo '' > /dev/tcp/192.168.98.1/577
bash: connect: Conexión rehusada
bash: /dev/tcp/192.168.98.1/53444: Conexión rehusada
❯ echo $?

Una vez entendido el concepto, podemos agregar 2>/dev/null para redirigir el output del stderr(Los mesajes de los errores). Entonces tendremos las dos formas:

  1. Cuando el puerto no esta activo

  2. El puerto esta activo