天天看点

sqlmap学习(十三)枚举信息

1、sqlmap列举数据库名

参数:

--dbs

2、sqlmap列举数据库表

参数:

--tables

获取全部表名

-D

数据库名 获取指定数据库中的表

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --tables -D 数据库名
           

--exclude-sysdbs

可排除系统数据库

3、sqlmap列举数据表列

参数:

--columns,-D指定数据库,-T指定数据表,-C指定具体字段

python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --columns -D mysql -T user -C Update_priv
           

4、sqlmap枚举数据值

参数:

--dump

查看具体字段信息

查看字段对应的数据值

5、sqlmap枚举schema信息

参数:

--schema

--exclude-sysdbs

列举数据库管理系统的模式。模式列表包含所有数据库、表、列、触发器和他们各自的类型。

可以用参数

--exclude-sysdbs

排除系统数据库。

6、sqlmap检索数据数量

参数:

--count

表中的数据个数而不是具体的内容

7、sqlmap选择数据信息

参数:

--start、--stop和--where

列举部分数据使用参数

--start

--stop

查看第三条和第四条数据

列举第一条数据使用

--stop 1

参数:

--pivot-column

sqlmap无法检测主键时使用该参数手动指定中轴列,如:

--pivot-column=id

参数:

--where

设置条件

sqlmap学习(十三)枚举信息

8、sqlmap暴力破解数据

暴力破解表名和列名

参数:

--common-tables

--common-columns

某些情况下用

--tables

--columns

不能列出数据库中表名来

版本小于5.0的MySQL没有information_schema表

微软Access的MSysObjects表默认不可读

数据库用户权限过低无法读取表名

当无法读出表名时可以使用参数

--common-tables

暴力破解表名

当无法读出列名时可以使用参数

--common-columns

暴力破解列名

9、sqlmap读取文件

参数:

--file-read

当数据库管理系统是MySQL、PostgreSQL或微软的SQL Server且当前用户有读取文件相关权限时读取文件。

10、sqlmap写入文件

参数:

--file-write

--file-dest

--file-write

是读取本地文件

--file-dest

将读取到的文件写入到远程绝对路径

当数据库管理系统是MySQL、PostgreSQL或微软的SQL Server且当前用户有写文件相关权限时上传文件是可行的。

11、sqlmap检索所有信息

参数:

-a

--all