这是一篇没什么价值的文章,但是因为没有人发,所以记录一下
本强迫症在 Whatweb Wiki中未发现Win平台下的安装方法,并且没有发现其他可用的文章指引,本文参考其 Whatweb WiKi,记录了如何实现Windows下安装Ruby与Whatweb,
环境移植小技巧: ruby安装过后可以把整个安装文件夹打包保存,换电脑直接复制文件过去解压到相同目录下,然后把ruby.exe目录加入环境变量即可实现免安装重用。 还适用与python3、golang、nodejs等环境
WhatWeb是一款网站指纹识别工具,基于Ruby开发,因此是跨平台兼容的,可以在任何Ruby 2.x环境(包括Windows,Mac OSX和Linux)中运行。
它能识别的指纹包括内容管理系统(CMS),博客平台,统计/分析包,JavaScript库,Web服务器和嵌入式设备。
WhatWeb目前拥有超过1800个插件,每个都可以识别不同的东西。WhatWeb还可识别版本号,电子邮件地址,帐户ID,Web框架模块,SQL错误等。
https://github.com/urbanadventurer/WhatWeb/wiki/Installation
0x01安装Ruby2.x Devkit
1.1 RubyInstallers 下载
下载地址 https://rubyinstaller.org/downloads/
多种下载测试后最终选择下载Ruby + Devkit 2.7.2-1(x64)版本
按照其提示:如果您不知道要安装哪个版本,并且开始使用Ruby,建议您使用Ruby + Devkit 2.7.X(x64)安装程序。它提供了最多数量的兼容gem,并与Ruby一起安装了MSYS2 Devkit,因此可以立即编译具有C扩展名的gem。仅当必须使用自定义32位本机DLL或COM对象时,才建议使用32位(x86)版本。
另外,其安装的 MSYS2 Devkit中的环境,在其他跨平台语言上也用的上,比如golang程序的编译
1.2 rubyinstallers安装选项
1、右击以管理员权限运行rubyinstaller-devkit-2.7.2-1-x64.exe(后续自动安装开发环境需要管理员权限)
3、安装ruby完成后勾选安装开发者工具链,在CMD界面输入1,3安装
1.3 ruby.exe加入环境变量(默认安装时候会自动加入)
往path环境变量中添加C:[安装目录]Ruby27bin ,没有加入的话需手动加入,并且刷新环境变量(刷新环境变量需要重启电脑或其他方式)
1.4 检测ruby安装状态
0x02安装Whatweb
2.1 下载whatweb
项目地址:https://github.com/urbanadventurer/WhatWeb
下载后解压至无中文路径文件夹下
PS:安装过程中部分报错与文件路径有关,建议路径不带中文字符
2.2 手动安装
#安装bundler程序,Ruby依赖关系管理器。
#从WhatWeb源文件夹执行bundle,以安装Gemfile中定义的依赖项。
2.3 可选依赖项
此处忽略安装可选依赖项目MongoDB与RCharde。
gem install rchardet #RChardet字符集检测。将结果转换为UTF-8后输出到mongodb
#当这些依赖项不可用时,WhatWeb会正常降级,但是不会影响正常使用。
2.4 whatweb报错记录
提示 bundle install 类的错误(无图)
incompatible character encodings:
GBK and UTF-8 (Encoding::CompatibilityError)
0x03Whatweb运行效果对比
3.1 win运行whatweb
ruby whatweb www.baidu.com
PS:whatweb执行入口就是whatweb目录下那个没有后缀的whatweb文件
3.2 kali运行
3.3 输出结果对比:对比结果颜色存在差异,查询结果无差异。
0x04其他
替代工具推荐
ruby安装过程有点麻烦,有没有其他语言重构的whatweb项目呢?
经过测试Gayhub上多个前辈们的whatweb和wappalyzer的其他语言重构项目,发现其中有一个对指纹库移植比较成功的项目 WebHunt [python3]
PS:以前缺工具都自己改,现在不一样了,我学会了git clone
Buzz2d0 / WebHunt 用于分析Web组件的命令行工具
https://github.com/WebHunt-Kits/WebHunt.git
WebHunt 是对https://github.com/webanalyzer/rules组件规则[fofa、wappalyzer、whatweb]的实现,修改部分规则,新增了支持多线程,支持管理组件更新、支持指纹库同步等功能。
本文始发于微信公众号(NOVASEC):Ruby and Whatweb Install on Windows
评论