[译]w3af指南(一)

58 篇文章 1 订阅
50 篇文章 0 订阅
原文出自:
http://resources.infosecinstitute.com/w3af-tutorial/

w3af (Web Application audit and attack framework)是一个web安全审计框架。本文将学习w3af的大部分特性以及如何使用它进行web渗透测试。
[b][color=red][注]原文写于2012年。最新的w3af是1.6.0.5的使用方法与原文有些出处。[/color][/b]

w3af的特点:
1. 它的插件之间互相通信。例如w3af的discover插件用于寻找需要进行渗透测试的url,并且把它传送给audit插件,而audit插件则用于查找安全漏洞。
2. 通过它的Fuzzy和手动请求生成器它减少了手动web测试中的一个难题。它可以被配置为MITM代理。截获的请求被送到请求生成器然后通过使用各种变量,可以实现手动web测试。
3. 它还包含利用它发现的漏洞进行攻击的特性。
要知道没有完美的自动化web扫描器,并且总会有误报发生。使用w3af首先要确认的是使用的是最新版本。因为w3af的dev team总是不停的修复bug。要使用w3af,使用如下命令:

[img]http://dl2.iteye.com/upload/attachment/0101/3848/c834a0c7-d935-3b5b-a71c-927267608232.png[/img]
w3af可能会让你更新版本。建议总是使用最新版本。输入help命令来查看所有可以使用的命令

[img]http://dl2.iteye.com/upload/attachment/0101/3850/e9c5ab96-f88a-355f-af3d-d35ad62d9330.png[/img]
我们可以看到所有可以使用的选项。输入keys命令来查看我们可以使用的快捷键。推荐熟悉这些快捷键。

