← Teoría

Practica 23: Diagnostico de Red y Seguridad Basica

Modulo: MF0219_2 — Instalacion y Configuracion de Sistemas Operativos
Unidad Formativa: UF0853 — Explotacion de las funcionalidades del sistema microinformatico
Bloque: Comunicacion por red y comparticion de recursos
Duracion estimada: 5 horas (1 sesion)
Modalidad: Trabajo individual / parejas
Herramientas: Oracle VirtualBox + VMs + Nmap + Wireshark
Preparacion previa: Antes de la sesion, descarga e instala Nmap (nmap.org) y Wireshark (wireshark.org) en tu equipo anfitrion o en la VM con Windows. Ambas herramientas son gratuitas. Tenerlas instaladas de antemano te permitira aprovechar al maximo el tiempo de la practica.
Escenario: Acabas de incorporarte como tecnico informatico en una pequena empresa. Tu responsable te pide que realices una auditoria basica de la red local: descubrir los dispositivos conectados, comprobar que puertos tienen abiertos, verificar que las reglas del firewall son correctas y capturar trafico de red para detectar posibles anomalias. Deberas documentar todo el proceso y tus hallazgos.

Objetivos de la practica

  • Utilizar netstat y ss para visualizar conexiones activas y puertos en escucha.
  • Trazar rutas de red con tracert (Windows) y traceroute (Linux) para analizar el camino de los paquetes.
  • Escanear redes y descubrir hosts y servicios con Nmap.
  • Configurar reglas de firewall en Windows Defender Firewall y ufw (Linux).
  • Realizar capturas basicas de trafico de red con Wireshark y aplicar filtros de analisis.

Requisitos previos

Antes de comenzar, verifica que cumples todos los requisitos marcando cada casilla:

Parte 1 — Conexiones activas (30 min)

Vamos a examinar las conexiones de red activas y los puertos en escucha en ambos sistemas operativos.

1.1 Conexiones en Windows con netstat

  1. Abre una terminal de comandos como administrador en la VM con Windows.
  2. Ejecuta netstat -an para ver todas las conexiones y puertos en escucha.
  3. Ejecuta netstat -ano para ver ademas el PID del proceso asociado a cada conexion.
  4. Ejecuta netstat -ab para ver el nombre del programa asociado (requiere administrador).
  5. Identifica las conexiones con estado ESTABLISHED (activas) y LISTENING (en escucha).
C:\> netstat -an
Proto  Local Address          Foreign Address        State
TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
TCP    192.168.1.10:49712     142.250.185.14:443     ESTABLISHED
TCP    192.168.1.10:50234     20.189.173.1:443       ESTABLISHED

C:\> netstat -ano
Proto  Local Address          Foreign Address        State           PID
TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       1012
TCP    192.168.1.10:49712     142.250.185.14:443     ESTABLISHED     5840

1.2 Conexiones en Linux con ss

  1. Abre un terminal en la VM con Ubuntu.
  2. Ejecuta ss -tuln para ver puertos TCP y UDP en escucha.
  3. Ejecuta ss -tunap para ver todas las conexiones con el proceso asociado.
  4. Compara los resultados con lo obtenido en Windows.
$ ss -tuln
Netid  State   Recv-Q  Send-Q  Local Address:Port   Peer Address:Port
tcp    LISTEN  0       128     0.0.0.0:22            0.0.0.0:*
tcp    LISTEN  0       5       127.0.0.1:631         0.0.0.0:*
udp    UNCONN  0       0       0.0.0.0:5353          0.0.0.0:*

$ ss -tunap
Netid State  Recv-Q Send-Q Local Address:Port  Peer Address:Port  Process
tcp   ESTAB  0      0      192.168.1.20:54312  142.250.185.14:443 users:(("firefox",pid=2345,fd=87))

1.3 Tabla de conexiones encontradas

Rellena la tabla con al menos 6 conexiones relevantes (3 de Windows y 3 de Linux):

SO Puerto local Estado Servicio / Programa Direccion remota

Captura de pantalla — Conexiones activas

📷

Haz clic o arrastra una captura de pantalla de netstat o ss

Parte 2 — Trazar rutas de red (20 min)

Utilizaremos tracert (Windows) y traceroute (Linux) para ver el camino que siguen los paquetes hasta llegar a su destino.

