Actividades Tema 3
Actividades Tema 3
Actividades Tema 3
Wireshark es una herramienta que permite capturar y analizar el tráfico de red, para usarlo desde
la máquina Kali basta con acceder al grupo “Sniffing & Spoofing” del menú de aplicaciones.
Para comenzar la captura en “eth0” como muestra la siguiente imagen basta con pulsar el primer
icono, para parar pulsamos el segundo icono, y para capturar solo determinados paquetes usamos
el filtro (por ejemplo, para capturar el tráfico de un equipo usamos ip.addr == ipequipo, para
capturar el http, usamos el filtro tcp port 80):
1
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
La encapsulación del modelo TCP-IP, donde el protocolo http contiene el texto html de la web
en el nivel inferior, este es encapsulado por el protocolo TCP (puertos 80 y 54476), a su vez
este es encapsulado en el protocolo IP (88.27.253.103 y 192.168.0.59), por ultimo aparecen las
MAC que encapsulan al protocolo IP.
2
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Analizando el envío de información que realiza el cliente podemos ver dos variables enviadas:
email y password junto con sus valores: correo@correo.es y clave
El siguiente paso es configurar las IPs que se asignarán a los clientes y permitirles que accedan
a la red local
3
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Para finalizar pulsamos el botón permitir acceso y abrir el puerto TCP 1723 en el router de casa
y en firewall de Windows:
En el cliente:
1. en la opción “Panel de control\Todos los elementos de Panel de control\Centro de redes
y recursos compartidos” se crea una nueva conexión de red o en la Configuración de red:
4
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Actividad: Crear una VPN para conectar desde el exterior a nuestra casa poniendo un router-NAT
con dd-wrt como servidor VPN y como cliente un equipo con Windows.
También en este caso se trata de una VPN de acceso remoto, donde el cliente es un PC y el
servidor es el router.
Normalmente los router-ADSL no disponen de opciones para crear VPN por lo que se necesita un
router-NAT con dd-wrt que haga de servidor VPN y para conectar se puede usar cualquier PC que
haga de cliente VPN.
Para configurar el router NAT habrá que activar el servicio VPN (PPTP Server: Enable), poner la
IP WAN del router como IP del servidor VPN (192.168.1.100), indicar que IPs se asignarán a los
clientes (192.168.2.100 hasta 192.168.2.200) y el usuario y clave para conectar.
Además habrá que abrir los puertos correspondientes en el router ADSL (TCP 1723)
5
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
6
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Para comprobar la instalación, pues desde la máquina real conectamos directamente con la
máquina virtual, en el navegador tecleamos http://ip_de_la_máquina_virtual
Vamos a instalar una zona segura, para ello creamos una carpeta dentro /var/www/html, por
ejemplo, /var/www/html/segura y activamos el módulo ssl de apache y reiniciamos:
a2enmod ssl
Creamos una archivo info.php con el contenido: <?php phpinfo(); ?>, lo cargamos y
comprobamos si ssl está activo:
Después de varias pantallas tenemos que validar que poseemos el dominio, lo podemos hacer a
través de un correo, un registro A de DNS o subiendo un fichero a nuestro dominio (optamos por
esta tercera):
7
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Una vez la empresa ZeroSSL ha verificado que hemos subido el fichero nos permite descargar el
certificado:
8
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Actividad: Instalar un servidor web seguro que permita acceso con firma digital FNMT.
Son habituales las webs que requieren un registro previo del usuario en el que se le facilita un
nombre de usuario y contraseña que le serán requeridas siempre que intente acceder a un área
restringida del servidor. Disponiendo de un servidor seguro es posible exigir al cliente disponga
de un certificado digital (certificado de cliente) para acceder al área segura del servidor o algunos
de sus directorios
Descargamos los certificados raíz de la FNMT más usuales: AC Raíz FNMT-RCM, FNMT Clase 2 CA
y AC FNMT Usuarios, con estos nos bastará para la prueba. Ojo, los certificados tienen formato
DER y hay que pasarlos a PEM para poder utilizarlos en apache, para ello:
openssl x509 -in certificado_der -inform DER -out certificado_pem -outform PEM
Los combinamos todos en un solo fichero con cat o cortando y pegando todos en un solo fichero:
cat certificado1.crt certificado2.crt certificado3.crt > todos.crt
9
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Durante la instalación nos pide la interface de escucha, la red a proteger, de todas formas
podemos cambiar la configuración en el fichero /etc/snort/snort.conf, donde tenemos los
párametros de configuración, estas son algunas de las líneas:
ipvar HOME_NET 172.23.160.0/24 – Red interna que se desea proteger o any para cualquiera
ipvar EXTERNAL_NET any – Red externa, se puede colocar una red especifica o any
include $RULE_PATH/…. Para activar unas determinadas reglas o comentar para desactivar
include $RULE_PATH/local.rules Para activar reglas creadas por nosotros mismos
Por ejemplo, las reglas que se ejecutarán cuando recibamos ping en la red interna están en
/etc/snort/rules/icmp.rules
Para arrancar snort (indicamos fichero de configuración, salida por consola e interface de
captura):
snort –c /etc/snort/snort.conf –A console –i enp0s3
Para probar, podemos hacer ping desde la máquina real a la máquina virtual de Ubuntu, veremos
en pantalla que ha detectado el ping:
Snort responde aplicando las reglas por defecto que incorpora. Estas reglas están en la carpeta
/etc/snort/rules, por ejemplo si vemos el fichero icmp.rules observamos que ante los diferentes
ping (icmp) muestra mensajes (alert):
10
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
11
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
En este caso hemos puesto en la regla cualquier origen (any) hacia (->) 192.168.1.143 ¿Por qué
avisa si el ping lo hemos hecho desde 192.168.1.143? Porque el ICMP es un protocolo que envía
una señal y finaliza cuando recibe la respuesta, por tanto, el funcionamiento se completa cuando
el procotolo ICMP ha comunicado en las dos direcciones.
Si no queremos una salida por pantalla podemos ejecutar snort con el parámetro – l para enviarlo
a una carpeta o también se puede enviar a una base de datos.
snort –c /etc/snort/snort.conf –l /var/log/carpertaregistro
alert tcp any any <> $HOME_NET 21 (msg: “Acceso anónimo ftp”; \
content: “USER anonymous”; sid: 10000004)
Instalamos y arrancamos en la máquina Ubuntu un servidor vsftp: apt-get install vsftpd y después
service vsftpd start
Actividad: Con Snort alertar cuando se intente acceder desde una red externa a la zona restringida
de nuestro servidor web.
Instalamos apache: apt-get install apache2. Arrancamos el servicio: service start apache2.
Creamos una carpeta llamada reservada en /var/www/html y colocamos una página index.html
básica.
Editamos /etc/snort/snort.conf y definimos nuestra red:
Seguimos con todas los includes de reglas comentados y solo con nuestra local.rules activa que
sería:
alert tcp !$HOME_NET any -> 192.168.1.144 80 (msg:"Acceso a zona reservada desde el exterior”; \
content:"/reservada"; sid:1000005)
Para conectar desde el exterior abrimos el puerto 80 en el router a nuestra máquina virtual que
tiene la ip 192.168.1.144 y desde nuestro móvil sin wifi, por ejemplo, accedemos a la web
reservada:
12
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
alert tcp any any -> IP_servidor 22 (msg: “Conexión por ssh con el servidor”; sid: 10000010)
Evidentemente también podemos usar las reglas de snort que vienen ya definidas, por ejemplo,
vamos a probar un ataque de denegación de servicios y comprobar como snort aplica las reglas:
Activamos las reglas de DoS en snort.conf:
13
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Actividad: Honeyd
Vamos a realizar una práctica básica de con honeypot llamado honeyd con una máquina virtual
de kali. Ponemos la tarjeta de red en modo promiscuo.
Para la instalación seguimos los siguientes pasos (podemos crear una carpeta honeyd, nos
podemos colocar en la carpeta /etc para ejecutar los siguientes comandos):
• apt-get update
• apt-get install git
• git clone https://github.com/DataSoft/Honeyd
• apt-get install libevent-dev libdumbnet-dev libpcap-dev libpcre3-dev libedit-dev bison flex
libtool automake zlib1g-dev python
Compilación:
• cd Honeyd
• ./autogen.sh
• ./configure
• make
• sudo make install
Una vez arrancado, desde una máquina cliente accedemos a la web y al servicio ftp, como vemos
obtenemos respuesta en ambos casos (es la respuesta generada por los scripts indicados en la
configuración, no es un servicio web ni un servicio ftp reales):
14
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Actividad: Honeydrive
HoneyDrive es una suite orientada a varios honeypot viene en una máquina virtualizada que
descargamos en HoneyDrive Una vez importada la máquina en virtualbox ponemos la interface
en modo puente. En el escritorio hay un archivo readme.txt donde indica las herramientas
disponibles con los accesos, usuarios y contraseñas.
Kippo es uno de los honeypot, simula un servidor ssh, para ponerlo en funcionamiento siguiendo
las indicaciones del fichero readme desde el terminal:
cd /honeydrive/kippo
./start.sh
En el fichero README.txt vemos algunos datos para configurar kippo como los usuarios admitidos
y también que hay una conexión web para visualizar la información que captura kippo. En este
caso hemos putty desde la máquina real y nos intentamos conectar (la clave de root por defecto
es 123456), podemos ver en el entorno gráfico el registro de nuestros intentos:
15
Seguridad y Alta Disponibilidad Manuel Castaño Guillén
A.S.I.R. on-line IES Suárez de Figueroa
Podemos hacer un escaneo de puertos con nmap y vemos que hay abiertos puertos
correspondientes a los servicios de ftp, http, …
También podemos activar un servicio web para registrar los accesos, en la carpeta
/honeydrive/DionaeaFR:
Arrancamos la máquina Kali Linux y ejecutamos un análisis con legion de la IP del equipo
honeydrive (las dos máquinas están en modo puente para facilitar la prueba)
Consultamos la web 192.168.1.41:8000 para ver estos accesos:
El honeypot detecta y registra los accesos, pero legion también detecta que se trata de un
honeypot, por eso están siendo sustituidos estos honeynet por sistemas de decepción o engaño
más modernos que analizan y hacen un seguimiento del ataque desde un principio.
Actividad: T-pot
T-pot, es una suite similar a honeydrive, más moderna, que además ya tiene la opción de
instalación de sistemas de nueva generación para decepción o engaño. Descargamos el iso de
https://github.com/telekom-security/tpotce/releases, creamos una maquina virtual Ubuntu-64bit
con 8 Gb de RAM y 10 Gb de disco. Seleccionamos el tipo de instalación y la administración sería
via web:
16