[TOC]

0x00 前言介绍

PentestBox:渗透测试盒子 顾名思义,这是一个渗透工具包,但是不同于绝大多数国内xx工具包的是,这里集成的大都是Linux下的工具,Kali Linux上面的常用的很多工具这里面也都集成了。
官方的介绍如下:PentestBox是一款Windows平台下预配置的便携式开源渗透测试环境

为什么又有一个渗透测试环境?
PentestBox不同于运行在虚拟机或者双启动环境的Linux渗透测试发行版。
它打包了所有的安全工具,并且可以在Windows系统中原生地运行,有效地降低了对虚拟机或者双启动环境的需求。我们发现超过50%的渗透测试发行版是运行在Windows系统下的虚拟机程序这激发我们创造了它。

参考来源:


0x01 下载安装

官网上自带的下载速度还是蛮快的,这里我下载的是附带 metasploit版本的PentestBox

PentestBox: https://sourceforge.net/projects/pentestbox/files/PentestBox-v2.2.exe/download
#种子:https://pentestbox.org/PentestBox-v2.2.torrent

#安装有 Metasploit 的 PentestBox:
https://sourceforge.net/projects/pentestbox/files/PentestBox-with-Metasploit-v2.2.exe/download
#种子:https://pentestbox.org/PentestBox-with-Metasploit-v2.2.torrent

个人提示:建议在虚拟机里面进行安装测试后面可以直接从网络共享过来即可,当然您也可以将它安装到U盘上;
官网提示:按照带有metasploit 的版本的时候得关闭windows自带的防火墙,因为metasploit生成的攻击载荷 对于windows的安全来说是个威胁。

防火墙的关闭:

  • Windows7直接在控制面板里面关闭防火墙即可
  • Windows 10的话,除了关闭上述的防火墙还得关闭 Windows Defender (设置-更新和安全-Windows Defender 中关闭)

安装非常简单:直接运行 文件 选择安装的文件位置路径,即可安装,安装其实就是文件的释放,最后整个文件夹大小为4.55GB左右(2018年7月3日12:52:40);
WeiyiGeek.PentestBox

_补充_:

  • 采用安装在U盘或者文件网络共享都能直接运行pentestBox;
  • 文件网络共享:共享该文件夹作为一个驱动器上的其他计算机在同一个网络;更改读取权限读/写,并单击共享。现在在局域网的其他电脑上的的 资源管理器 中的 网络 可以看到共享的文件夹

0x02 工具文件结构

描述:从上面我们可以看到是PentestBox共5个文件夹,2个库文件,一个bat批处理和一个exe启动程序(bat和exe都可以启动PentestBox)。
WeiyiGeek.文件结构

工具快捷键
  • CTRL + T :要打开新的标签页
  • CTRL + C :要关闭脚本/程序运行。
  • CTRL + w :这将关闭当前活动的控制台。
  • ALT + Enter :Pentestbox 会去全屏。
  • SHIFT + ALT + number : 则打开 cmd 和 poweshell 新的窗口,可以自己设置;


工具集结构

描述:PentextBox 工具集+可参考

PentextBox工具一览表:

#信息收集:
dnsrecon (DNS)
sublist3r
subbrute
automater (URL /域名,IP地址和Md5 hash OSINT工具旨在使分析过程更容易入侵分析师)
urlcrazy (RL劫持,钓鱼,和企业间谍活动)
theharvester
Responder (是一个LLMNR NBT-NS和mdn投毒者)- 探测内网获取域控权限总结
crackmapexec (其中的瑞士军刀Windows /活动目录环境。多亏了托马斯。编译的版本。)


#Web漏洞扫描器:
msfconsole
Burp Suite
sqlmap
Nmap
ncat
ndiff
nping
Wireshark
SnmpWalk (允许你检测一组变量可用于某一设备上阅读。)
ipscan (C段扫描)
dirbuster(目录爆破)
Commix(系统命令注入漏洞自动化测试工具)
Vega (扫描仪和测试平台) -- 实用
jSQL(SQL注入)-- 可以学习SQL - 实用
testsslserver (PentestBox SSL / TLS服务器(名称和端口给出参数))
sslscan (SSL扫描)