[img]http://dl2.iteye.com/upload/attachment/0101/3852/3cebaae6-be99-38d8-983f-a26d9dc05cc5.png[/img]
现在看看w3af中的插件。输入pluging,可以看见控制台的输出变成了w3af/plugins。输入back退回到上一级或help显示可以使用的插件。
要想了解一个指定的插件,输入help pluginName。例如如果我想了解discover插件,我要输入help discovery。
我们可以看到一共有9种插件:
[color=blue][b]1)Discovery[/b][/color]-discovery插件用于查找被用于漏洞扫描的更多的urls,forms等待。这些信息然后传送到aduit插件。有很多不同的discovery插件,例如webSpider,spiderMan,hmap等。所有这些插件各不相同。用户可以一次选择一个或多个插件。
想要查看discovery插件,输入discovery命令
要想查看一个指定插件的信息,pluginType desc pluginname命令。例如我想知道关于spiderMan的更多信息,我会使用命令discovery desc spiderMan
[img]http://dl2.iteye.com/upload/attachment/0101/3862/c92e0c9b-c6d7-3cd5-9f18-d660347c2b1a.png[/img]
值得注意的是从上图可以看到spiderMan有两个可以配置的参数。
这里有一些有用的命令:
1) discovery pluginType1, pluginType2 – 选择两个插件.
2) discovery all- 使用所有插件(不推荐,它会花费很长时间)
3) discovery !all – 删除选中的所有插件
4) list discovery enabled – 显示所有选中的插件
现在我们运行一个discovery插件。我将会使用hmap插件来了解目标机器的服务器版本。从下图可以看到,我选中了hmap插件。
[img]http://dl2.iteye.com/upload/attachment/0101/3866/cd337706-b12c-3856-966c-e08b1c17e3e3.png[/img]
然后设定目标主机。输入back命令返回,然后输入下面的命令来设置目标。正如我们看到的,通过set target target-address来设定目标。
[img]http://dl2.iteye.com/upload/attachment/0101/3868/6e500fa0-f989-35c5-b922-d9cc18ae154d.png[/img]
然后,输入back命令退回,输入start命令启动plugin。正如我们可以看到,w3af发现了目标机的apache版本以及php。
[img]http://dl2.iteye.com/upload/attachment/0101/3870/46ef1e7e-a9af-34d0-8265-ea3715adefc9.png[/img]
[color=blue][b]2)Audit-Audit[/b][/color]插件用于发现由discovery插件提供的url/forms中的漏洞。这是w3af的内部插件之间的通信.audit插件提供测试不同类型的漏洞,例如xss,sqli,csrf等。它通过在请求中注入不同的字符串,然后查找应答中特定的值来实现。可能出现误报。如果我想使用sqli插件,我会使用如下的命令。
[img]http://dl2.iteye.com/upload/attachment/0101/3872/4e8cdac6-7696-32d4-bd52-758c1a78476e.png[/img]
同样,我可以针对不同插件设置不同的参数。下图所示,我可以设置xss审计插件的检查次数。
[img]http://dl2.iteye.com/upload/attachment/0101/3874/42112541-ed39-3a47-8d27-ba78a151868c.png[/img]
[color=blue][b]3)Grep[/b][/color] – grep插件用于查找在请求/应答中的有用的信息,例如email账户,hash,信用卡号等。可以选择适当的设置查找你感兴趣的信息。由于grep插件仅仅分析请求/应答,所以必须选择discovery插件。否则grep插件毫无用处。下图所示,我使用了getMails插件。
[img]http://dl2.iteye.com/upload/attachment/0101/3884/4f139d1f-14f5-3234-8987-dc27c816e976.png[/img]
[color=blue][b]4)Brute force[/b][/color] – 暴力破解插件可以用于暴力破解诸如http认证中的login forms。一旦discovery插件查找到任何基于form的输入或者http认证,它将会自动创建暴力破解(如果使用了暴力破解插件),了解暴力破解插件的参数很重要。
[img]http://dl2.iteye.com/upload/attachment/0101/3886/ae2d0d0e-aaca-310a-ba78-47fe060ea8c3.png[/img]
推荐使用自己的usernames/password配置文件。同时应该注意其他参数。如下图所示,我设置passEqUser为false因为我不认为用户名不会把密码设置和用户名相同。
[img]http://dl2.iteye.com/upload/attachment/0101/3888/d1feca09-772d-335e-8a97-73c833868570.png[/img]
另一个好的参数是useMails选项。这个选项使用w3af发现的mail地址作为一个username的输入。例如一个mail地址是example@infosecinstitute.com,那么example可能是username。这同样是不同插件之前交互的一个例子。
[color=blue][b]5)Output[/b][/color] - 输出插件用于设置输出格式。w3af支持多种格式,例如控制台,邮件报告,html,xml,text等。这里可以设置注入文件名,verbosity之类的参数。下面的配置中,我把verbose设置为true,因为我想要一个非常详细的测试报告。
[img]http://dl2.iteye.com/upload/attachment/0101/3890/25201cf9-0330-3837-bf48-9351a74ed517.png[/img]
[color=blue][b]6)Mangle[/b][/color] – mangle插件用于改变请求应答。它只有一个叫sed的插件(Stream editor),用来通过不同的正则表达式改变请求/应答。表达式应该有特定的格式,usage里面有详细说明。
[img]http://dl2.iteye.com/upload/attachment/0101/3892/2d91eef8-0916-3701-b6ee-d3ea6bc91e22.png[/img]
[color=blue][b]7)Evasion-[/b][/color] evasion插件使用各种技术绕过waf。例如rndHexEncode选择随机的把url编码成十六进制来绕过检测,而fullWidthEncode把url全部编码来绕过http content扫描系统。
[img]http://dl2.iteye.com/upload/attachment/0101/3897/7b530502-4791-38ee-932d-c16c07487fc3.png[/img]
[color=blue][b]8)Auth[/b][/color] – auth插件是w3af中最重要的插件之一。它只有一类叫做generic。这个基本是由于爬虫一个web网站,如果w3af发现一个login 认证form,它需要提交表单信息然后才能继续。通过使用这个插件,我们可以设定预先知道的username/passwd,使w3af正常工作。我们需要设置参数来是w3af正常工作。
下图我通过设置来使w3af成功登录到位于http://10.0.1.24/dvwa的dvwa
[img]http://dl2.iteye.com/upload/attachment/0101/3901/3dceac43-902a-3ff7-ba9c-9982586630f6.png[/img]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值