SQL injection.

Iniciado por Uxio, 9 Febrero 2009, 14:11 PM

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

Uxio

Hice una apuesta con un colega y su server, y con nikto2 he llegado a ver que tiene la carpeta phpmyadmin.

He entrado a la carpeta, probado con SQL básico de todo, y poniendo simplemente 'root y dejando la contraseña en blanco he entrado al panel de Control de SQL, donde veo esto:




Tengo privilegios de lectura, pero no de escritura. No encuentro ninguna columna con usuarios ni nada.

El único usuario que hay es root, pero despues de estar un buen rato probando no logro sacar ninguna información en claro.

¿Alguien sabe por dónde puedo tirar?

Muchas gracias

Azielito

creo recordar que phpMyadmin tenia algun bug de RFI o RCE :¬¬


Tambien podrias hacer una shell con ese phpMyadmin :D

Uxio

Cita de: Azielito en  9 Febrero 2009, 18:10 PM
creo recordar que phpMyadmin tenia algun bug de RFI o RCE :¬¬


Tambien podrias hacer una shell con ese phpMyadmin :D

Muchas gracias por la respuesta Azielito, el problema es que aunque entro al panel sólo tengo privilegios de lectura, no soy capaz de subir archivos.

Es bastante raro esto, porque entro al panel de administración de myphpadmin, donde puedo realizar consultas SQL y veo las diferentes columnas. Además me extraña que no tenga un apartado users donde guarda los usuarios y las pass...

uf, qué raro

Azielito

lo de la shell me referia a que la hagas con un

Código (SQL) [Seleccionar]
***** INTO OUTEFILE

:D

prueba a meterlo en /tmp, y busca a un bug de LFI del phpMyadmin :D

ChElAnO

hola,

el mejor vector es intentar crear un archivo php desde una consulta sql, tal como te aconseja Azielito. Para esto debes saber si el usuario root tiene el permiso FILE.

Otra cosa interesante es utilizar load_file(), para poder ver archivos de configuración como config.php y porque no /etc/passwd para enumerar usuarios.

saludos,


Uxio

#5
Muchas gracias por vuestros comentarios.

He intentado lo de INTO OUTEFILE, he recibido:

#1045 - Access denied for user ''@'localhost' (using password: NO)

CitarOtra cosa interesante es utilizar load_file(), para poder ver archivos de configuración como config.php y porque no /etc/passwd para enumerar usuarios.

Eso ya lo había intentado, pero obtengo

load_file(/etc/passwd);
(Tambien probé en forma hexadecimal)
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 'load_file(index.php)' at line 1

Gracias por todo

berz3k

1) Crea una nueva tabla
2) Agregale codigo PHP con llamada al system()
3) Origina un error para conocer el PATH
4) Envia el contenido de la tabla (con codigo php) al filesystem
4) Nombralo como mejor te plazca e.g http://server/shell.php

-berz3k.

Uxio

Gracias por la respuesta, pero el problema es que no puedo crear tablas, sólo puedo leer :P

Saludos

Azielito

#8
Pues como no nos das la version (ni de MySQL, ni de PHP, ni de phpMyAdmin...

Cita de: shellsec.net/articulo/Otro-Resumen-de-vulnerabilidades/
17)

—————————————————-
-Vulnerabilidades en el phpMyAdmin -
—————————————————-

Multiples vulnerabilidades han sido detectadas en el phpMyAdmin, las cuales permitirian a un atacante ejecutar codigo y acceder a información sensible.

ejemplos de las vulnerabilidades:

1. Cross site scripting y muestra del path

2. Directorio tranversal

3. Información sin coding: solo guarda los usuarios y las claves en texto plano.

ejemplos:

http://localhost/mysql/sql.php?sql_query=">..<h1>XSS ! Oh my God!</h1>

http://localhost/mysql/db_datadict.php?db=XSS

http://localhost/mysql/db_details_importdocsql.php?submit_show=true&do=import&docpath=../../../BOOT.ini

http://localhost/mysql/read_dump.php?db=nonexistent&sql_query="><h1>XSS</h1&gt;

http://localhost/mysql/tbl_properties_links.php?table_info_num_rows=10&url_query="><h1>XSS

Versiones vulnerables:

Debian Linux 2.2 68k
Debian Linux 2.2 alpha
Debian Linux 2.2 arm
Debian Linux 2.2 powerpc
Debian Linux 2.2 sparc
FreeBSD FreeBSD 3.5.1
FreeBSD FreeBSD 4.2
MandrakeSoft Linux Mandrake 7
MandrakeSoft Linux Mandrake 7.1
MandrakeSoft Linux Mandrake 7.2
OpenBSD OpenBSD 2.6
OpenBSD OpenBSD 2.7
OpenBSD OpenBSD 2.8
PhpMyAdmin PhpMyAdmin 2.0
PhpMyAdmin PhpMyAdmin 2.0.1
PhpMyAdmin PhpMyAdmin 2.0.2
PhpMyAdmin PhpMyAdmin 2.0.3
PhpMyAdmin PhpMyAdmin 2.0.4
PhpMyAdmin PhpMyAdmin 2.0.5
PhpMyAdmin PhpMyAdmin 2.1
PhpMyAdmin PhpMyAdmin 2.1.1
PhpMyAdmin PhpMyAdmin 2.1.2
PhpMyAdmin PhpMyAdmin 2.2.2
PhpMyAdmin PhpMyAdmin 2.2.3
PhpMyAdmin PhpMyAdmin 2.2.4
PhpMyAdmin PhpMyAdmin 2.2.5
PhpMyAdmin PhpMyAdmin 2.2.6
PhpMyAdmin PhpMyAdmin 2.3.1
PhpMyAdmin PhpMyAdmin 2.3.2
PhpMyAdmin PhpMyAdmin 2.4.0
PhpMyAdmin PhpMyAdmin 2.5.0
PhpMyAdmin PhpMyAdmin 2.5.1
RedHat Linux 6.2
RedHat Linux 7.0
S.u.S.E. Linux 6.4
S.u.S.E. Linux 7
S.u.S.E. Linux 7.1
Sun Solaris 2.6
Sun Solaris 2.6 _x86
Sun Solaris 7.0
Sun Solaris 7.0 _x86
Sun Solaris 8.0
Sun Solaris 8.0 _x86

Solución:

La solución es instalar la version phpMyAdmin 2.5.2 , la cual contiene
los fixes correspondientes.




:http://milw0rm.com/video/watch.php?id=90
:http://milw0rm.com/exploits/7382
:http://milw0rm.com/exploits/1244
:http://milw0rm.com/exploits/309

Uxio

Muchas gracias por todo Azielito. Algunas de las cosas que me pones ya las había probado, probaré ahora lo queno había probado.

Por cierto, debería haberlo dicho antes xD

Versión del servidor SQL: 5.0.51a-3ubuntu5.4
phpMyAdmin 2.11.3