Sqlmap与burpsuite动态更新某些参数
有如下注入点:
http://localhost/id=1&order_nu=1
情况说明:
id为注入点, 每一次注入时, order_nu不能跟上次的一样(假说这个order_nu为一个订单号, 提交一次时会进入数据库查询是否存在,存在时直接提示订单号存在并退出, 而且它不为注入点)。
如:
http://localhost/id=INJECT&order_nu=1 注入 http://localhost/id=INJECT&order_nu=a 注入 http://localhost/id=INJECT&order_nu=d 注入 http://localhost/id=INJECT&order_nu=1 不能注入, 因为刚才运行过order_nu=1的语句了
解决方按:
每一次注入id参数的同时, 修改order_nu为不同的值。
一开始用sqlmap tamper没能实现, 当时实现方法为:
payload = payload+&order_nu=time.time()
这只是一个伪代码, 也就是在现有的payload添加多一个参数order_nu, 且值为变动的time.time值。
注入时语句写成:
http://localhost/id=INJECT
因为id为注入, 在payload中会自动加入参数: &order_nu=time.time()的值 。
但最后未能成功, 因为 payload 会自动urlencode编码, 把 &order_nu=time.time中的 & = 编码掉了。
最终我的解决方案为:
burpsuite 创一个宏来转换。

要注意的是, 比如原始链接为:
http://localhost/id=INJECT&order_nu=d
我们这里去掉后再重新访问一次, 之后再添加上原来的参数:

这里的参数设置为页面中会自动动态更新的参数, 如这里的时间值。
之后在sqlmap中设置 --proxy 代理, 指定要测试的参数(-p) id, 或跳过测试参数(--skip) order_nu, 经过 burpsuite即可。 下面是动态更新时的情况。


补充:
关于宏中参数的设置, 如果自带源码中没有, 可以像上面一样添加, 如果存在的话, 也可以像上面一样添加, burpsuite 会自动在原有的基础上自动进行更新
Sqlmap与burpsuite动态更新某些参数的更多相关文章
- Android Handler传递参数动态更新UI界面demo
package com.example.demo_test; import android.app.Activity; import android.os.Bundle; import android ...
- sqlmap和burpsuite绕过csrf token进行SQL注入检测
利用sqlmap和burpsuite绕过csrf token进行SQL注入 转载请注明来源:http://www.cnblogs.com/phoenix--/archive/2013/04/12/30 ...
- JSPatch – 动态更新iOS APP
原文:http://blog.cnbang.net/works/2767/ JSPatch是最近业余做的项目,只需在项目中引入极小的引擎,就可以使用JavaScript调用任何Objective-C的 ...
- JAVA代码热部署,在线不停服动态更新
本地debug的时候,可以实时编译并更新代码,线上也可以不停服来动态更新类,即所说的java热部署. JDK代理的两种方式: 1.premain方式是Java SE5开始就提供的代理方式,但其必须 ...
- django 动态更新属性值
django 动态更新属性值 class TestTime(models.Model): """ 功能说明:指定测试的每一关总用时 """ ...
- mybatis(二)接口编程 、动态sql 、批量删除 、动态更新、连表查询
原理等不在赘述,这里主要通过代码展现. 在mybatis(一)基础上,新建一个dao包,并在里面编写接口,然后再在xml文件中引入接口路径,其他不变,在运用阶段将比原始方法更节约时间,因为不用再去手动 ...
- IOS App动态更新
框架 JSPatch WaxPatch react-native 方案对比 目前已经有一些方案可以实现动态打补丁,例如WaxPatch,可以用Lua调用OC方法,相对于WaxPatch,JSPat ...
- 利用sqlmap和burpsuite绕过csrf token进行SQL注入 (转)
问题:post方式的注入验证时遇到了csrf token的阻止,原因是csrf是一次性的,失效导致无法测试. 解决方案:Sqlmap配合burpsuite,以下为详细过程,参照国外牛人的blog(不过 ...
- AsyncTask用法解析-下载文件动态更新进度条
1. 泛型 AysncTask<Params, Progress, Result> Params:启动任务时传入的参数,通过调用asyncTask.execute(param)方法传入. ...
随机推荐
- a标签不能嵌套
<a href='http://www.baidu.com'> <a href='http://www.google.com'></a> </a> &l ...
- pyhcarm github
1.主题 介绍如何用Pycharm实打实的创建.运行.调试程序. 2.准备工作 Pycharm版本为2.7或者更高. 至少安装一个Python解释器,2.4到3.3均可 3.下载安装Pycharm 下 ...
- CF662C Binary Table 枚举 FWT
题面 洛谷题面 (虽然洛谷最近有点慢) 题解 观察到行列的数据范围相差悬殊,而且行的数量仅有20,完全可以支持枚举,因此我们考虑枚举哪些行会翻转. 对于第i列,我们将它代表的01串提取出来,表示为\( ...
- UTF-8和GBK编码之间的区别(页面编码、数据库编码区别)以及在实际项目中的应用
第一节:UTF-8和GBK编码概述 UTF-8 (8-bit Unicode Transformation Format) 是一种针对Unicode的可变长度字符编码,又称万国码,它包含全世界所有国家 ...
- Function.caller, arguments.caller, arguments.callee, arguments.callee.calller
Function.caller指向当前函数的调用者,是arguments.caller的替代者 arguments.caller也是指向当前函数的调用者,已被废弃 arguments.callee是对 ...
- 【DP】【CF9D】 How many trees?
传送门 Description 给你两个正整数\(n,h\),求由\(n\)个点组成的高度大于等于\(h\)的二叉树有多少个 Input 一行两个整数\(n,h\) Output 一个整数代表答案. ...
- maven 启动 tomcat 及 跳过 test 安装
1.先在pom文件中配置 tomcat插件 <!-- 文件上传组件 --> <dependency> <groupId>commons-fileupload< ...
- 洛谷P1558 色板游戏
题目背景 阿宝上学了,今天老师拿来了一块很长的涂色板. 题目描述 色板长度为L,L是一个正整数,所以我们可以均匀地将它划分成L块1厘米长的小方格.并从左到右标记为1, 2, ... L.现在色板上只有 ...
- js 时间戳 转化
new Date((1524142795*1000)).toJSON().slice(11,16)
- 「Python」python绘制图表
介绍一种简单而又功能强大的绘制图形或报表的包—pyecharts,一个基于Echarts(基于JS的数据可视化库)的图标类库,除了绘制常见的折线图.柱状图.饼图.箱型图和散点图外,还可以绘制3D柱状图 ...