`
tianshibaijia
  • 浏览: 1127203 次
文章分类
社区版块
存档分类
最新评论

结合WebScarab对WebGoat进行SQL注入测试

 
阅读更多

SQL注入是目前Web应用中最常见的漏洞,只要网页上有提交框并且该提交框的内容影响后台的查询的SQL语句,就可能存在该漏洞。一般程序员在编写Web应用程序时都是直接从request中取出提交的参数的值放入到SQL语句中进行查询,这就造成了一个又一个的SQL注入风险。熟悉SQL语句的攻击者会在网页输入框中输入设计好的内容,将SQL的查询逻辑改变,从而得到自己想要的东西。举几个例子:
案例1:绕过登录界面:
常见的登录页面有两个输入框,一个用户名,一个密码,后台的SQL语句为
select * from Users where username=’[用户名]’ and password=’[密码]’
其中[用户名]和[密码]分别为在两个输入框中输入的内容,一般来说没有什么问题,程序员只要判断返回的recordset的记录数大于0就可以使用户登录进去,但是如果恶意用户在用户名中输入x’ or ‘1’=’1,密码随便输,那么后台的SQL查询语句就会变为
select * from Users where username=’ x’ or ‘1’=’1’ and password=’[密码]’
其中where语句的逻辑值始终为真,如果能猜中用户名,即可以使用该用户登录
案例2:执行危险的SQL语句;
现在不少数据库支持批处理,使用分号隔开多个SQL语句,如一个查询界面,可以查询客户号(客户号为数字类型),后台的SQL语句为:
select * from customers where ID=[客户号]
其中[客户号]为用户输入内容,假如用户输入的为1;drop table customers。则整个SQL语句变为select * from customers where ID=[客户号] 1;drop table customers,这样的查询一过,Customers表就没了。
使用同样的手法,恶意用户还可以植入触发器,修改数据,总之,可以执行后台的SQL执行时使用的数据用户权限内的所有操作。

当然SQL注入攻击也不见得都是这么简单,有的时候需要认真分析网页,猜测其SQL的结构,并且需要利用一些工具进行辅助。本文对WebGoat教程中的一段有关SQL 注入测试进行解释,WebGoat我在另一篇文章【学习Web应用漏洞最好的教程----WebGoat】中有过介绍。因为在测试中用到了WebScarab,这里简单介绍一下。


WebScarab说白了就是一个代理工具,他可以截获web浏览器的通信过程,将其中的内容分析出来,使你很容易修改,比如我发一个submit请求,WebScarab首先截获到,不急着给真正的服务器,而是弹出一个窗口让你可以修改其中的内容,修改结束了再提交给服务器,如果网页的输入框进行了一些限制,如长度限制、数字格式限制等,只能使用这种方式进行修改了;它也可以修改服务器返回的response,这就可以过滤掉一些对客户端进行限制的js等。这是OWASP的另一利器。


下面开始注入过程:
首先明确目标,webgoat的教程:
webgoat中的攻击对象

界面上只有一个输入框,该教程的要求是要我们使用SQL注入方法登入界面,兴冲冲的在password中输入x’ or ‘1’=’1,不行,原来这个password框只能输入8个字符,刚才的那个有12个字符之多!这时看样子要祭出WebScarab了。
WebScarab的默认运行模式为Lite模式,如下图:

webscarab lite

需要将其更改为Full-Featured Interface模式,勾选上图中的【use Full-Featured Interface】,重新启动WebScarab,界面如下,多了很多功能选项:

WebScarab

因为我们要截获发出的请求,将【Proxy】-【Manual Edit】-【Intercept request】勾选上。在IE中将代理服务器指向本机的8008端口,在webgoat的密码框中输入111提交,马上弹出了如下界面:

WebScarab edit request

其中password可以修改为:x’ or ‘1’=’1,点击Accept Changes,成功,界面如下:

webgoat success

分享到:
评论

相关推荐

    WebScarab渗透测试工具

    OWASP开发的WebScarab是分析浏览器请求和服务器应答的首选代理。WebScarab除了提供数据包分析功能外,还可以对站点进行Fuzz测试,以寻找上述的漏洞。

    http测试必备工具webscarab

    通过webscarab,可以很好的对request和response数据包进行篡改,从而获得特殊权限,是http测试必备工具。

    WebScarab协议攻击测试攻击

    WebScarab协议攻击测试攻击,可以拦截提交数据,进行修改

    Webscarab安全测试工具

    一款最流行的Web渗透测试软件! 我说真的。

    WebScarab工具

    WebScarab.zip WebScarab.zip web消息拦截工具 测试工具

    WEBSCARAB渗透测试

    免费提供给大家,最新版的webscarab

    webscarab代理软件

    该工具主要是一款代理软件 ,包括HTTP代理,网络爬行、网络蜘蛛,会话ID分析,自动脚本接口,模糊测试工具,对所有流行的WEB格式的编码/解码,WEB服务描述语言和SOAP解析器等,注意该软件运行需要安装首先安装JRE,...

    webScarab源码

    一款代理软件或许没有其它的工具能和OWASP的WebScarab如此丰富的功能相媲美了,如果非要列举一些有用的模块的话,那么他们包括HTTP代理,网络爬行、网络蜘蛛,会话ID分析,自动脚本接口,模糊测试工具,对所有流行的...

    webscarab网络分析包工具

    OWASP项目,目前更新的最新的WebScarab,和WebGoat配套成为一个完美的web学习网站,webgoat资源也是有的。

    webscarab-one-20110329-1330(最新版)

    webscarab-one-20110329-1330(最新版) webscarab-one-20110329-1330.jar 1、安装JDK 2、鼠标双击webscarab-one-20110329-1330.jar即可

    webScarab 源码

    WebScarab的HTTP代理提供了预期...就基本功能而言,WebScarab和PAROS差不多,但WebScarab为更懂技术的用户提供了更多的功能,并提供了对隐藏的底层更多的访问。但是,由于PAROS更简单,我们仍推荐学者在开始时使用它。

    WebScarab入门指南.

    WebScarab入门指南.WebScarab入门指南.WebScarab入门指南.WebScarab入门指南.WebScarab入门指南.WebScarab入门指南.

    webscarab工具使用介绍.doc

    webscarab工具使用介绍

    Webscarab工具使用介绍

    Webscarab工具使用介绍---简单的介绍。

    WebScarab入门教程(图解)

    WebScarab入门教程(图解),拦截和修改浏览器和HTTP/S服务器的请求和响应,进行修改攻击

    WebGoat笔记

    webgoat7.0的部署及题目解题教程,WebGoat里面关于会话劫持(Hijack a Session)这个课程的标准答案里面除了使用WebScarab以外还使用了其他的工具来找出合法的SessionID以完成这个课程

    HTTP和HTTPS协议分析工具WebScarab.zip #资源分享达人计划#

    其原理很简单,WebScarab可以记录它检测到的会话内容(请求和应答),并允许使用者可以通过多种形式来查看记录。WebScarab的设计目的是让使用者可以掌握某种基于HTTP(S)程序的运作过程;可以用它来调试程序中较难...

    webservice工具,针对wsdl、soap进行测试的小软件

    webservice工具,针对wsdl、soap进行测试的小软件

    WebGoat教程解析

    WebGoat里面关于会话劫持(Hijack a Session)这个课程的标准答案里面除了使用WebScarab以外还使用了其他的工具来找出合法的SessionID以完成这个课程,实际上这个课程完全可以只使用WebScarab来完成。

Global site tag (gtag.js) - Google Analytics