sqlmap使用教程(5)-信息获取

MySQL数据库

-b,用来获取数据库标识

--hostname,可以获取数据库服务器的主机名

sqlmap使用教程(5)-信息获取_第1张图片

-current-user,用来获取当前连接数据库的用户名

sqlmap使用教程(5)-信息获取_第2张图片

--users,获取数据库管理系统中的所有用户

sqlmap使用教程(5)-信息获取_第3张图片

--passwords,可以获取数据库用户密码的哈希值

sqlmap使用教程(5)-信息获取_第4张图片

--current-db,可以用来获取当前连接的数据库名称

sqlmap使用教程(5)-信息获取_第5张图片

--dbs,用来获取数据库管理系统中的所有数据库名称

sqlmap使用教程(5)-信息获取_第6张图片

--tables用来枚举数据库管理系统中的所有表,可以使用-D选项指定数据库名称

-columns,可以用来获取数据表的所有列,可以使用-D选项指定数据库名称,使用-T选项指定数据表名称

--dump,可以用来获取数据表中的内容,并且默认会将内容保存在CSV格式的文件中(dump翻译为转储),可以使用-D和-T选项指定数据库和数据表名称,选项-C,可以用来指定列名

--comments,可以用来获取注释信息

--count选项获取数据表的条目数,-D和-T选项指定数据库和数据表名称

sqlmap使用教程(5)-信息获取_第7张图片

MSSQL数据库信息

通常用于ASP+IIS+MSSQL或ASP.NET+IIS+MSSQL架构中

-b,用来获取数据库标识

-is-dba选项可以用来检测数据库用户是否为DBA(数据库管理员)

--current-db,用来获取当前连接的数据库的名称

--dbs,用来获取数据库管理系统中的所有数据库名称

选项--users和--passwords,可以用来获取数据库用户和密码

其余获取表名称,列名称与mysql一样

Access数据库

通常用于组成Windows+Access+ASP/ASP.NET架构。是一种文件型数据库,它不像MySQL和MSSQL,需要先创建数据库,然后创建表,最后将数据保存到表中。Access数据库采用表名+列名+内容数据的形式构成一个后缀为.mdb或.accdb的文件。一个文件就是一个数据库,其中可以包含多张表

-b选项用于进行指纹识别

-common-tables用来暴力破解数据表,默认使用common-tables.txt字典进行破解,该字典默认保存在/usr/share/sqlmap/data/txt/目录下

--common-columns,用来暴力猜测数据表列。该选项默认使用common-columns.txt字典进行暴力破解,该字典保存在/usr/share/sqlmap/data/txt/目录下

--dump选项默认利用wordlist.tx_字典暴力破解数据表列所存储的内容。该字典默认保存在/usr/share/sqlmap/data/txt/目录下

Oracle数据库信息

-b选项获取目标数据库的指纹信息

--hostname选项可以获取数据库服务器所在的主机名称。

--current-user用来获取当前的数据库用户

--roles,可以用来枚举数据库用户的角色。

--is-dba,可以判断当前数据库用户是否拥有DBA权限

其余获取表名称,列名称与mysql一样

sql语句执行

选项--sql-query,可以用来指定SQL查询语句(=加'''')

--sql-shell,用于启动一个交互式SQL Shell

总结:渗透测试过程中,信息获取得到数据库名称一般就可以,点到为止,渗透测试的目的是测试系统是否有风险漏洞,而不是为了获取数据库信息!

你可能感兴趣的:(安全杂记,数据库)