简介:
w3af是一个开放源码的 web应用程序的安全性扫描器。通过增加插件来对功能进行扩展,这是一款用pyhon写的工具,可以查看所有的源代码,它提供了有关用于渗透测试活动的安全漏洞的信息。扫描仪提供图形用户界面(GUI)和命令行界面。
主要插件类型
W3af框架有三个主要的插件类型:crawl(抓取插件),audit(审计插件),attack(攻击插件)
抓取插件:其只负责一件事情,就是搜寻新的URL,表单和其他注入点(injection points),web spoder便是一个经典的漏洞挖掘插件.这个插件以一个URL为输入,然后的到一个或多个注入点.当用户使用这种类型的插件时,这些插件会进行这样的循环:如果插件A在第一次运行时发现了一个新的URL,w3af内核将这个URL传递给插件B,如果插件B发现一个新的URL,w3af内核将这个URL传递给A.这个过程将一直持续下去,所有的插件都将运行工作,占用应用资源,直到无法运行漏洞挖掘应用.
审计插件:获取那些有漏洞挖掘插件找到的注入点,为了发现漏洞,漏洞分析插件会向所有可注入点发送特别设计的数据.例如使用一个漏洞分析插件来获取SQL注入的漏洞
攻击插件:他们的目标是利用审计插件发现的漏洞.他们通常在远程服务器上返回shell,或者在SQL注入漏洞的情况下返回远程表的转储
其他插件:
基础设备:确定有关目标系统的信息,例如已安装的WAF(Web应用防火墙),操作系统和HTTP守护程序
Grep筛选:分析由其他插件发送的HTTP请求和响应,并识别漏洞,例如,grep插件会在HTML正文中找到包含”password”一词的注释并生成漏洞.
Output输出:框架和插件与用户通信的方式.输出插件将数据保存为text,xml或html文件,调试信息也会发送到输出插件,则两者都将记录审计插件的任何漏洞
Mangle:允许基于正则表达式修改请求和响应,请参考web的sed(流编辑器)
Bruteforce暴力破解:暴力破解
Evasion逃避:通过修改其他插件生成的HTTP流量来躲避简单的入侵检测规则(躲避IDS,IPS检测).
auth:进行身份认证
在kali2.0安装w3af(自带版本执行扫描时一直是挂死状态)
1,root@kali:~# cd #切换到主目录,官方指定在主目录下安装
2,root@kali:~# apt-get update #更新
#推荐官方源:
deb http://http.kali.org/kali kali-rolling main non-free contrib
deb-src http://http.kali.org/kali kali-rolling main non-free contrib
3,root@kali:~# apt-get install python-pip -y #安装python-pip
4,pip install --upgrade pip #将pip升级到最新版
5,#下载w3af源码,耗时较长,unzip解压缩
git clone https://github.com/andresriancho/w3af.git
6,cd w3af-master #进入其目录
7, ./w3af_console # 启动w3af命令行界面,发现还需要一些依赖包未安装,
首先安装npm
apt-get install npm(使用脚本安装的时候需要此软件)
8,切换/tmp目录下,运行w3af_dependency_install.sh
apt-get build-dep python-lxml #需要先安装此软件,系统未提示安装,但不安装便会报错
cd /tmp
./w3af_dependency_install.sh(通过shell脚本一并安装所需的安装包)
安装出现successful的时候证明其命令行界面安装成功
cd /root/w3af-master#切换w3af目录
./w3af_console #运行这条命令即可使用w3af命令行界面
w3af>>>
9,cd /root/w3af-master #切换到w3af目录
./w3af_gui #运行w3af图形界面命令,发现也报错,然后我们
cd /tmp
./w3af_dependency_install.sh(通过shell脚本一并安装所需的安装包)这个文件和安装图形界面的文件内容不同
安装成功之后,切换/root/w3af-master
运行w3af图形界面命令: ./w3af_gui
如果报错显示以下内容:
ImportError: No module named webkit
表示为安装webkit模块,需要去自行下载该模块(官方源没有该模块...)
wget http://ftp.cn.debian.org/debian/pool/main/p/python-support/python-support_1.0.15_all.deb
dpkg -i python-support_1.0.15_all.deb
wget http://ftp.cn.debian.org/debian/pool/main/p/pywebkitgtk/python-webkit_1.1.8-3_amd64.deb
dpkg -i python-webkit_1.1.8-3_amd64.deb
apt install python-gtk2-dev
wget http://ftp.cn.debian.org/debian/pool/main/p/pywebkitgtk/python-webkit-dev_1.1.8-3_all.deb
dpkg -i python-webkit-dev_1.1.8-3_all.deb
安装过程中可能需要安装相关依赖,可执行如下命令
apt --fix-broken install
apt-get install python-webkit python-webkit-dev
如果还有其他问题,参考该文章(https://howiezhao.github.io/2017/11/08/kali-w3af-bug/)