Nikto(web服务器(GPL)扫描仪对web服务器执行全面测试多个项目)
dotdotpwn(目录遍历模糊器)
fimap(webapps本地和远程文件包含漏洞)
Golismero(安全性测试的是一个开源框架)
PadBuster 自动化脚本执行Padding Oracle的攻击
wpscan (kail)
joomscan(kail)
cmsmap (python开源CMS扫描),自动检测安全漏洞的过程中最受欢迎的CMS
VBScan (基于perl编程语言是)一个开源项目的检测链入页面CMS漏洞和分析。
joomscan(kail)Joomla它可能是最广泛使用的CMS,由于其灵活性,用户友好性,可扩展性命名一些;
Instarecon (自动化的基本数字侦察)伟大的目标获得最初的足迹,发现额外的子域。InstaRecon会做的事:DNS(直接、PTR MX,NS)查找域名查询服务(域和IP)查找谷歌在搜索的

SpiderFoot(信息收集-不行)
sslstrip(不行)
sslyze(不行)


#开发工具(框架):
Metasploit Framework
beefproject (beef是浏览器开发框架。这是一个渗透测试工具,它关注的是web浏览器。)


0x03 基本操作

安装升级卸载

描述:在PentextBox中软件安装 安装/升级/卸载 软件:toolsmanager 它会从github上进行检测是否存在更新;

  • 首先,它会从GitHub的信息库自动更新,然后会显示菜单。如果没有互联网连接,脚本会等待一段时间,然后显示菜单。
  • 其次,可以通过选择编号进入相关的模块进行安装、升级、卸载
    • 安装:例如如果我选择了Web应用程序类别然后按10;
    • 更新:如果要更新的话这里直接输入编号 11将会升级所有安装的模块;
    • 卸载:在toolsmanager 的软件目录里面 我们现在想卸载已经安装过的软件的话,直接键入uninstall + 软件名比如uninstall xssless
  • 现在,如果你想安装imagejs然后键入install imagejs它会安装它。安装后重启 PentestBox,你所安装的工具会生效。

WeiyiGeek.软件升级

由于PentestBox是一个开源项目,让在PentestBox使用的所有文件都存在于它的Github上库。终端下输入:update从它的Github上库,如果有任何更改,然后显示菜单将先进行自我更新。如果没有互联网连接,脚本会等待一段时间,然后显示菜单。
WeiyiGeek.update


渗透利器详解

功能界面设置介绍:
+PDF功能界面介绍

参考网站:

  • 模块参考:modules.pentestbox.com

0x04 自定义工具

描述:很多情况下自己的工具 toolsmanager或默认PentestBox未安装,可以按照下面的指南来手动添加自己的工具

  • 1.下载/克隆工具文件,2.设置别名 别名是基本上是需要PentestBox控制台通过;

Step1.首先复制文件到 C:/PentestBox/bin/customtools/下添加一个别名,需要编辑customaliases文件 位于/PentestBox/bin/customtools/文件夹下。

hello=python "%pentestbox_ROOT%\bin\customtools\Hello.py" $*  /**python*/
tool="%pentestbox_ROOT%\bin\customtools\tool.exe" $* /**exe*/
tool=start javaw -jar "%pentestbox_ROOT%\bin\customtools\tool.jar" $* /**Java */
wpscan=ruby "%pentestbox_ROOT%\bin\customtools\wpscan\wpscan.rb" $* /**Ruby */

在PentestBox 中添加自己的Java 和 Ruby工具,方法的原理是一样的,只是在编辑 customaliases文件的时候,语法格式有点区别工具格式参考上面的格式。


0x05 入坑解决

问题1:MSF(metasploit)无法在PenTeseBox中启用
注意:安装好后,一定不要 updata all , 发如果运行了这个命令,因为盒子本身有的工具和环境是老版本的,update all 命令会导致环境错误而工具无法使用!
否则会导致msf打不开,非要升级采用独立升级;
问题:
Weiyigeek

解决方法:

vim +72 C:/PentestBox/bin/metasploit-framework/lib/msf/core/payload/dalvik.rb; /**将时间改小一点*/

保存启动 msfconsole
Weiyigeek


问题2:Python 依赖无法下载问题

Weiyigeek
解决方法:

python –m pip install --upgrade pip
python –m pip install BeautifulSoup4


问题3: MSF 与 RUBY更新问题 |http以及https源的问题完成实例:

Weiyigeek

需要下载的文件:

分别解压在:
(1)替换ruby,删除原C:\PentestBox\base\ruby 内的文件 替换文件
(2)ruby_devkit 删除原文件 打开DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe 并解压到C:\PentestBox\base\ruby_devkit
(3)替换下载最新版本的msf

路径设置:
ruby:%Pentestbox%\base\ruby
ruby_devkit:%Pentestbox%\base\ruby_devkit
msf:%Pentestbox%\bin\metasploit-framework

