前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Sqlmap的使用

Sqlmap的使用

作者头像
C4rpeDime
发布2018-08-29 09:47:21
1.5K0
发布2018-08-29 09:47:21
举报
文章被收录于专栏:黑白安全黑白安全

#介绍

Sqlmap是开源的自动化SQL注入工具,由Python(2)写成,具有如下特点:

    *完全支持MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。     *完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。     *在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。     *支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列。     *支持自动识别密码哈希格式并通过字典破解密码哈希。     *支持完全地下载某个数据库中的某个表,也可以只下载某个表中的某几列,甚至只下载某一列中的部分数据,这完全取决于用户的选择。     *支持在数据库管理系统中搜索指定的数据库名、表名或列名     *当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持下载或上传文件。     *当数据库管理系统是MySQL、PostgreSQL或Microsoft SQL Server时支持执行任意命令并回现标准输出。

--- 去年只是对一些靶机用过sqlmap,效果挺好,只是过了一段时间就会忘记具体怎么用了,开个笔记记一下一些参数。

#实例 --- ##参数 ---

基本的

1.获取基本信息 -b 2.暴库 --dbms 3.显示web当前使用的数据库 --current-db 4. web数据库使用账户 --current-user 5.列出Sqlserver所有用户 --users     6.数据库账户与密码 --passwords 7.列出数据库中的表 -D [数据库名] --tables 8.列出表中字段 -D [数据库名] –T [要列出的表] --columns 9.暴字段内容 -D [数据库名] –T [要暴的表] –C “email,Username,password”(即要暴的字段) --dump  Dump就是将结果导出

-u 指定目标url

使用参数“-u”或“–url”指定一个URL作为目标,该参数后跟一个表示URL的字符串,可以是http协议也可以是https协议,还可以指定端口 使用: python2 sqlmap.py -u “http://www.testfire.net/search.aspx?txtSearch=1"

-m 从文本文件中批量指定url

参数“-u”一次只能指定一个URL,若有多个URL需要测试就显得很不方便,我们可用将多个URL以一行一个的格式保存在文本文件中,然后使用参数“-m”,后跟该文本文件路径,让Sqlmap依次读取文件中的URL作为攻击目标。 文本格式,一行一个url 使用: python2 sqlmap.py -m url.txt –batch

-data POST数据

该参数指定的数据会被作为POST数据提交,Sqlmap也会检测该参数指定数据是否存在注入漏洞。 使用: python2 sqlmap.py -u “http://target.com/user.php" –data=”id=0&name=test”

-level 检测级别

此参数用于指定检测级别,有1~5共5级。默认为1,表示做最少的检测,相应的,5级表示做最多的检测。

-l 从burp的代理日志中解析目标

-l指定一个日志文件(.log),sqlmap从该日志中解析出可能的攻击目标,并逐个尝试进行注入。参数后跟一个日志文件路径 需要在burp中先设置,具体是project-options-misc-logging-proxy-requests打勾 使用: python2 sqlmap.py -l burp_log/proxy.log –batch 因为这个日志文件往往很大,sqlmap每碰到一个url就会询问是否test,所以用batch参数可以默认全部确定。 还可以–scope参数正则过滤日志

-d 直接连接数据库

该参数后跟一个表示数据库的字符串,该字符串有以下两种格式: (1).当数据库管理系统是MySQL、Oracle、Microsoft SQL Server或PostgreSQL等时格式为:   DBMS://USER:PASSWORD@DBMS_IP:DBMS_PORT/DATABASE_NAME (2).当数据库管理系统是SQLite、Microsoft Access或Firebird等时格式为:   DBMS://DATABASE_FILEPATH 使用:如连接本地mysql,需要安装py2的pymysql模块。 python2 sqlmap.py -d “mysql://root:yr_pwd@127.0.0.1:3306/test_db”

-v 输出信息级别

各个输出级别的描述如下:     0:只显示Python的tracebacks信息、错误信息[ERROR]和关键信息[CRITICAL];     1:同时显示普通信息[INFO]和警告信息[WARNING];     2:同时显示调试信息[DEBUG];     3:同时显示注入使用的攻击荷载;     4:同时显示HTTP请求;     5:同时显示HTTP响应头;     6:同时显示HTTP响应体。 使用: python2 sqlmap.py -v 3

-h 查看基本参数

python2 sqlmap.py -h

-hh 查看全部参数

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-05-224,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • #介绍
  • 基本的
  • -u 指定目标url
  • -m 从文本文件中批量指定url
  • -data POST数据
  • -level 检测级别
  • -l 从burp的代理日志中解析目标
  • -d 直接连接数据库
  • -v 输出信息级别
  • -h 查看基本参数
  • -hh 查看全部参数
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档