首页 > 代码库 > sqlmap使用笔记
sqlmap使用笔记
sqlmap使用笔记
Sqlmap简介
官方网址:http://sqlmap.org
Github地址:https://github.com/sqlmapproject/sqlmap
中文使用说明:http://www.91ri.org/6775.html
Sqlmap是一种开源的渗透测试工具,可以自动检测和利用SQL注入漏洞以及接入该数据库的服务器。它拥有非常强大的检测引擎、具有多种特性的渗透测试器、通过数据库指纹提取访问底层文件系统并通过外带连接执行命令。
支持的数据库:MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase and SAP MaxDB
SQL注入技术:boolean-based blind, time-based blind, error-based, UNION query, stacked queries and out-of-band
枚举数据:users, password hashes, privileges, roles, databases, tables and columns
......具体参考官网
Sqlmap安装
Sqlmap需要安装在linux系统下,这里将采用Ubuntu14.04+sqlmap来安装。
- 准备Ubuntu14.04,配置网络,安装Python2.7.8
- 下载sqlmap,两种方式:
a) 直接在https://github.com/sqlmapproject/sqlmap下载
b) 利用git命令:
git clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
3. 保证Python安装成功,运行python出现版本信息
4. 此时运行进入XX/XX/sqlmap-dev文件夹,运行
python sqlmap.py –h可以得到一个基本的参数说明
python sqlmap.py –hh 可以得到一个详细的参数说明
需要注意,sqlmap有些功能需要第三方库的支持,如果某些参数命令需要安装第三方库请自行下载安装
Sqlmap使用
官方地址:点击
Sqlmap的参数说明很长,尤其是在-hh参数下的帮助文档更为详细。
1.信息显示
-v 可以设置6个等级,用来控制显示不同的信息,一般选3就行了
2.选择目标
-d 直接连接目标数据库
-u 连接目标url地址,常用,注意后面的id=*,没有是不行的
-m 可以连接多个目标
-g 通过google dork来选择目标(什么是google dork?,就是在Google上搜你需要攻击的漏洞类型,看图,也就是谷歌搜索后得到的地址)
3.漏洞扫描
输入下面的命令,对该网址进行漏洞检测(说明一点,不是所有都有漏洞):
输入后程序开始运行,出现下面这个图,说明sqlmap开始对这个url进行漏洞检测。
从结果中,可以得到该服务器的操作系统为windows 2003或XP
数据库的类型是Microsoft Access。
枚举:
-a 检索所有内容
--dbs扫描数据库信息
--tables 列出数据库所有的表信息
--columns 列出数据库表中的所有字段信息
--current-db 列出当前的数据库名称
--roles 枚举用户
--dump-all 列所有表的内容
--exclude-sysdbs 列举用户数据库的表内容
--common-tables暴力破解表
….此处省略
再次输入命令:
从图中,可以得到数据库名称Microsoft_Access_masterdb,其中有四个表分别为company,news,products,userinfo
试试能不能枚举用户名称,输入命令:
。。。居然提示,Microsoft Access不可以进行这样的枚举
试试枚举所有表的信息,那么输入命令:
那么,看看products表中的详细信息,输入命令:
等结果时候有点慢,就ctrl+c给结束了,可以看部分内容,如下图:
PS:只是简单的介绍下使用的基本操作,用于安全软件测试,作者也是在学习,说实话没啥意思,虽然很不愿意干这事,工作没办法
流弊的sqlmap渗透:渗透126网盘、使用sqlmap进行SQL注入
sqlmap使用笔记