问题: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. Java汉字排序(3)按笔划排序

    对于包含汉字的字符串来说,排序的方式主要有两种:一种是拼音,一种是笔画. 本文就讲述如何实现按笔划排序的比较器(Comparator). 作者:Jeff 发表于:2007年12月21日 11:27 最 ...

  2. 【ZOJ】3609 Modular Inverse

    1. 题目描述求乘法逆元. 2. 基本思路利用扩展gcd求逆元,模板题目. 3. 代码 /* 3609 */ #include <iostream> #include <sstrea ...

  3. freemarker截取字符串

    [#if   a.title?length   lt   23   ]   ${a.title} [#else]${a.title[0..22]}...[/#if]

  4. C#中父窗口和子窗口之间实现控件互操作

    很多人都苦恼于如何在子窗体中操作主窗体上的控件,或者在主窗体中操作子窗体上的控件.相比较而言,后面稍微简单一些,只要在主窗体中创建子窗体的时候,保留所创建子窗体对象即可. 下面重点介绍前一种,目前常见 ...

  5. APIO2010特别行动队(单调队列、斜率优化)

    其实这题一看知道应该是DP,再一看数据范围肯定就是单调队列了. 不过我还不太懂神马单调队列.斜率优化…… 附上天牛的题解:http://www.cnblogs.com/neverforget/arch ...

  6. [POJ 2588] Snakes

    同swustoj 8 Snakes Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 1015   Accepted: 341 ...

  7. android MIPI屏 导航栏丢失

    /**************************************************************************** * android MIPI屏 导航栏丢失 ...

  8. [Mac][$PATH]如何修改$PATH变量

    从 stackoverflow 找到的方法 http://stackoverflow.com/questions/7703041/editing-path-variable-on-mac 首先打开终端 ...

  9. centos nginx 多端口配置过程记录

    1. 编辑 /usr/local/nginx/vhosts/  在此目录下增加一文件,如;ci.ainux.com,或复制一个文件 修改其中的端口和目录,更改log_format 名称 重启nginx ...

  10. HDU 5319 Painter

    题意:红色从左上向右下涂,蓝色从右上向左下涂,既涂红色又涂蓝色就变成绿色,问最少涂几下能变成给的图. 解法:模拟一下就好了,注意细节. 代码: #include<stdio.h> #inc ...