Un buen dia por la tarde, estaba buscando por la red algunos backgrounds cuando por sorpresa llegue a dar a un sitio que llevaba por url una frase bastante interesante.
Navegando por el sitio (visualmente muy atractivo por cierto) me encontré con un link que me llamó mucho la atención. Era de esta forma:
http://sitio/descargame.php?file=wallpapers/1024x768.jpg
Me puse a pensar, y si ..... si es lo que piensan, trate de descargarme el /etc/passwd.
root:x:0:0:root:/root:/bin/bash /* y ya se saben lo demas (sin accesso a shadow) */
XD! lo tenia en mis manos. No podía creer lo fácil que habia sido adquirirlo. De la misma manera cayó el fichero /etc/my.cnf y ahí me di cuenta de que mysql también corria con permisos de nobody. Después navegando más tiempo por el sitio me di cuenta de que tenian un blog. Asi que de la misma manera me descargue el index de la página del blog y encontré un código muy interesante. Decía de la siguiente manera.
<?php session_start(); include("inc/config.inc.php") ....... /* y otras cosas que no importan */ ?>
obviamente me fuí por este archivo ... http://sitio/descargame.php?file=inc/config.inc.php
y este fue el resultado:
<?php
$dbi=mysql_connect("localhost", "nombredesitio", "SiTiO9151") or die ('Cannot connect: ' . mysql_error());
mysql_select_db ("database_nombredesitio");
?>
Con esto ya tenía el username y pass de la base de datos. Después visité uno de mis sitios mas usables www.MyIpNeighbors.com
e introduje la ip de mi victima (ojo, de ser un website visitado ya pasó a ser mi victima xD!)
Descubrí que el servidor era de una compañía de hosting de renombre. Investigando por la red descubrí que esta compañía les ofrecía a sus clientes control total sobre su servicio comprado mediante el url: susitio/paneldecontrol/ y que en el había que poner un username y pass. al visitar el panel de mi sitio victima termino por encontrarme esto
Bienvenido al panel de control
Escriba su usuario: nombredesitio
Escriba su password: SiTiO9151
---------------------------------
Bienvenido al panel de control (ACCESSO TOTAL A MI VICTIMA)
El password de la base de datos y el usuario eran los mismos del panel de administracion.
!!! .... (Esto fue un golpe de suerte total)En dicho panel venían las opciones de
Agregar usuarios ftp
Agregar correos
Proteger directorios
Agregar databases
//entre otros ....
Enseguida me dedique a crearme un username ftp
Dentro del ftp subi mi super shell c100.php ocultandola en el directorio inc con el nombre de config-inc.php para no ser descubierto tan fácilmente. Después de subir mi shell borré mi user ftp. pero me adueñe de otro que casi no se conectaba.
al entrar al http://sitio/inc/config-inc.php el servidor me dijo lo siguiente:
Software: Apache/2.2.6 (Unix) PHP/5.2.3
uname -a: Linux xts25-12 2.6.24.2 #1 SMP Tue Feb 12 22:41:33 CET 2008 i686
Safe-mode: OFF (not secure) //ACCESO A CASI TODO EL SERVER
empezé a buscar archivos interesantes. obviamente me hice reverse shell xD con el netcat para explorarlo más agusto.
Encontré ficheros muy interesantes como este:
<?php
define("BBDD","database_server"); define("LOGIN","servername"); define("PASSWORD","VjGj6048gF");
define("LOGIN_MYSQL", "root"); define("PASS_MYSQL", "P0ijY67XAz");
define("P_DIR","/server/cuentas/");
define("IP","xxx.xxx.xxx.xxx."); //ip del server
define("SERVER_ID","xts25-12"); //nombre del server
define("SERVER_BUP","backup.server.com"); //servidor de backup para otras maquinas.
?>
Con esto tenía el root de mysql. Pero, lo que me llamaba la atención por ahora no era mysql .... sino esta línea:
define("SERVER_ID","xts25-12"); //nombre del server
Ya que al hacer ping a ts250-12.server.com me daba la ip de la línea:
define("IP","xxx.xxx.xxx.xxx."); //ip del server
Y que tal si hago ping a xts25-13.server.com??? Adelante
El resultado del ping fue la misma ip pero con un numero más arriba.
Volvía MyIpNeighbors.com y busque el segundo server que habia pingeado.
Me devolvió una lista de hosts diferentes (obviamente) y que al navegarlos pude encontrar varios sitios de tiendas virtuales. Sitios con aplicaciones vulnerables a local file inclusion.
Era demasiado bueno para ser verdad. Todavía no terminaba de ownear un server cuando ya estaba explorando otro.
Continuará ...
// Nota: Espero que algunos compañeros se identifiquen con esta experiencia
-------------------------------------------------------------------------------------------
Continuación ...
En el primer server donde ya tenía shell decidí logearme usando el user root y pass de la db mysql. No funcionó, intenté las técnicas clásicas de explotación, pero al parecer el kernel estaba parchado. intenté muchas otras cosas pero el root nadamás no caía. Hasta el momento ese server no lo he rooteado xD! (Sigo en proceso)
Volviendo al segundo server, usando un exploit pude leer archivos al igual que la vulnerabilidad del primer sitio, tenía una ligera corazonada de que el server tendría la misma estructura y el mismo arbol de archivos que en el aventajado. efectivamente pude encontrar el mismo fichero de configuracion mysql.
<?php
define("BBDD","database_server"); define("LOGIN","servername"); define("PASSWORD","fPJk6408FF");
define("LOGIN_MYSQL", "root"); define("PASS_MYSQL", "L051Yq9zAX");
define("P_DIR","/server/cuentas/");
define("IP","xxx.xxx.xxx.xxx."); //ip del server
define("SERVER_ID","xts25-13"); //nombre del server
define("SERVER_BUP","backup.server.com"); //servidor de backup para otras maquinas.
?>
Era exactamente lo mismo que en el server pasado, pero este tenía una gran diferencia con el otro.
Software: Apache/1.3.39 (Unix) mod_perl/1.29 PHP/4.4.7
uname -a: Linux xts25-13 2.6.20 #1 SMP Wed Dec 12 20:24:27 CET 2007 i686
Un kernel algo olvidado por el admin. 2.6.20, intenté con vmsplice y que creen...
root@xts25-13#!!!!
Encontré root x).
Y así me fuí introduciendo en la red de servidores, hasta tener 6 con shell:
2 root
3 nobody
1 tomcat
/* pero 3 de ellos con SAFE MODE ON x( */
Por cierto, si alguien sabe alternativas de intrusión ante un safe mode on que las relate no? xD!
Y bien amigos, este es el final de mis cronicas de intrusión a la red de xts-X .... Un saludo a mis amigos
Ph4B0u, R1x412D, L3nX0 ....
Notas finales: Lo más probable es que esto ya lo hayan vivido muchos de ustedes, pero pienso que puede darles una idea a los muchos que no han tenido la suerte de sentir la adrenalina de una intrusión en servers de shared hosting. También espero que los sysadmin que estén leyendo esto tengan un poco más de cuidado .... no la verdad que no, NO tengan cuidado
! Comenten críticas y opiniones..... Buena Suerte Compañeros!
//EOF










Autor



En línea










, perdonen, es que estoy desconcertado... 

