渗透利器-kali工具 (第三章-4) sqlmap之sql注入原理利用

本文内容:

  • 认识sql注入漏洞
  • sqlmap简介
  • sqlmap在windows下的安装配置
  • sqlmap的常见用法、命令用法

 

从sql注入到sqlmap的使用

1,认识sql注入漏洞:

  1.什么是sql注入:

    攻击者通过构造不同的sql语句来实现对数据库的操作。

  2.两个关键条件:

    1.参数用户可以控制。

    2.程序原本要执行的代码,拼接了用户输入的数据,然后去执行。

2,sqlmap简介:

  1.开源的渗透测试工具、自动化检测和利用sql注入漏洞。

  2.支持对多种数据库进行注入测试。

  3.支持多种注入技术,例如:盲注、时间延时注入、报错注入等。

  4.支持枚举用户数据库信息,列入,用户名、密码。

  5.自动识别哈希密码,并且使用密码字典进行破解。

  sqlmap是渗透测试人员对测试SQL注入漏洞进行检测的最佳工具。

3,sqlmap在Windows下的安装配置:

  1.sqlmap工具地址:https://github.com/sqlmapproject/sqlmap

  2.安装配置:https://www.python.org/downloads/windows/

  3.python2和python3共存:https://www.zkaq.org/t/3572.html

  sqlmap最新版本支持Python2.7和python3,安装好Python就可以直接使用 。

4,sqlmap的常见用法、命令用法:

  1.sqlmap注入的基本流程:

    判断sql注入点

    查询数据库信息

    根据数据库查询数据包

    根据数据表查询列信息

    通过sql注入点来让我们进一步信息收集

  2.sqlmap测试流程:

    1.检测是否存在注入点:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 

    2.查询数据库信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 --dbs

    3.通过数据库查询数据表信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 -D 库名 --tables

    4.通过数据表查询字段信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 -D 库名 -T 表名 --cloumns

    5.通过字段枚举字段内容:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 --dump -D 库名 -T 表名 -C 字段名[可以多个]

  3.查看数据库相关信息:

    --current -user    枚举当前用户

    --cruuent -dbs    枚举当前数据库

    --dbs        枚举可用的数据库

    --is -dbs       枚举数据库权限

    --os-shell       向网站中投入cmdshell

    --passwords     枚举数据库用户密码

    -f          启用广泛的指纹识别

    -b            检测数据库指纹

    --hostname       枚举主机名称

    --identity-waf     检测waf信息

  4.sqlmap更新:[建议直接下载]:

    sqlmap.py --update

posted @ 2020-05-09 20:00  TheHIde  阅读(569)  评论(0编辑  收藏  举报