En esta clase vamos a repasar los protocolos de red esenciales que necesitas conocer si trabajas en ciberseguridad. Hemos visto que los protocolos son reglas estándar que definen los formatos de los mensajes, el orden de los intercambios de mensajes y las respuestas esperadas. Son como el lenguaje y la gramática de internet para asegurar que diferentes dispositivos y sistemas puedan entenderse entre sí.
En ciberseguridad, y bueno, realmente en toda la tecnología, estamos en contacto constante con protocolos de red.
Cuando navegamos por internet, estamos utilizando un protocolo e incluso, cuando nos conectamos a nuestro WiFi. Es por eso que es muy importante conocer los protocolos de red.
Obviamente, no puedo enseñarte todos, porque hay muchísimos pero si los que tendrás que auditar, utilizar y analizar para hacer hacking y ciberseguridad.
Empecemos con el protocolo FTP.
File Transfer Protocol (FTP) Puerto 21
FTP (Protocolo de Transferencia de Archivos) es un protocolo estándar de red que se utiliza para transferir archivos entre un cliente y un servidor dentro de una red.
Utiliza dos puertos: el 20 para la transferencia de datos y el 21 para el control (comandos y respuestas).
Permite subir, descargar, eliminar y gestionar archivos en un servidor remoto, pero no cifra el tráfico, eso quiere decir que todo navega en texto plano, vamos que si pones un usuario y contraseña, vamos a poder ver que usuario y contraseña utilizo.
Secure File Transfer Protocol (SFTP) Puerto 22
SFTP (Protocolo Seguro de Transferencia de Archivos) es una extensión de SSH que proporciona un método seguro para transferir archivos.
Utiliza el puerto 22 de SSH para garantizar que todos los datos y comandos estén cifrados, ofreciendo una alternativa más segura al FTP tradicional. Además, permite acceder, transferir y gestionar archivos de forma segura sobre cualquier canal de datos confiable.
Secure Shell (SSH) Puerto 22
SSH, es un protocolo de red criptográfico que permite operar servicios de red de forma segura sobre una red no confiable.
Utiliza el puerto 22 para establecer un canal cifrado en una arquitectura cliente-servidor, y soporta funciones como inicio de sesión seguro, transferencia de archivos (mediante SCP o SFTP) y reenvío de puertos. Todo el tráfico, incluidas las contraseñas, se cifran, lo que protege contra escuchas, secuestros de conexión y otros ataques a nivel de red.
Este puerto y servicio SSH, lo utilizaremos usualmente para conectarnos a un equipo de forma segura.
Telnet Puerto 23
Telnet es un protocolo de red que permite la comunicación interactiva basada en texto entre dispositivos, utilizando una conexión de terminal virtual. Opera en el puerto 23 y no cifra los datos, lo que incluye las credenciales, haciéndolo vulnerable a intercepciones.
Por esta razón, ha sido reemplazado en gran medida por SSH para accesos remotos más seguros.
Simple Mail Transfer Protocol (SMTP) Puerto 25
SMTP (Protocolo Simple de Transferencia de Correo) es el protocolo estándar para enviar correos electrónicos a través de Internet.
Utiliza el puerto 25 para enviar mensajes desde un cliente de correo a un servidor, o entre servidores.
Se utiliza solo para el envío de correos, mientras que la recepción se maneja con otros protocolos como POP3 o IMAP.
Domain Name System (DNS) Puerto 53
DNS (Sistema de Nombres de Dominio) es un sistema jerárquico y descentralizado que asigna nombres a dispositivos, servicios y recursos conectados a Internet o a redes privadas.
Utiliza el puerto 53 y puede operar con los protocolos TCP o UDP para realizar consultas.
Su función principal es traducir nombres de dominio fáciles de recordar (como google.com) en direcciones IP, necesarias para localizar dispositivos y servicios dentro de una red.
Cuando nosotros accedemos a google.com, el protocolo DNS entra en juego ya que traduce google.com a la dirección IP de google.
Algunos de estos ejemplos, los veremos en la última clase de este módulo.
Dynamic Host Configuration Protocol (DHCP) – Puertos 67 (servidor) y 68 (cliente)
DHCP (Protocolo de Configuración Dinámica de Host) permite asignar automáticamente direcciones IP y otros parámetros de red a los dispositivos de una red.
Funciona sobre UDP usando el puerto 67 para el servidor y el 68 para el cliente.
Gracias a DHCP, los dispositivos pueden conectarse a una red y recibir automáticamente una IP válida, máscara de subred, puerta de enlace y DNS, sin necesidad de configuración manual.
En cambio, si este protocolo no existiese, cada vez que nos conectemos a una red WiFi, por ejemplo, tendríamos que poner manualmente la IP, máscara de red, etc.
Hypertext Transfer Protocol (HTTP) – Puerto 80
HTTP (Protocolo de Transferencia de Hipertexto) es la base de la comunicación en la Web.
Opera sobre TCP, usando el puerto 80, y permite la transferencia de documentos hipermedia como páginas HTML entre navegadores y servidores. Es un protocolo sin estado, lo que significa que no guarda información entre una petición y otra.
Por eso, cuando navegamos a una página web, vemos el http:// o el https://, porque se está utilizando el protocolo 80 o el 443, respectivamente. La diferencia entre el puerto 80 y 443, es que https es seguro, cifra toda la comunicación.
Network Time Protocol (NTP) Puerto 123
NTP (Protocolo de Tiempo de Red) se utiliza para sincronizar la hora de los dispositivos conectados a una red. Opera sobre el puerto UDP 123 y está diseñado para mantener la precisión a pesar de los retrasos en la red. Garantiza que todos los sistemas de una red compartan una hora exacta, lo cual es fundamental para la seguridad, los registros (logs) y la coordinación de procesos.
Simple Network Management Protocol (SNMP) Puertos 161 (comandos) y 162 (notificaciones)
SNMP (Protocolo Simple de Administración de Red) se utiliza para gestionar dispositivos en redes IP, como routers, switches o servidores. Usa el puerto UDP 161 para enviar comandos desde una estación de gestión a los dispositivos, y el puerto UDP 162 para que los dispositivos envíen respuestas o alertas. Permite a los administradores de red monitorizar el rendimiento, resolver problemas y planificar el crecimiento de la red.
Lightweight Directory Access Protocol (LDAP) Puerto 389
LDAP (Protocolo Ligero de Acceso a Directorios) permite consultar y modificar información en servicios de directorio distribuidos sobre redes IP. Funciona sobre TCP/UDP en el puerto 389 y se usa en sistemas como Microsoft Active Directory u OpenLDAP. Facilita la búsqueda, conexión y modificación de registros de usuarios, grupos y recursos dentro de una red.
Server Message Block (SMB) Puerto 445
SMB (Bloque de Mensajes del Servidor) es un protocolo usado para compartir archivos en red, utilizado principalmente por sistemas Windows. Opera en el puerto TCP 445 y permite leer, escribir, compartir archivos, imprimir y comunicarse entre procesos dentro de una red.
MySQL Puerto 3306
MySQL es un sistema de gestión de bases de datos relacional muy popular y de código abierto. Utiliza el puerto TCP 3306 para establecer la comunicación entre clientes y servidores MySQL. Este puerto permite gestionar bases de datos, ejecutar consultas y recuperar información, siendo esencial para aplicaciones que dependen de bases de datos MySQL.
Remote Desktop Protocol (RDP) Puerto 3389
RDP (Protocolo de Escritorio Remoto) es un protocolo de Microsoft que permite conectarse remotamente a otros equipos, principalmente con sistemas Windows. Opera sobre el puerto TCP 3389 y ofrece una interfaz gráfica para controlar otro equipo a través de la red. Se utiliza ampliamente en administración remota, teletrabajo y soporte técnico, proporcionando un acceso cifrado y seguro a escritorios y aplicaciones remotas.
Internet Control Message Protocol (ICMP)
ICMP (Protocolo de Mensajes de Control de Internet) se utiliza para enviar mensajes de diagnóstico y control entre dispositivos de red. Es clave para la gestión y resolución de problemas de red, como avisos de error (host no disponible) o pruebas operativas como el ping (peticiones y respuestas de eco). Opera directamente sobre IP y no transporta datos de aplicaciones, solo información sobre el estado de la red.
Que estos servicios tengan ese número asociado no significa que siempre nos los encontremos en ese formato. Por ejemplo, puedo configurar un servidor HTTP para que funcione por el puerto 8080, 8585, etc. Como normal general, lo veremos con su número estándar.