作者:377926138_b741aa | 来源:互联网 | 2023-02-05 20:44
本文主要和大家分享Sqlmap命令行参数实例详解,我们先和大家解释一下Sqlmap是什么,希望能帮助到大家。
一、Sqlmap是什么
Sqlmap是开源的自动化SQL注入工具,由Python写成,
本文主要和大家分享Sqlmap命令行参数实例详解,我们先和大家解释一下Sqlmap是什么,希望能帮助到大家。
一、Sqlmap是什么
Sqlmap是开源的自动化SQL注入工具,由Python写成,具有如下特点:
-
完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird
。本文来源gao!%daima.com搞$代*!码网1
搞代gaodaima码、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。
-
完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。
-
在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。
-
支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。
-
支持自动识别密码哈希格式并通过字典破解密码哈希。
-
支持完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列,甚至只下载某一列中的部分数据,这完全取决于用户的选择。
-
支持在数据库管理系统中搜索指定的数据库名、表名或列名
-
当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持下载或上传文件。
-
当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持执行任意命令并回现标准输出。
二、安装Sqlmap
Sqlmap的开源项目,托管在github,最简单的安装方式便是使用git,执行如下命令:
git clone https://github.com/sqlmapproject/sqlmap.git
片刻后命令执行完毕,可以看到当前目录中多了一个名为“sqlmap”的目录,
该目录中保存着Sqlmap的Python源码、配置文件和文档。
由于Python是解释执行的语言,不用编译,所以至此最新版的Sqlmap已经安装完成。
cd到“sqlmap”目录中,用命令“python sqlmap”启动Sqlmap,如下图所示:
当想要更新Sqlmap时,进入到“sqlmap”目录中执行命令“git pull”即可。
三、输出级别(Output verbosity)
参数:-v
Sqlmap的输出信息按从简到繁共分为7个级别(和葫芦娃一样多),依次为0、1、2、3、4、5和6。使用参数“-v <级别>”来指定某个等级,如使用参数“-v 6”来指定输出级别为6。默认输出级别为1。各个输出级别的描述如下:
各个级别输出的信息详细到什么程度,还需要自己尝试下,亲眼见到,才会有明确的认识。
四、指定目标
Sqlmap运行时必须指定至少一个目标,支持一次指定多个目标。有以下几种指定目标的方式:
1.直接连接数据库
参数:-d
使用参数“-d”直接连接数据库,该参数后跟一个表示数据库的字符串,该字符串有以下两种格式:
(1).当数据库管理系统是MySQL、Oracle、Microsoft SQL Server或PostgreSQL等时格式为:
DBMS://USER:[email protected]_IP:DBMS_PORT/DATABASE_NAME