有如下注入点:

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动态更新某些参数的更多相关文章

  1. Android Handler传递参数动态更新UI界面demo

    package com.example.demo_test; import android.app.Activity; import android.os.Bundle; import android ...

  2. sqlmap和burpsuite绕过csrf token进行SQL注入检测

    利用sqlmap和burpsuite绕过csrf token进行SQL注入 转载请注明来源:http://www.cnblogs.com/phoenix--/archive/2013/04/12/30 ...

  3. JSPatch – 动态更新iOS APP

    原文:http://blog.cnbang.net/works/2767/ JSPatch是最近业余做的项目,只需在项目中引入极小的引擎,就可以使用JavaScript调用任何Objective-C的 ...

  4. JAVA代码热部署,在线不停服动态更新

    本地debug的时候,可以实时编译并更新代码,线上也可以不停服来动态更新类,即所说的java热部署.   JDK代理的两种方式: 1.premain方式是Java SE5开始就提供的代理方式,但其必须 ...

  5. django 动态更新属性值

    django 动态更新属性值 class TestTime(models.Model): """ 功能说明:指定测试的每一关总用时 """ ...

  6. mybatis(二)接口编程 、动态sql 、批量删除 、动态更新、连表查询

    原理等不在赘述,这里主要通过代码展现. 在mybatis(一)基础上,新建一个dao包,并在里面编写接口,然后再在xml文件中引入接口路径,其他不变,在运用阶段将比原始方法更节约时间,因为不用再去手动 ...

  7. IOS App动态更新

    框架 JSPatch WaxPatch react-native   方案对比 目前已经有一些方案可以实现动态打补丁,例如WaxPatch,可以用Lua调用OC方法,相对于WaxPatch,JSPat ...

  8. 利用sqlmap和burpsuite绕过csrf token进行SQL注入 (转)

    问题:post方式的注入验证时遇到了csrf token的阻止,原因是csrf是一次性的,失效导致无法测试. 解决方案:Sqlmap配合burpsuite,以下为详细过程,参照国外牛人的blog(不过 ...

  9. AsyncTask用法解析-下载文件动态更新进度条

    1. 泛型 AysncTask<Params, Progress, Result> Params:启动任务时传入的参数,通过调用asyncTask.execute(param)方法传入. ...

随机推荐

  1. 如何在DBGrid里实现Shift+“选择行”区间多选的功能!

    DELPHI 的TDBGrid 控 件 主 要 用 来 处 理 数 据 表, 它 的 属 性 中 有 一 个dgMultiSelect, 若 此 属 性 设 定 为TRUE, 则 可 以 选 中 多  ...

  2. Java对象空间分配流程

    对象空间分配流程如下:   针对这个流程,分别解释一下每一个选项的使用场景. 栈上分配: 栈上分配的基础在于逃逸分析,逃逸分析可以得到三种对象的逃逸状态. 全局逃逸:一个对象的引用逃出了方法或者线程. ...

  3. EM算法【转】

    混合高斯模型和EM算法 这篇讨论使用期望最大化算法(Expectation-Maximization)来进行密度估计(density estimation). 与K-means一样,给定的训练样本是, ...

  4. 管理与技术未必不可兼得,一个20年IT老兵的码农生涯

    作者|康德胜 我是一个喜欢写代码但几乎不太有机会写代码的CTO,也是一个看得懂财务报表.通过所有CFA(金融特许分析师)考试并获得FRM(金融风险经理)认证的拿到金融MBA的CTO,如果我有幸被称作码 ...

  5. WPA-PSK无线网络破解原理及过程

    原文链接地址:http://www.freebuf.com/articles/wireless/58342.html 本文将主要讲讲WPA-PSK类型的无线网络安全问题,首先我们看下802.11协议相 ...

  6. Hive(五)hive的高级应用

    一.视图 视图:享用基本表的数据,不会生成另外一份数据创建视图:create view view_name as select * from carss;create view carss_view ...

  7. python基础----常用模块

    一 time模块(时间模块)★★★★                                                      时间表现形式 在Python中,通常有这三种方式来表示时 ...

  8. json&pickle序列化

    一.用途 我们需要将内存中的数据进行序列化,即写入文件中时,写入的类型只能是字符串或者二进制类型.但是如果我们想要将复杂一些的数据类型,如:列表.字典或者函数之类的同样进行序列化,我们就要用到 jso ...

  9. linux之nginx的安装

    (一)这次是自己折腾服务器的环境,所以自己算是都装过一遍,在装的过程中也是在网上搜索,其实最后在公司运维的指导下知道自己安装出错在哪里的.不说了,直接说安装和问题 (二):首先从 http://ngi ...

  10. JAVA 日期处理工具类 DateUtils

    package com.genlot.common.utils; import java.sql.Timestamp;import java.text.ParseException;import ja ...