作为一只小小小白的安全新手,只会简单的用sqlmap扫扫网站,用burpsuite的proxy模块拦截一些请求。最近又对proxy有点儿小理解,记录之。

1. 查看sqlmap注入的语句以及HTTP request/response信息

sqlmap是很好用的自动测试工具,但有时候想要查看请求具体的内容,也就是payload的内容。sqlmap自带了-v 参数,当-v >= 3的时候会显示注入的payload,但在实际测试过程中页面刷的太快看不清内容,且呈现的效果不易读。可以通过设置proxy参数,在burpsuite中查看sqlmap的请求信息。

burpsuite的设置:

sqlmap中添加一行 --proxy="http://127.0.0.1:8080"   //这个地址是burp中设置的代理端口的地址

效果如下:

proxy中的拦截状态无论是打开的还是关闭的,通过8080端口出去的数据都会被记录在proxy的history中

2. 修改http response内容

proxy在拦截http request的时候,会将具体的信息呈现在面板上。可以进行修改之后再提交,但是对于http response,是直接反馈到浏览器里。

如果想对返回的信息做修改,可以这样做:

action -> do intercept -> response to this request

点击Forward提交,就会将response内容呈现在面板上,修改后点击forward,修改完成

3. 暴力破解模块

4. sqlmap tamper

之前了解过关于防火墙的一些知识,原本以为有了防火墙,sqlmap就完全无力了。乱看的时候看到tamper这条属性,眼前一亮。tamper会对payload做一些特殊处理来绕过黑名单类的WAF,比如将=替换为like,将payload进行url编码等。

sqlmap自带了很多tamper函数,在/tamper文件夹中可以找到。使用方法如下:

sqlmap.py -u "http://127.0.0.1/test.php?id=1"  –tamper “space2morehash.py”

列举部分函数如下:

apostrophemask.py    用utf8代替引号
equaltolike.py       like 代替等号
space2dash.py      绕过过滤‘=’ 替换空格字符(”),(’ – ‘)后跟一个破折号注释,一个随机字符串和一个新行(’ n’)
greatest.py        绕过过滤’>’ ,用GREATEST替换大于号。
space2hash.py      空格替换为#号 随机字符串 以及换行符
apostrophenullencode.py  绕过过滤双引号,替换字符和双引号。
halfversionedmorekeywords.py  当数据库为mysql时绕过防火墙,每个关键字之前添加mysql版本评论
space2morehash.py  空格替换为 #号 以及更多随机字符串 换行符
appendnullbyte.py  在有效负荷结束位置加载零字节字符编码
ifnull2ifisnull.py    绕过对 IFNULL 过滤。
space2mssqlblank.py(mssql)  空格替换为其它空符号
 
部分函数仅对特定数据库有作用,具体参考/doc/中的文档
或者 http://www.91ri.org/7869.html
http://www.2cto.com/Article/201311/256399.html

【web安全】第五弹:burpsuite proxy模块的一些理解的更多相关文章

  1. Burpsuite常用模块详解以及渗透测试上的运用

    0x00前言 哪有什么前言,大家好,我是浅安.QQ:320229344... 0x01 JDK的安装,以及Burpsuite的成功开启. burpsuite基于JAVA环境才能正常运行的.所以要先安装 ...

  2. http proxy模块参数

    http proxy模块参数 nginx功能的代理功能是是通过http proxy模块来实现的.默认在安装Nginx是已经安装了http proxy模块,可以直接使用. http模块相关参数 说明 p ...

  3. 前端学习 第五弹: CSS (一)

    前端学习 第五弹: CSS (一) 创建css: <link rel="stylesheet" type="text/css" href="my ...

  4. nginx反向代理proxy模块相关参数

    http_proxy_module Proxy_pass proxy_pass指令属于ngx_http_proxy_module模块,此模块可以将请求转发到另一台服务器:官方说明:http://ngi ...

  5. Web Service进阶(五)SOAPBinding方式讲解

    Web Service进阶(五)SOAPBinding方式讲解 Java API for XML Web Services (JAX-WS) 2.0 (JSR 224) Standard Implem ...

  6. 二十五. Python基础(25)--模块和包

    二十五. Python基础(25)--模块和包 ● 知识框架   ● 模块的属性__name__ # my_module.py   def fun1():     print("Hello& ...

  7. Nginx配置之location模块和proxy模块

    1.location指令的用法介绍 Location主要用来匹配url,如:http://www.beyond.com/nice,在这里对于location来说www.beyond.com是域名,/n ...

  8. 【Python】【Web.py】详细解读Python的web.py框架下的application.py模块

    详细解读Python的web.py框架下的application.py模块   这篇文章主要介绍了Python的web.py框架下的application.py模块,作者深入分析了web.py的源码, ...

  9. Web标准:五、超链接伪类

    Web标准:五.超链接伪类 知识点: 1.链接的四种样式 2.将链接转换为块状 3.用css制作按钮 4.首字下沉   1)链接的四种样式 超链接有四个伪类,分别是: a:link 未访问的链接 a: ...

随机推荐

  1. android 98 MediaPlayer+SurfaceView播放视频

    package com.itheima.videoplayer; import java.io.IOException; import android.media.MediaPlayer; impor ...

  2. extjs6整合到web项目中

    最近有一个项目需要应用extjs作为前端界面,因此研究了一下如何将extjs 6引入到项目中.以下是操作步骤 extjs6下载地址 extjs 6有gpl版本的,下载地址https://www.sen ...

  3. nofollow标签如何使用

    “nofollow”的意思是不传递权重,向网站站长提供了一种方式,即告诉搜索引擎“不要追踪此网页上的链接”或“不要追踪此特定链接”. nofllow的形式 1.<meta name=" ...

  4. css-01

    1.CSS:级联样式表,设置页面的样式 2.css基本的语法:     属性:值; 3.CSS的引入   |-1.元素内容的引入:内联样式       <元素名 style="属性:值 ...

  5. js中对象的创建

    json方式,构造函数方式,Object方式,属性的删除和对象的销毁 <html> <head> <title>js中的对象的创建</title> &l ...

  6. 20151225jquery学习笔记---选项卡UI

    圣诞节快乐,哈哈哈....选项卡(tab),是一种能提供给用户在同一个页面切换不同内容的 UI. 尤其是在页面布局紧凑的页面上,提供了非常好的用户体验.一. 使用 tabs使用 tabs 比较简单,但 ...

  7. JS调用PHP 和 PHP调用JS的方法举例

    http://my.oschina.net/jiangchike/blog/220988 1.JS方式调用PHP文件并取得PHP中的值举一个简单的例子来说明:如在页面test_json1中用下面这句调 ...

  8. onActivityResult不被执行的问题。

    1.首先,返回的Activity必须使用startActivityForResult启动. 2.其次,在返回的Activity中必须保证setResult方法在finish方法之前执行,否则onAct ...

  9. weblogic9.2重置密码

    1.删除DefaultAuthenticatorInit.ldift 2.执行命令:java -cp /home/weblogic/bea/weblogic92/server/lib/weblogic ...

  10. javascript 将多维数组转换为一维数组

    /** * 2013年9月去面试的时候,有面试过这样子一道题目: * 题目是这样子的:将一个多维数组转换成一维数组并返回该数组,类似 * [1,2,3,[4,5,6,[7,8]],9]转换后为:[1, ...