CVE-2012-1182: Ejecución de código remoto en Samba

A petición popular y hartos ya de meterle manilla al pobrecito queso de gruyer (wws), vamos a ver como llevar a cabo la explotación en otras plataformas.
Para ver esto, hemos decidido poner en el ojo del huracán mi distribución Linux preferida: Debian. Por si hay alguien de otro planeta que no la conozca:

Debian o Proyecto Debian es una comunidad conformada por desarrolladores y usuarios que mantiene un sistema operativo GNU basado en software libre.

Nació como una apuesta por separar en sus versiones el software libre del software no libre. El modelo de desarrollo del proyecto es ajeno a motivos empresariales o comerciales, siendo llevado adelante por los propios usuarios, aunque cuenta con el apoyo de varias empresas en forma de infraestructuras. 

Debian no vende directamente su software, lo pone a disposición de cualquiera en Internet, aunque sí permite a personas o empresas distribuirlo comercialmente mientras se respete su licencia.
La comunidad de desarrolladores del proyecto cuenta con la representación de Software in the Public Interest, una organización sin ánimo de lucro que da cobertura legal a varios proyectos de software libre.
Es bien sabido que muchísimas distribuciones se basan en este gran SO.

Bueno tras este breve apunte vamos a lo que nos interesa. Para empezar a meter mano a Debian vamos a aprovecharnos de una vulnerabilidad en la implementación libre del protocolo de archivos compartidos de Microsoft Windows: SAMBA.

Concretamente se dio a conocer en el mes de abril (CVE-2012-1182) y puede permitir a un atacante ejecutar código remoto, por ejemplo una shell, desde una conexión totalmente anónima y como usuario root. Esto es especialmente crítico en entornos donde se comparte recursos con acceso a Internet.

Las versiones comprometidas por la vulnerabilidad son: 
Samba 3.x anteriores a 3.4.16, 3.5.x anteriores a 3.5.14 y 3.6.x anteriores a 3.6.
En particular, la vulnerabilidad fue detectada en un procedimiento de llamada remota (RPC), que no comprueba adecuadamente la longitud total de un "array".

La solución: parchear la versión de samba http://samba.org/samba/patches/.

Por otra parte, Metasploit el mes pasado publicó el exploit en EXPLOIT.DB.

Lo que exactamente vamos a ver hoy es como agregar un nuevo módulo en nuestro Metasploit, lo cual nos valdrá para siguientes ocasiones...
Y aprovechando que hay una máquina desactualizada en "mi red", el ataque en
si, aunque carente de complicación, mola verlo....;D

En primer lugar nos tendremos que hacer con el código fuente del exploit. Para eso nos dirigiremos a http://www.exploit-db.com/ y con las dos ultimas cifras del nombre del exploit "2012-1182" lo buscaremos en su base de datos.

Y a continuación procederemos a la descarga del archivo:
 


Después le pondremos un nombre más legible y cambiaremos los permisos al módulo:

# mv 21850.rb /opt/metasploit4.4.0/msf3/modules/exploits/linux/samba/
# mv 21850.rb
# chmod +x  setinfopolicy_heap.rb  #damos permisos de ejecucion
# chown root setinfopolicy_heap.rb  #cambiamos el propietario
# chgrp root setinfopolicy_heap.rb #cambiamos el grupo
 
Como vemos no ha sido complicado y ya tenemos nuestro nuevo módulo listo para usar:


Ahora vamos a la parte lúdica de la entrada, la explotación. Fijamos las opciones y el objetivo...

...y ¡¡¡fuego!!!

Fuentes: 
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-1182
http://www.exploit-db.com/

4 comentarios:

  1. hace gracia que para empezar a explotar Linux utilices una implementación de un protocolo de Windows xddd

    ResponderEliminar
  2. XDXD no lo pense...jejeje..tiene su gracia si

    ResponderEliminar
  3. Muy buen post. Por favor corrige el primer enlace www.exploid.db.com por www.exploit-db.com

    ResponderEliminar