WebSacrab与SQL注入

来源:互联网 发布:福建公安便民网络 编辑:程序博客网 时间:2024/06/15 07:30

WebSacrab与SQL注入

简介:

WebSacrab是用于测试Web应用安全的一款Web代理程序。它由开放式Web应用安全项目(OWASP)组开发。

  1. WebScarab以代理的形式工作,因此只能捕获设置其为代理的应用程序发出的数据;

  2. WebScarab能够捕获客户端发出的HTTP请求,并能够在发送给服务器之前进行修改;

  3. WebScarab能够捕获Web服务器的应答,并能够在发送给客户端之前进行修改;

设计目的:让使用者可以掌握某种基于HTTP(S)程序的运作过程;也可以用它来调试程序中较难处理的bug,也可以帮助安全专家发现潜在的程序漏洞,非常适合web安全性篡改表单数据测试。

安装配置

运行环境:WebScarab是JAVA编写的,因此你的机器需要先安装JAVA运行环境:JRE和JDK。

JAVA配置教程:

http://jingyan.baidu.com/article/f25ef2546e45e4482c1b82f0.html

配置好运行环境之后,前往

下载地址:http://download.csdn.net/detail/zhou_pp/9717783?locationNum=3&fps=1

下载文件并解压之后,右键选择webscarab-one-20110329-1330.jar用JAVA虚拟机打开

这里写图片描述

能够进入如下图所示的界面那么WebScarab的环境配置就算成功了。
这里写图片描述

下面我们将演示WebScarab工具的使用

实例说明

  1. 运行WebScarab,在Tools菜单下切换到full-featured interface,重启软件
    这里写图片描述

  2. 将WebScarab作为代理使用,需要配置浏览器,让浏览器将WebScarab作为其代理。 我们可以通过IE的工具菜单完成配置工作。通过菜单栏,依次选择选择“工具”菜单、“查看高级设置”、“打开代理设置”来打开代理配置对话框。按如下图配置之后保存。
    这里写图片描述

  3. 下面我们对指定URL进行SQL注入测试

    打开WebScarab之后选择Proxy标签,选择当中的Manual Edit标签,勾选Intercept requests复选框,选中POST方法。
    这里写图片描述

  4. 至此,我们的WebScarab就做好准备监听POST请求了。我们现在进行下一步操作,打开浏览器:输入[http://localhost:8080/WebGoat-5.4/attack?Screen=147&menu=1100]

(这是我在本地测试的网页,需要配置Tomcat及WebGoat——由著名的OWASP负责维护的一个漏洞百出的J2EE Web应用程序,下附工具下载地址及配置教程:
Tomcat下载地址:http://download.csdn.net/tag/tomcat7
配置教程:http://download.csdn.net/detail/hzywy123456/4484348
WebGoat下载地址:http://download.csdn.net/download/mr_wikeyi/4334747
配置教程:http://blog.csdn.net/rongyongfeikai2/article/details/50448302

  1. 以下默认我们已经配置好Tomcat和WebGoat,那么在上一步中我们输入URL按确认之后将进入如下页面(这是一个SQL注入测试页面):

这里写图片描述

  1. 我们在Password输入框中随便输入,比如1。那么WebScarab马上跳出窗口表示捕获到一次POST请求,在URLEncoded标签栏中的password我们可以修改要提交的数据,当前是1是因为我们在浏览器中输入了1,但是结果并未提交到目标网站服务器,而是被我们的WebScarab捕获到,当我们在WebScarab提交之后才会发送给服务器,这时候服务器才响应我们的请求。
    这里写图片描述

如上图所示,我们将password修改为x’ or ‘1’=’1,然后单击Accept changes提交修改之后的POST请求,我们将进入如下的页面,表示我们已经成功登录。

这里写图片描述
然而这并不代表密码是x’ or ‘1’=’1 ,只是我们进行了SQL注入,有关SQL注入的知识可以前往CSDN了解。http://blog.csdn.net/stilling2006/article/details/8526458

使用心得

为什么要用WebScarab?我们直接在浏览器中显示的密码框进行注入测试不就行了?

使用WebScarab可以让我们获得字段的定义名称,对于内容的修改也更加方便。比如我们单击上图的Logout按钮,那么WebScarab会跳出另一个捕获窗口,我们选择Raw标签:

这里写图片描述

如图所示,最下面一行代码显示当前的用户id是101,以及要执行的操作是Logout,这些字段名被我们的WebScarab暴露出来,实际上对于这个后台数据库来说是很不安全的,使用WebScarab这类安全测试工具。那么测试人员在做这些操作的时候也能了解到哪里存在暴露的BUG,是否需要数据加密等。

至此,关于WebScarab的初步使用教程介绍到这里,有关更多信息可前往官网了解:

https://www.owasp.org/index.php/Webscarab

原创粉丝点击