• Sqlmap(SQL注入自动化工具)


    简介

            开源的SQL注入漏洞检测的工具,能够检测动态页面中的get/post参数,cookie,http头,还能够查看数据,文件系统访问,甚至能够操作系统命令执行。

            检测方式:布尔盲注、时间盲注、报错注入、UNION联合查询注入、堆叠注入

            支持数据库:Mysql、Oracle、PostgreSQL、MSSQL、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDb

    下载安装

            1、下载官网地址:https://sqlmap.org/

                     

            2、环境:因为sqlmap基于Python语言开发的,所以需要将Python这个语言环境给安装上。

            3、将下载好的sqlmap进行解压并且copy到python路径下

                    

             4、在桌面创建一个cmd的快捷方式,并命名为SQLMap

                    

                     

            5、在新建的快捷方式上右键“属性”,将“起始位置”修改为自己sqlmap的路径,点击确定。

                    

            6、 双击已创建的快捷方式,输入sqlmap.py -h,出现如下信息则表示安装成功。

                     

    参数使用

            指定目标

    -u  "url"

            (指定URL,get请求方式)

    -r request.txt         

            Post提交方式,使用HTTP请求文件,该文件可从BurpSuit中导出。

    -m url.txt

            使用一个包含多个url的文件进行扫描。若有重复,sqlmap会自动识别成一个。

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

            扫描,使用Google语法得到的url。

    -l log.txt --scope="正则表达式"

            Post提交方式,使用BurpSuit的log文件。(Options—>Misc—>Logging—>Proxy—>勾选Request ,scope的作用是 基于正则表达式去过滤日志内容,筛选需要扫描的对象。

    -c sqlmap.conf

            使用配置文件进行扫描 (sqlmap.conf与sqlmap.py 在同一目录)

            指定目标参数

    -p  "username,id"

            指定要扫描的参数

    --data="username=admin&password=123"

            指定扫描的参数,get/post都适用

    --method=GET

            指定请求方式,还有POST

    --cookie="security=low;PHPSESSID=121123131"

            使用cookie的身份认证

    --skip  "username,id"

            排除指定的扫描参数

    --param-del=" ;"

            改变分隔符,默认是&,因为有些网站不使用&传递多个数据。

    --drop-set-cookie(放在cookie的值中的末尾位置)

            有时候发起请求后,服务器端会重新Set-cookie给客户端,SQLmap默认会使用新的cookie,这时候可以设置此参数,表示还是用原来的cookie。

    --user-agent  " aaaaaaa"

            使用浏览器代理头

    --random-agent

            使用随机的浏览器代理头

    --host=" aaaaa"

            指定主机头

    --referer="aaaaaa"

            指定referer头

    --headers="host:aaaa\nUser-Agent:bbbb"

            有些网站需要特定的头来身份验证

    --auth-type , —auth-cred

            —auth-type Basic —auth-cred “user:pass”        身份认证,还有Digest、NTLM

    --auth-file="ca.PEM"

            使用私钥证书去进行身份认证

    --proxy="url"

            使用代理去扫描目标,代理软件占用的端口在8080

    --proxy-cred="name:pass"

            使用代理时的账号和密码

    --ignore-proxy

            忽略系统级代理设置,通常用于扫描本地网络目标,本网段。

            查看数据信息

    --users

            查询所有的数据库账号

    --dbs

            查询所有数据库

    --schema

            查询源数据库(包含定义数据的数据)

    -a

            查询当前user、当前数据库、主机名、当前user是否是最大权限管理员、数据库账号等

    -D 数据库名

            指定数据库

    --current-user

            查询当前数据库中所有用户名

    --current-db

            查询当前数据库名

    --hostname

            查看服务器的主机名

    --Privileges -U username

            查询username的权限

    --roles

            查询角色

    --tables

            查看所有的表

    -T  表名

            指定表

    --columns

            查看所有的字段

    -C 字段名

            指定字段

    --count

            计数,查看有多少条数据

    --exclude-sysdbs

            排除系统库

    --dump

            查看数据

    --start 3

            查看第三条

    --end 4

            查看第四条

    --sql-query “select * from users”

            执行语句

    --common-columns

            暴力破解字段,应用于两种情况:①无权限读取数据。②mysql<5.0 ,没有infomation_schema库

    --common-tables

            暴力破解表

    --check-waf

            检测WAF/IPS/IDS

    --hpp

            绕过WAF/IPS/IDS

    —identify-waf

            彻底检测WAF/IPS/IDS

  • 相关阅读:
    Android插件化学习之启动插件Activity
    SpringBoot 日志总结
    微信小程序5
    算法训练营第三天 | 203.移除链表元素、707.设计链表 、206.反转链表
    java-net-php-python-ssm儿童演出礼服租赁网站计算机毕业设计程序
    iOS重签名-超详细,附排错
    d3ctf_2019_unprintablev **
    IronSource 聚合广告平台接入踩坑日记——游戏声音消失
    CI/CD最佳实践
    在taro开发小程序中,创建全局事件,更新各个tabbar页面数据,适用购物车更新,taro购物车数据同步
  • 原文地址:https://blog.csdn.net/F2444790591/article/details/125820674