Objetivos de la practica
- Utilizar
netstatysspara visualizar conexiones activas y puertos en escucha. - Trazar rutas de red con
tracert(Windows) ytraceroute(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
- Abre una terminal de comandos como administrador en la VM con Windows.
- Ejecuta netstat -an para ver todas las conexiones y puertos en escucha.
- Ejecuta netstat -ano para ver ademas el PID del proceso asociado a cada conexion.
- Ejecuta netstat -ab para ver el nombre del programa asociado (requiere administrador).
- 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
- Abre un terminal en la VM con Ubuntu.
- Ejecuta ss -tuln para ver puertos TCP y UDP en escucha.
- Ejecuta ss -tunap para ver todas las conexiones con el proceso asociado.
- 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
- Abre un terminal de comandos en la VM con Windows.
- Ejecuta tracert 8.8.8.8 (DNS de Google).
- Ejecuta tracert google.es.
- Ejecuta tracert amazon.es.
- 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
- Abre un terminal en la VM con Ubuntu.
- Ejecuta traceroute 8.8.8.8 (si no esta instalado:
sudo apt install traceroute -y). - Ejecuta traceroute google.es y traceroute amazon.es.
- 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.
3.1 Instalacion de Nmap
- Windows: Descarga el instalador desde nmap.org/download y ejecutalo. Incluye Zenmap (interfaz grafica).
- Linux: Ejecuta
sudo apt install nmap -yen el terminal. - Verifica la instalacion ejecutando nmap --version en ambos sistemas.
3.2 Descubrimiento de hosts en la red
- Primero, averigua tu IP y la subred con
ipconfig(Windows) oip a(Linux). - Ejecuta nmap -sn 192.168.1.0/24 (ajusta la subred a tu caso) para descubrir hosts activos sin escanear puertos.
- 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
- Elige una de tus VMs como objetivo (por ejemplo, la VM con Windows).
- Ejecuta nmap [IP_de_la_VM] para un escaneo basico de los 1000 puertos mas comunes.
- Ejecuta nmap -p 1-65535 [IP_de_la_VM] para un escaneo completo de todos los puertos (tarda mas).
- 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
- Ejecuta nmap -sV [IP_de_la_VM] para detectar la version de los servicios en los puertos abiertos.
- Compara los resultados con el escaneo basico anterior.
- 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
- Pulsa Win + R y escribe wf.msc, luego pulsa Enter.
- Se abrira la ventana de Windows Defender Firewall con Seguridad Avanzada.
- Observa las tres secciones principales: Reglas de entrada, Reglas de salida y Reglas de seguridad de conexion.
- Examina algunas de las reglas existentes para familiarizarte con la interfaz.
4.2 Crear regla para bloquear puerto 80 (HTTP)
- Haz clic en Reglas de entrada en el panel izquierdo.
- Haz clic en Nueva regla... en el panel derecho.
- Selecciona Puerto y haz clic en Siguiente.
- Selecciona TCP y escribe 80 en "Puertos locales especificos". Haz clic en Siguiente.
- Selecciona Bloquear la conexion. Haz clic en Siguiente.
- Deja marcados los tres perfiles (Dominio, Privado, Publico). Haz clic en Siguiente.
- Escribe un nombre descriptivo: Practica23 - Bloquear HTTP puerto 80. Haz clic en Finalizar.
4.3 Probar la regla
- Abre un navegador en la VM con Windows e intenta acceder a una pagina web HTTP (no HTTPS).
- Ejecuta nmap -p 80 [IP_Windows] desde la VM con Linux para verificar que el puerto aparece como filtered.
- Documenta el resultado.
4.4 Crear regla para permitir un programa especifico
- Haz clic en Reglas de entrada > Nueva regla...
- Selecciona Programa y haz clic en Siguiente.
- Selecciona Esta ruta de acceso del programa y busca un ejecutable (por ejemplo,
C:\Windows\System32\mspaint.exe). - Selecciona Permitir la conexion. Haz clic en Siguiente.
- Deja los tres perfiles marcados. Haz clic en Siguiente.
- Nombre: Practica23 - Permitir Paint. Haz clic en Finalizar.
4.5 Eliminar las reglas de prueba
- En Reglas de entrada, busca las reglas que creaste (busca "Practica23").
- Haz clic derecho sobre cada regla y selecciona Eliminar.
- Confirma la eliminacion.
- 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
- Abre un terminal en la VM con Ubuntu.
- Ejecuta sudo ufw enable para activar el firewall (confirma con "y").
- 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
- Ejecuta sudo ufw allow 22/tcp para permitir conexiones SSH.
- Ejecuta sudo ufw deny 80/tcp para bloquear conexiones HTTP entrantes.
- Ejecuta sudo ufw allow 443/tcp para permitir conexiones HTTPS.
- 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
- Desde la VM con Windows, ejecuta nmap -p 22,80,443 [IP_Linux].
- Verifica que el puerto 22 aparece como open, el 80 como filtered/closed y el 443 depende de si hay servicio escuchando.
- Documenta los resultados en la tabla.
5.4 Eliminar una regla
- Ejecuta sudo ufw status numbered para ver los numeros de cada regla.
- Ejecuta sudo ufw delete 2 para eliminar la regla que bloquea el puerto 80 (confirma con "y").
- 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
- Abre Wireshark en tu VM con Windows (o en la de Linux).
- Selecciona la interfaz de red activa (la que tiene trafico, normalmente "Ethernet" o "eth0").
- Haz doble clic en la interfaz o pulsa el boton de aleta de tiburon (Start) para iniciar la captura.
- Veras que empiezan a aparecer paquetes en tiempo real.
6.2 Generar trafico para capturar
- Abre un navegador web y visita varias paginas: google.es, wikipedia.org, example.com.
- Haz un ping a 8.8.8.8 desde el terminal.
- Deja la captura corriendo durante 1-2 minutos.
- 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
- Aplica el filtro dns.
- Busca las consultas que corresponden a las paginas que visitaste.
- Haz clic en un paquete DNS y observa los detalles en el panel inferior.
- 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 |
|---|---|---|---|
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)
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)
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 |
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 |