(转载)双 11 为技术宅们奉上 PentestBox 的更新升级 [PentestBox 如何更新]
Pentest Box(渗透测试盒子)是一款 Windows 平台下预配置的便携式开源渗透测试环境,也是著名黑客 Kapustkiy 常用工具之一。它集成了大量 Linux 平台的渗透测试工具(包括 Kali Linux 常用工具),可在 Windows 系统中原生运行,有效降低对虚拟机或双启动环境的依赖。
PentestBox 官网:https://pentestbox.org/zh/
核心痛点:MSF(Metasploit)更新流程复杂,本文将详细讲解完整更新步骤。
二、更新效果预览
更新完成后,PentestBox 可正常运行 MSF 等工具,效果如下:
三、更新前准备
1. 下载 PentestBox 本体
默认安装路径:C:/PentestBox/(建议保留默认路径,避免后续配置出错)
安装界面如下:
2. 下载所需依赖文件
文件名 版本 / 用途 下载地址 ruby 2.3.3(32 位) https://dl.bintray.com/oneclick/rubyinstaller/ruby-2.3.3-i386-mingw32.7z metasploit-framework 最新版(MSF 核心) git clone https://github.com/rapid7/metasploit-framework.git ruby_devkit mingw64-32-4.7.2 WpdPack 4.1.2(网络开发包) https://www.winpcap.org/install/bin/WpdPack_4_1_2.zip
3. 关键路径说明
后续操作需用到以下路径,建议提前记录:
ruby 路径:%Pentestbox%\base\ruby
ruby_devkit 路径:%Pentestbox%\base\ruby_devkit
MSF 路径:%Pentestbox%\bin\metasploit-framework
四、分步更新操作
1. 替换 Ruby 环境
删除原 Ruby 目录文件:打开C:\PentestBox\base\ruby,删除所有原有文件;
解压新 Ruby 包:将下载的ruby-2.3.3-i386-mingw32.7z解压到上述路径。
操作示意图:
验证 Ruby 版本:打开 PentestBox 终端,执行ruby -v,应显示:
ruby 2.3.3p222 (2016-11-21 revision 56859) [i386-mingw32]
2. 替换 Ruby DevKit
删除原 DevKit 目录:打开C:\PentestBox\base\ruby_devkit,删除所有原有文件;
解压新 DevKit:运行DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe,将内容解压到上述路径。
操作示意图:
3. 替换 MSF 核心文件
删除原 MSF 目录:打开C:\PentestBox\bin\metasploit-framework,删除所有原有文件;
复制新 MSF:将通过git clone下载的metasploit-framework文件夹内的所有文件,复制到上述路径。
操作示意图:
4. 配置 Ruby 源(解决国内下载慢 / SSL 错误)
步骤 1:更新 RubyGems 并切换国内源
在 PentestBox 终端执行以下命令:
# 更新RubyGems系统
gem update --system
# 切换Ruby源为国内镜像(解决SSL错误)
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
# 若仍报SSL错误,改用HTTP协议
# gem sources --add http://gems.ruby-china.org/ --remove https://rubygems.org/
# 查看当前源(确保仅保留ruby-china源)
gem sources -l
# 更新源缓存
gem sources -u
更新 RubyGems 示意图:
查看源配置示意图:
更新源缓存示意图:
步骤 2:安装 Bundle 依赖管理工具
执行以下命令安装 Bundle:
gem install bundler
gem install bundle
安装示意图:
切换 Bundle 源(避免依赖下载失败):
bundle config mirror.https://rubygems.org https://gems.ruby-china.org
# 若报SSL错误,改用HTTP
# bundle config mirror.https://rubygems.org http://gems.ruby-china.org
5. 安装 MSF 依赖
步骤 1:进入 MSF 目录
cd C:\PentestBox\bin\metasploit-framework
步骤 2:安装依赖
# 更新依赖配置
bundle update
# 安装依赖(耗时较长,耐心等待)
bundle install
安装示意图:
五、常见错误解决
1. pcaprub 依赖安装失败(报 WpdPack 相关错误)
原因:缺少 WpdPack 开发包,或路径未配置
解决步骤:
解压 WpdPack:将WpdPack_4_1_2.zip解压到C:\WpdPack(默认路径,避免修改);
示意图:
修改 pcaprub 配置文件:
打开路径C:\PentestBox\base\ruby\lib\ruby\gems\2.3.0\gems\pcaprub-0.12.4\ext\pcaprub_c下的extconf.rb文件,在pcap_libdir和have_library之间添加以下代码:
$CFLAGS = "-I#{pcap_includedir}"
$LDFLAGS = "-L#{pcap_libdir}"
修改示意图:
手动安装 pcaprub:
gem install pcaprub -v '0.12.4'
(可选)自定义 WpdPack 路径:
若需将 WpdPack 移动到 PentestBox 目录(如C:\PentestBox\WpdPack),需修改上述extconf.rb中 WpdPack 的路径配置,确保与实际路径一致。
路径修改示意图:
重新执行依赖安装:
cd C:\PentestBox\bin\metasploit-framework
bundle install
2. bcrypt 错误(启动 msfconsole 时提示)
原因:bcrypt 版本不兼容或编译问题
解决步骤:
卸载旧版本 bcrypt:
gem uninstall bcrypt
gem uninstall bcrypt-ruby
卸载示意图:
安装兼容版本 bcrypt:
gem install bcrypt --platform=ruby
安装示意图:
3. rbnacl 版本错误(启动 msfconsole 时提示)
原因:rbnacl 的 version.rb 文件语法问题
解决步骤:
打开错误提示中的文件(路径示例):
C:/PentestBox/base/ruby/lib/ruby/gems/2.3.0/gems/rbnacl-4.0.2/lib/rbnacl/sodium/version.rb
将报错的行数用#注释掉(通常是版本号定义相关代码);
修改示意图:
重新启动 msfconsole,错误消失。
六、验证更新结果
更新完成后,在 PentestBox 终端执行msfconsole,若能正常进入 MSF 界面,说明更新成功:
**
支持系统:Win7 64 位、Win10 64 位(经测试可完美运行)
七、工具包下载
本文所需的 PentestBox 安装包及所有依赖文件已打包,可直接下载:
提取密码:cepc
转载声明
本文转载自: