kali安装w3af
发帖时间:2026-10-17 05:06:00
w3af在Kali里的安装安装从来不是apt install那么简单。默认源里的安装版本停留在2.1,老得连Python 3.7的安装语法都兼容不好,扫描时动不动就报错。安装我试过三次,安装每次都在初始化漏洞插件那一步卡死,安装控制台刷出一片红色traceback,安装然后进程僵住,安装只能Ctrl+C强杀。安装 换个思路,安装直接从GitHub拉源码跑。安装先确认环境,安装Kali 2023以上版本自带Python 3.11,安装这没问题。安装但w3af的安装依赖里有个叫`pybloomfilter`的库,当年只支持到Python 3.6,装不上。解决办法是手动编译它的替代品`pybloomfiltermmap3`,或者干脆改源码里对它的引用,用`bloom_filter`包顶替。我选了后者,省事。 具体操作分四步。第一步,克隆仓库: ```bash git clone https://github.com/andresriancho/w3af.git cd w3af ``` 第二步,装依赖。注意别用`requirements.txt`里的全量列表,里面一半包在Python 3.11下装不上。只装核心的几个: ```bash pip3 install pybloomfiltermmap3 lxml psutil esprima ``` 第三步,手动处理缺失模块。编辑`w3af/core/controllers/dependency_check/`下的检测脚本,把对`pybloomfilter`的硬性检查注释掉,因为我们已经用替代品了。还有`darts`库,直接pip装`darts`会拉到错误版本,需要装`dartsclone`,然后改源码里的import语句。 第四步,启动。用`python3 w3af_console`试试,如果报错缺少`phply`,再单独装那个。我第一次跑起来时,控制台提示缺少`nodejs`模块——w3af的JavaScript分析依赖它。Kali里默认没有,得装个Node.js runtime: ```bash sudo apt install nodejs npm ``` 装完再启动,这次能进交互界面了。输入`help`,系统正常响应,没有崩溃。 实际扫描一个小型测试站,速度比预想慢。它的HTTP请求库对Python 3.11的兼容还是有问题,部分插件会跳过某些请求头。但如果只是用它的SQL注入检测和XSS测试模块,结果还算准确。我拿一个故意留了漏洞的DVWA靶场试,能识别出基于报错的SQL注入,但盲注检测会漏掉一半。 如果不想折腾源码,还有个折中办法——用Docker。Kali官方仓库里没有w3af镜像,但有个第三方维护的`danielmiller/w3af`,拉下来就能用: ```bash docker pull danielmiller/w3af docker run -it danielmiller/w3af ``` 这个镜像内部用的是Python 3.6环境,所有依赖都预装好了,省去编译地狱。缺点是镜像体积1.2GB,而且扫描结果导出到宿主机得挂载目录。 我的建议是:如果你只是临时用一次,直接上Docker;如果打算长期做Web渗透测试,花半小时手动编译源码更值得,因为你能自己改插件逻辑,甚至给它加自定义的payload。Kali里的工具向来如此——装个完整能用的版本,本身就是入门课。