2.1 Trazar rutas desde Windows

  1. Abre un terminal de comandos en la VM con Windows.
  2. Ejecuta tracert 8.8.8.8 (DNS de Google).
  3. Ejecuta tracert google.es.
  4. Ejecuta tracert amazon.es.
  5. Anota el numero de saltos y los tiempos de respuesta de cada ruta.
C:\> tracert 8.8.8.8
Tracing route to dns.google [8.8.8.8] over a maximum of 30 hops:
  1    <1 ms    <1 ms    <1 ms   192.168.1.1
  2     5 ms     4 ms     5 ms   10.0.0.1
  3    12 ms    11 ms    12 ms   172.16.0.1
  ...
  8    15 ms    14 ms    15 ms   dns.google [8.8.8.8]
Trace complete.

2.2 Trazar rutas desde Linux

  1. Abre un terminal en la VM con Ubuntu.
  2. Ejecuta traceroute 8.8.8.8 (si no esta instalado: sudo apt install traceroute -y).
  3. Ejecuta traceroute google.es y traceroute amazon.es.
  4. Compara los resultados con los obtenidos en Windows.

2.3 Tabla de resultados de traceroute

Destino SO N. saltos Tiempo medio Primer salto (gateway)
8.8.8.8 Windows
8.8.8.8 Linux
google.es Windows
google.es Linux
amazon.es Windows
amazon.es Linux

Captura de pantalla — Traceroute

📷

Haz clic o arrastra una captura de pantalla de tracert o traceroute

Parte 3 — Escaneo de red con Nmap (60 min)

Nmap (Network Mapper) es una herramienta gratuita y de codigo abierto para descubrimiento de red y auditoria de seguridad. Descargala desde nmap.org.

IMPORTANTE — Etica y legalidad: Escanear redes y puertos sin autorizacion es ilegal en muchos paises. En esta practica SOLO escanearemos nuestra propia red local y nuestras maquinas virtuales. Nunca escanees redes ajenas, servidores de Internet u ordenadores de terceros sin permiso explicito por escrito.

3.1 Instalacion de Nmap

  1. Windows: Descarga el instalador desde nmap.org/download y ejecutalo. Incluye Zenmap (interfaz grafica).
  2. Linux: Ejecuta sudo apt install nmap -y en el terminal.
  3. Verifica la instalacion ejecutando nmap --version en ambos sistemas.

3.2 Descubrimiento de hosts en la red

  1. Primero, averigua tu IP y la subred con ipconfig (Windows) o ip a (Linux).
  2. Ejecuta nmap -sn 192.168.1.0/24 (ajusta la subred a tu caso) para descubrir hosts activos sin escanear puertos.
  3. Anota todos los dispositivos encontrados en la tabla.
$ nmap -sn 192.168.1.0/24
Starting Nmap 7.94 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.0015s latency).
Nmap scan report for 192.168.1.10
Host is up (0.00035s latency).
Nmap scan report for 192.168.1.20
Host is up (0.00042s latency).
Nmap done: 256 IP addresses (3 hosts up) scanned in 2.45 seconds

Tabla de hosts descubiertos

IP Hostname (si aparece) Tipo de dispositivo Latencia

3.3 Escaneo de puertos de un host especifico

  1. Elige una de tus VMs como objetivo (por ejemplo, la VM con Windows).
  2. Ejecuta nmap [IP_de_la_VM] para un escaneo basico de los 1000 puertos mas comunes.
  3. Ejecuta nmap -p 1-65535 [IP_de_la_VM] para un escaneo completo de todos los puertos (tarda mas).
  4. Anota los puertos abiertos en la tabla.
