问题:post方式的注入验证时遇到了csrf token的阻止,原因是csrf是一次性的,失效导致无法测试。

解决方案:Sqlmap配合burpsuite,以下为详细过程,参照国外牛人的blog(不过老外讲的不是很细致,不适合我等小白)。

(英文好的可以直接看:http://labs.asteriskinfosec.com.au/fuzzing-and-sqlmap-inside-csrf-protected-locations-part-2/):

1、打开burpsuite(以1.5为例),设置好本地代理并设置为off状态;

2、burpsuite的option选项中提供了Sessions(会话录制、分析和处理的功能)。(几乎没看到网上介绍过,所以从没有用过。。。)

3、打开option选项卡中的Sessions,添加处理规则并命名:“Add”rules  description添加处理动作:rule actions,我测试遇到的是post请求,故选择“Run a post-request macro”;

4、设置scope,点击scope选项卡,只选中Tool Scope中的Proxy(use with caution),设置URL Scope,将需要拦截的请求页面地址粘贴至其中;

5、录制会话:Add macro,打开了Macro Recorder,点击“Record macro”,此时在浏览器中打开疑似存在注入的页面并提交post请求,此时在Macro Recorder中可以看到请求页面和提交请求的url及自动探测出的参数;

6、按ctrl键分别选中需要的请求,然后点击OK,将其添加到Macro Editor中;

7、选中Get请求并Configure item打开配置界面,手动添加response中的参数(csrf token)并点OK;

7、选中Post请求并Configure item打开配置界面,将csrf token的值设为Response1,及Get请求的相应中选中的参数;

8、一路点击OK,就配置好了;

9、运行sqlmap,输入正常注入语句,增加代理选项--proxy="http://127.0.0.1:8080"后执行;

10、可以在burpsuite中的的proxy选项卡中的history项中看到注入执行过程,如果页面响应都正确,则说明以上配置有效且成功。

解决过程中有几个问题记录下:

1、谷歌 搜索关键词:sqlmap CSRF protection bypass,参考了一些资料,介绍说sqlmap可以识别一些csrf token然后处理,不过测试时候没有发现;

2、之后才看到有一个人利用burpsuite进行处理的方法(上述的英文链接);

3、你懂的,看懂英文和理解起来还是有些差距的,加上作者没有非常详细的介绍,我自己测试很久都不行。最后才发现不需要关注同样变化的cookie,只需要关注csrf token即可,因为burpsuite自带的cookie jar 可以处理变化的cookie。

利用sqlmap和burpsuite绕过csrf token进行SQL注入 (转)的更多相关文章

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

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

  2. 防止sql注入和sqlmap介绍

    sql注入问题从WEB诞生到现在也一直没停过,各种大小公司都出现过sql注入问题,导致被拖库,然后存在社工库撞库等一系列影响. 防止sql注入个人理解最主要的就一点,那就是变量全部参数化,能根本的解决 ...

  3. 自动化SQL注入工具 sqlmap 使用手册

    0x00 sqlmap介绍 什么是sqlmap? sqlmap是一个开源的渗透测试工具,它自动化了检测和利用SQL注入缺陷 以及接管数据库服务器的过程.它配备了一个强大的检测引擎 ,以及终极渗透测试仪 ...

  4. 使用SQLMAP对网站和数据库进行SQL注入攻击

    from:http://www.blackmoreops.com/2014/05/07/use-sqlmap-sql-injection-hack-website-database/ 0x00 背景介 ...

  5. Web站点如何防范XSS、CSRF、SQL注入攻击

    XSS跨站脚本攻击 XSS跨站脚本攻击指攻击者在网页中嵌入客户端脚本(例如JavaScript),当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的,比如获取用户的Cookie,导 ...

  6. 利用BURPSUITE检测CSRF漏洞

    CSRF漏洞的手动判定:修改referer头或直接删除referer头,看在提交表单时,网站是否还是正常响应. 下面演示用Burpsuite对CSRF进行鉴定. 抓包. 成功修改密码完成漏洞的利用.

  7. 【Pyhon】利用BurpSuite到SQLMap批量测试SQL注入

    前言 通过Python脚本把Burp的HTTP请求提取出来交给SQLMap批量测试,提升找大门户网站SQL注入点的效率. 导出Burp的请求包 配置到Burp的代理后浏览门户站点,Burp会将URL纪 ...

  8. laravel的csrf token 的了解及使用

    之前在项目中因为没有弄清楚csrf token的使用,导致发请求的话,一直请求失败,今天就一起来看一下csrf的一些东西. 1.Cross-site request forgery 跨站请求伪造,也被 ...

  9. Egg.js学习与实战系列 · Post请求`csrf token`问题

    在使用axios请求egg.js封装的post接口时出现missing csrf token 或 invalid csrf token.踩过坑的新手估计不在少数,本篇记录一下解决方法. 问题原因 引用 ...

随机推荐

  1. Tiny4412之C语言实现流水灯,Tiny4412裸机程序[3]

    在前边我们使用汇编完成了一个流水灯实验: Tiny4412汇编流水灯代码,Tiny4412裸机LED操作 ---- - -- -- -- - -- -- 修改: # ${MKBL2} ${SOURCE ...

  2. A9系统时钟用外部

     问个笨蛋的问题,,电脑主板的主频是由外部时钟倍频得来,还是内部时钟倍频?? [ARM11]瘋子 2015/5/5 19:08:16 @蓝凌风 [x86]蓝凌 2015/5/5 19:08:25 外部 ...

  3. 使用Spring框架的12个开源项目

    使用Spring框架的12个开源项目 http://www.csdn.net/article/2013-10-14/2817176-open-source-projects-that-use-spri ...

  4. 1220. Stacks

    1220 又一神题啊  卡内存可以卡到这种地步 省得不行了 开两个[N]数组 一个来记录前驱  一个存数 记录前驱的用unsigned short类型 最大可达65535 不过可以标记一下是否比这个数 ...

  5. poj 3083 Children of the Candy Corn(DFS+BFS)

    做了1天,总是各种错误,很无语 最后还是参考大神的方法 题目:http://poj.org/problem?id=3083 题意:从s到e找分别按照左侧优先和右侧优先的最短路径,和实际的最短路径 DF ...

  6. bzoj1084: [SCOI2005]最大子矩阵

    dp.状态转移方程在代码里 #include<cstdio> #include<algorithm> #include<cstring> using namespa ...

  7. windows获取窗口句柄

    1.使用FindWindow函数获取窗口句柄 示例:使用FindWindow函数获取窗口句柄,然后获得窗口大小和标题,并且移动窗口到指定位置. #include <Windows.h> # ...

  8. 西南科技大学第十届ACM程序设计竞赛题解

    A.德州扑克 B. 我恨11(1089) 问题描述 11是一个孤独的数字,小明十分讨厌这个数字,因此如果哪个数字中出现了11或者该数字是11的倍数,他同样讨厌这个数字.现在问题来了,在闭区间[L,R] ...

  9. 在.net中用Connection对象数据源的架构信息

    可得到数据库中的,表,视图,等信息   string strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " + fi ...

  10. oracle 有关大数据

    一. oracle大数据量分区后查询效率低下的一些建议: 1 对于当前表tm_bus_realtime_log.查看它的索引,只有一个(索引名:INDEX_BUS_REALTIME 字段名:UPLOA ...