查看ruby是不是按照成功

ruby -v
ruby 2.2.6p396 (2016-11-15 revision 56800) [i386-mingw32]

进行下一步->解决法子:我们就需要将原本https的证书更替掉

gem update --system              ##gem更新系统,不行就下面
#更新源 自己按情况来
gem sources --add http://rubygems.org/--remove https://rubygems.org/
gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
gem sources --add http://gems.ruby-china.org/ --remove https://rubygems.org/

gem sources -l --##查看源
gem sources –u --##更新源的缓存

#再进行更新:
update all ##更新全部应用
gem install bundler
gem install bundle
gem update bundler ---##更新bundler

Weiyigeek

切入到msfconsole及metasploit-framwork的中,在metasploit下执行:

bundle update
bundle install

应该会出现下面的错误
Weiyigeek

下一步-> 接着修改%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}"

Weiyigeek

然后直接安装pcaprub 0.12.4 :gem install pcaprub -v '0.12.4' --source 'https://rubygems.org/'
安装完成后使用,有可能要下载其他依赖这时执行 bundle insatall 即可

下一步->由于WpdPack默认在C盘,但是作为渗透测试盒子,怎么可以不方便。
这里的WpdPack路径可以修改。复制之前解压到C盘的WpdPack文件夹到PentestBox目录。
C:\PentestBox\base\ruby\lib\ruby\gems\2.3.0\gems\pcaprub-0.12.4\ext\pcaprub_c\extconf.rb
Weiyigeek

完成后执行:
bundle install
Weiyigeek


问题3:MSF(metasploit)无法连接PostGreSql数据库?

Weiyigeek

在PentestBox的bin\customtools\customaliases进行修改 (F代表:pentest box整个路径)

其中 msfupdate = cd / d“%pentestbox_ROOT% (d代表:pentestbox文件路径)
msfupdate = cd /d “%pentestbox_ROOT%\bin\metasploit-framework\”$ T ruby” %pentestbox_ROOT%\bin\metasploit-framework\msfupdate”$ *
下载PostgrepSQL::http://www.enterprisedb.com/products-services-training/pgdownload

安装
Weiyigeek

即可:
Weiyigeek

创建一个msf数据库切且postgres的用户;

Weiyigeek
Weiyigeek

修改bin\metasploit-framework\config 的database.yml?文件,更改以下代码并保存:

  • database: msf //新建的数据库名称
  • username: postgres //数据库用户
  • password: passwod //数据库用户的密码

Weiyigeek

使用以下代码链接数据库:

db_connect postgres:密码@localhost/数据库名称
db_status

Weiyigeek


问题5:ettercap无法运行,缺少packet.dll.wpcap.dll ?
http://www.33lc.com/soft/32448.html
http://www.3987.com/xiazai/1/18/43559.html#down
Weiyigeek

  1. 退出正在运行的所有程序,并将xapofx1_5.dll文件复制到系统目录下
    Windows 95/98/Me系统,则复制到C:\WINdows\system32\ 目录下。
    Windows NT/2000系统,则复制到C:\WINNT\system32\ 目录下。
    Windows XP系统,则复制到C:\WINdows\system32\ 目录下。
    Windows 7/8系统,则复制到C:\WINdows\system32\目录下。
  2. 单击开始,然后单击运行。
  3. 输入 regsvr32 xapofx1_5.dll,然后单击确定。wpcap.dll
  4. 当收到“DllRegisterServer in Rld.dll succeeded”即成功修复。

问题6:输入’beef‘命令,为什么会提示以下命令提示?
解答疑惑: 因为你没去看官方文档,默认启动命令根本不是所谓的’beef‘,而是‘beefproject’,

{lamb} beefproject
C:\PentestBox\bin\beef {git}
{lamb} Could not find addressable-2.4.0 in any of the sources

Weiyigeek

Weiyigeek



问题7:PentestBox 面封装的atom 编辑器是无法输入汉语的,而且插件也会出现一些问题,比如minimap等得重新配置?
因为是国外开源项目的原因,有些配置不符合我们国内的本土风情,举个例子:
解决方法:将自己原来的atom安装的文里件夹替换PentestBox里面的atom即可

C:\Users\CTF\AppData\Local\atom\app-1.12.6 (‘CTF’是我自己电脑的用户名)

Weiyigeek

问题8: PentestBox封装Burpsuite的是Free版本的,功能上自然比不上 国内的专业破解版的Burpsuite
解决方法:把专业版破解版的burpsuite替换进去,并重命名即可。
Weiyigeek