$ nmap 192.168.1.10
Starting Nmap 7.94 ( https://nmap.org )
Nmap scan report for 192.168.1.10
PORT      STATE  SERVICE
22/tcp    open   ssh
80/tcp    open   http
135/tcp   open   msrpc
445/tcp   open   microsoft-ds
3389/tcp  open   ms-wbt-server

Tabla de puertos abiertos

Puerto Protocolo Estado Servicio Necesario? (Si/No)

3.4 Deteccion de versiones de servicios

  1. Ejecuta nmap -sV [IP_de_la_VM] para detectar la version de los servicios en los puertos abiertos.
  2. Compara los resultados con el escaneo basico anterior.
  3. Documenta las versiones encontradas.
$ nmap -sV 192.168.1.10
PORT      STATE SERVICE       VERSION
22/tcp    open  ssh           OpenSSH 8.9p1 Ubuntu 3ubuntu0.6
80/tcp    open  http          Apache httpd 2.4.52
135/tcp   open  msrpc         Microsoft Windows RPC
445/tcp   open  microsoft-ds  Microsoft Windows 10 SMB
3389/tcp  open  ms-wbt-server Microsoft Terminal Services

Tabla de versiones detectadas

Puerto Servicio Version detectada

Captura de pantalla — Escaneo Nmap

📷

Haz clic o arrastra una captura de pantalla del escaneo con Nmap

Parte 4 — Firewall en Windows (40 min)

Vamos a trabajar con Windows Defender Firewall con Seguridad Avanzada para crear, probar y eliminar reglas de firewall.

4.1 Abrir la consola de Firewall avanzado

  1. Pulsa Win + R y escribe wf.msc, luego pulsa Enter.
  2. Se abrira la ventana de Windows Defender Firewall con Seguridad Avanzada.
  3. Observa las tres secciones principales: Reglas de entrada, Reglas de salida y Reglas de seguridad de conexion.
  4. Examina algunas de las reglas existentes para familiarizarte con la interfaz.

4.2 Crear regla para bloquear puerto 80 (HTTP)

  1. Haz clic en Reglas de entrada en el panel izquierdo.
  2. Haz clic en Nueva regla... en el panel derecho.
  3. Selecciona Puerto y haz clic en Siguiente.
  4. Selecciona TCP y escribe 80 en "Puertos locales especificos". Haz clic en Siguiente.
  5. Selecciona Bloquear la conexion. Haz clic en Siguiente.
  6. Deja marcados los tres perfiles (Dominio, Privado, Publico). Haz clic en Siguiente.
  7. Escribe un nombre descriptivo: Practica23 - Bloquear HTTP puerto 80. Haz clic en Finalizar.

4.3 Probar la regla

  1. Abre un navegador en la VM con Windows e intenta acceder a una pagina web HTTP (no HTTPS).
  2. Ejecuta nmap -p 80 [IP_Windows] desde la VM con Linux para verificar que el puerto aparece como filtered.
  3. Documenta el resultado.

4.4 Crear regla para permitir un programa especifico

  1. Haz clic en Reglas de entrada > Nueva regla...
  2. Selecciona Programa y haz clic en Siguiente.
  3. Selecciona Esta ruta de acceso del programa y busca un ejecutable (por ejemplo, C:\Windows\System32\mspaint.exe).
  4. Selecciona Permitir la conexion. Haz clic en Siguiente.
  5. Deja los tres perfiles marcados. Haz clic en Siguiente.
  6. Nombre: Practica23 - Permitir Paint. Haz clic en Finalizar.

4.5 Eliminar las reglas de prueba

  1. En Reglas de entrada, busca las reglas que creaste (busca "Practica23").
  2. Haz clic derecho sobre cada regla y selecciona Eliminar.
  3. Confirma la eliminacion.
  4. Verifica que las reglas ya no aparecen en la lista.

Tabla de reglas creadas y probadas

Regla Tipo Accion Resultado de la prueba
Bloquear puerto 80 Puerto / TCP Bloquear
Permitir programa Programa Permitir
Eliminar reglas - Eliminar

Captura de pantalla — Firewall Windows

📷

Haz clic o arrastra una captura de pantalla del firewall de Windows (wf.msc)

Parte 5 — Firewall en Linux con ufw (30 min)

ufw (Uncomplicated Firewall) es la herramienta de firewall por defecto en Ubuntu. Proporciona una interfaz sencilla para gestionar reglas de iptables.

5.1 Activar y comprobar ufw

  1. Abre un terminal en la VM con Ubuntu.
  2. Ejecuta sudo ufw enable para activar el firewall (confirma con "y").
  3. Ejecuta sudo ufw status verbose para ver el estado actual y la politica por defecto.
$ sudo ufw enable
Firewall is active and enabled on system startup

$ sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

5.2 Crear reglas

  1. Ejecuta sudo ufw allow 22/tcp para permitir conexiones SSH.
  2. Ejecuta sudo ufw deny 80/tcp para bloquear conexiones HTTP entrantes.
  3. Ejecuta sudo ufw allow 443/tcp para permitir conexiones HTTPS.
  4. Ejecuta sudo ufw status numbered para ver las reglas con numeros.
$ sudo ufw allow 22/tcp
Rule added

$ sudo ufw deny 80/tcp
Rule added

$ sudo ufw allow 443/tcp
Rule added

$ sudo ufw status numbered
Status: active
     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     DENY IN     Anywhere
[ 3] 443/tcp                    ALLOW IN    Anywhere

5.3 Probar las reglas

  1. Desde la VM con Windows, ejecuta nmap -p 22,80,443 [IP_Linux].
  2. Verifica que el puerto 22 aparece como open, el 80 como filtered/closed y el 443 depende de si hay servicio escuchando.
  3. Documenta los resultados en la tabla.

5.4 Eliminar una regla

  1. Ejecuta sudo ufw status numbered para ver los numeros de cada regla.
  2. Ejecuta sudo ufw delete 2 para eliminar la regla que bloquea el puerto 80 (confirma con "y").
  3. Verifica con sudo ufw status que la regla se ha eliminado.

Tabla de comandos ufw y resultados

Comando Accion esperada Resultado obtenido
sudo ufw enable Activar el firewall
sudo ufw allow 22/tcp Permitir SSH
sudo ufw deny 80/tcp Bloquear HTTP
sudo ufw allow 443/tcp Permitir HTTPS
sudo ufw status numbered Ver reglas numeradas
sudo ufw delete 2 Eliminar regla 2

Captura de pantalla — ufw

📷

Haz clic o arrastra una captura de pantalla de ufw status

Parte 6 — Captura de trafico con Wireshark (40 min)

Wireshark es el analizador de protocolos de red mas utilizado del mundo. Es gratuito y se descarga desde wireshark.org.

6.1 Iniciar una captura

  1. Abre Wireshark en tu VM con Windows (o en la de Linux).
  2. Selecciona la interfaz de red activa (la que tiene trafico, normalmente "Ethernet" o "eth0").
  3. Haz doble clic en la interfaz o pulsa el boton de aleta de tiburon (Start) para iniciar la captura.
  4. Veras que empiezan a aparecer paquetes en tiempo real.

6.2 Generar trafico para capturar

  1. Abre un navegador web y visita varias paginas: google.es, wikipedia.org, example.com.
  2. Haz un ping a 8.8.8.8 desde el terminal.
  3. Deja la captura corriendo durante 1-2 minutos.
  4. Pulsa el boton de cuadrado rojo (Stop) para detener la captura.

6.3 Aplicar filtros de visualizacion

En la barra de filtros de Wireshark, prueba los siguientes filtros:

Filtro Que muestra N. de paquetes encontrados
dns Consultas y respuestas DNS
http Trafico HTTP (no cifrado)
tcp.port==443 Trafico HTTPS / TLS
icmp Paquetes ping (ICMP)
ip.addr==8.8.8.8 Todo el trafico con Google DNS

6.4 Analizar consultas DNS

  1. Aplica el filtro dns.
  2. Busca las consultas que corresponden a las paginas que visitaste.
  3. Haz clic en un paquete DNS y observa los detalles en el panel inferior.
  4. Identifica: dominio consultado, tipo de consulta (A, AAAA), IP resuelta.

Tabla de consultas DNS encontradas

Dominio consultado Tipo de consulta IP resuelta Servidor DNS usado
Nota sobre HTTPS: El trafico HTTPS esta cifrado con TLS, por lo que Wireshark no puede ver el contenido de las paginas que visitas. Solo podras ver el "handshake" TLS y los datos cifrados. Para ver trafico HTTP legible, necesitas una pagina que use HTTP sin cifrar (cada vez son menos comunes).

Captura de pantalla — Wireshark

📷

Haz clic o arrastra una captura de pantalla de Wireshark con filtros aplicados

Parte 7 — Preguntas de reflexion

7.1. Cual es la diferencia entre TCP y UDP? Pon un ejemplo de servicio que use cada uno.

7.2. Por que podria estar abierto el puerto 445 en un equipo Windows? Que riesgo de seguridad supone?

7.3. Contra que amenazas NO protege un firewall? Explica al menos 3 ejemplos.

7.4. Que informacion puedes descubrir con Wireshark que no podrias obtener con un simple ping? Da al menos 3 ejemplos concretos.

Parte 8 — Reto tecnico: analisis forense y defensa perimetral (45 min)

Hasta aqui has usado las herramientas siguiendo pasos. Ahora vas a analizar, interpretar y justificar: los datos que recojas tienen que leerse tu mismo, no copiarse. Se valora mas la calidad del razonamiento que la cantidad de salidas pegadas.

Reto 1 — Analisis forense de una captura Wireshark (20 min)

Abre Wireshark y captura en la interfaz con la que sales a Internet. Mientras captura, abre en el navegador la pagina http://testphp.vulnweb.com/login.php (es un sitio de pruebas publico sin HTTPS) e introduce un usuario y contraseña falsos cualquiera (p.ej. test / 1234). Para la captura. No uses tu contraseña real de nada.

Localiza en la captura los siguientes elementos y contestate. Filtra con la barra de Wireshark lo que necesites.

Elemento a encontrar Filtro / numero de paquete Dato concreto que has visto
Peticion DNS del dominio
3-way handshake TCP (SYN / SYN-ACK / ACK)
Peticion HTTP POST con credenciales
Cierre de conexion TCP (FIN o RST)

Repite la misma prueba accediendo esta vez a un sitio HTTPS cualquiera (por ejemplo, https://duckduckgo.com) y filtra por TLS. Explica con tus palabras: ¿por que en la captura HTTPS no puedes leer la contraseña aunque veas que los paquetes siguen pasando? Identifica en que momento del handshake TLS empieza el cifrado.

Reto 2 — Nmap con interpretacion critica (15 min)

Escanea tu propio equipo (o la VM que hayas usado) con nmap -sV -O localhost (o la IP de la VM desde fuera). Si no tienes al menos 3 puertos abiertos, arranca un servicio ligero a proposito antes de escanear: por ejemplo python3 -m http.server 8080 en una terminal. No escanees equipos que no sean tuyos.

Completa la tabla con lo que Nmap haya encontrado realmente en tu maquina:

Puerto Protocolo Servicio / version ¿Deberia estar abierto en un servidor de produccion expuesto a Internet? Justificacion

De los puertos anteriores, elige el mas peligroso si esta maquina estuviera expuesta a Internet: explica que ataque real podria sufrir, y que dos medidas concretas aplicarias para mitigarlo (no digas solo "un firewall": di que regla y por que).

Reto 3 — Firewall con regla justificada (10 min)

Caso: Tu jefe quiere permitir SSH a su servidor Linux, pero solo desde la IP de la oficina (tu compañero de practicas te sirve como "oficina" para esta prueba; de lo contrario, usa 127.0.0.1 como IP permitida). Cualquier otra IP debe recibir el puerto cerrado.

Implementa las reglas con ufw, probando el resultado. Anota aqui los comandos usados y el efecto de cada uno:

Compara tu solucion con la alternativa "permitir SSH desde cualquier IP y usar solo autenticacion por contraseña fuerte". ¿Por que tu regla es mas segura aunque la contraseña fuera muy buena? Menciona al menos un vector de ataque que tu regla bloquea y la otra no.

Captura 7 — Reto tecnico

Adjunta una unica captura combinada que muestre: (a) la ventana de Wireshark con el POST HTTP visible y las credenciales resaltadas, y (b) la salida de sudo ufw status verbose con tu regla del Reto 3 aplicada.

📷

Haz clic, arrastra o pega una imagen (Ctrl+V)

Captura reto tecnico

Criterios de evaluacion

Distribucion de la puntuacion

Apartado Peso
Parte 1 — Conexiones activas (netstat / ss) 8%
Parte 2 — Trazar rutas (tracert / traceroute) 7%
Parte 3 — Escaneo de red con Nmap 20%
Parte 4 — Firewall en Windows 15%
Parte 5 — Firewall en Linux con ufw 10%
Parte 6 — Captura con Wireshark 10%
Parte 7 — Preguntas de reflexion 5%
Parte 8 — Reto tecnico (analisis forense Wireshark + Nmap critico + firewall justificado) 25%
Penalizacion Descuento
Entrega fuera de plazo -3 puntos
Capturas de pantalla ausentes -1.5 puntos por captura
Tablas incompletas (mas del 30% en blanco) -1.5 puntos
Respuestas de una sola linea en preguntas que piden minimo 3 lineas -0.5 puntos por pregunta
Fecha limite: Indicada por el profesor en el canal de Discord.

Lista de verificacion de entrega (firma del alumno)

Antes de subir tu practica, confirma que has incluido todo:

Dato Tu respuesta
Nombre del alumno
Firma
Fecha de entrega

Entrega esta practica en el canal #entrega-practicas del Discord del curso.

Formato del mensaje: Nombre: [tu nombre] | Practica: Practica 23 - Diagnostico de Red y Seguridad Basica

Practica correspondiente al Bloque Comunicacion por red y comparticion de recursos (Practica 23)