Documente Academic
Documente Profesional
Documente Cultură
1. Introducción
Las redes actuales se basan en normas que se remontan a los tiempos de cuando se creó Internet.
La evolución de las tecnologías y la aparición de nuevos medios abren nuevas brechas adicionales a
vulnerabilidades o fallos de seguridad.
Los fallos de red afectan tanto al usuario particular como a las grandes empresas, y entre una de las
principales amenazas en una es paquetes en nuestra red sean rastreados o suplantados (sniffing y
spoong).
El objetivo de este laboratorio es doble: aprender a usar las herramientas y comprender las
tecnologías. Para el segundo objeto, se escribirán programas simples de rastreo y suplantación, y
con lo que se obtendrá una comprensión profunda de los aspectos técnicos de estos programas.
# mycode
a.show()
Para este punto se pide, ejecutar el script descrito continuación el cual, es una
implementación de un filtro de rastreo en Python utilizando Scapy, en esta ocasión se
observa que se desea filtrar solamente paquetes ICMP, de la red:
# snnifer
from scapy.all import *
def print_pkt(pkt):
pkt.show()
pkt = sniff(filter=’icmp’,prn=print_pkt)
Para ejecutar el script se usa la misma sintaxis que el literal anterior. En la figura 2 se
muestra la captura de paquetes ICMP, generando tráfico mediante un ping a la página de
YouTube.
Para el caso de ejecutar en el modo (sin root), la terminal bloquea la acción ya que este tipo
de procesos como rastrear paquetes necesita los permisos de administrador del equipo tal
como muestra la figura:
Task 1.1B
Se toma en cuenta que el primer filtro, ya se probó en la sección anterior, entonces para el
segundo filtro se tiene el siguiente código:
from scapy.all import*
def print_pkt(pkt):
pkt.show()
pkt = sniff(filter = "tcp and port 23 and host 10.0.2.4" prn =
print_pkt)
Como se muestra en la figura 4, se realizó un enlace telnet, entre la máquina virtual base y
un clon, con esto se genera tráfico TCP entre estos nodos, y algunos paquetes son
capturados por el filtro. Cabe recalcar que el protocolo TELNET, usa el puerto 23.
Para el siguiente filtro se hizo el mismo procedimiento para la prueba, pero en esta ocasión
se tomó en cuenta la subred generada virtualmente por la misma máquina, entonces el
código se expone como sigue:
from scapy.all import*
def print_pkt(pkt):
pkt.show()
pkt = sniff(filter="dst net 192.168.0/24",prn=print_pkt)
Figura 5. Filtrado de paquetes, en una subred.
Para verificar esto también se usó la herramienta Wireshark, en donde se muestra que el
receptor aceptó la solicitud y se envió un echo().
En el caso de pcap se necesita acceso de bajo nivel a la interfaz de red, debido a las
implicaciones de seguridad (captura de tráfico de red, generación de paquetes de red
arbitrarios, etc.), dicho acceso está limitado solo a usuarios privilegiados. Entonces al
momento de pedir acceso a la interfaz de red del sistema, el mismo niega el acceso y la
ejecución falla.
Para lograr este filtro se aplicó la siguiente sintaxis: “ip proto ICMP and host 192.168.0.114
and 192.168.0.115”.
El segundo programa captura paquetes TCP dentro de un rango de puertos del 10-100.
Para lograr esto se usa una PC clon para dirigir paquetes a estos puertos y se usa un filtro
diferente. La ejecución del código se indica en la Fig. 11
Figura 11. Rastreado TCP, parámetro de puertos
Como se observa en la figura 13, se capturan paquetes, provenientes del login a telnet de
una VM, cada paquete contiene una cabecera y el mensaje, que en este caso consta de
una entrada por teclado, contemplando la contraseña de logeo a telnet.
3.2 Task 2.2: Spoofing
Se revisó el programa proporcionado por la guía para suplantar paquetes a través de la
alteración de las cabeceras. Se usa la librería pcap en C entre un host y un servidor de
internet.
• Pregunta 6. ¿Por qué necesita el privilegio de root para ejecutar los programas que utilizan
sockets sin formato? Dónde ¿El programa falla si se ejecuta sin el privilegio de root?
3. Conclusiones
Con respecto al Snnifing, cualquier software orientado a realizar este tipo de proceso será
capaz de escuchar un tramo de la red, capturando los paquetes que están fluyendo por ese
tramo. Pero estos software no solo recogerán paquetes destinados a una sola tarjeta de
red, como en este caso, si no es posible capturar paquetes de varias tarjetas de red que
estén en su área local, pudiendo conseguir información crucial de usuarios conectados a
esos nodos.
Las respuestas del host que reciba los paquetes alterados irán dirigidas a la IP falsificada.
También hay que tener en cuenta que los enrutadores actuales no admiten el envío de
paquetes con IP origen no perteneciente a una de las redes que administra (los paquetes
suplantados no sobrepasarán el enrutador).