本文为作者原创文章,为尊重作者劳动成果禁止非授权转载,若需转载请在【全栈工程师修炼指南】公众号留言,或者发送邮件到 master@weiyigeek.top 中我将及时回复。
免责申明:本文分享旨在给网络安全从业人员、网站开发人员以及运维管理人员在日常工作中进行安全测试以及防范恶意攻击, 请勿恶意使用下面介绍技术进行非法网络攻击,作者不为此承担任何责任,所有渗透都需获取授权,谨防从入门到入狱!
【中华人民共和国网络安全法】: http://www.npc.gov.cn/npc/c30834/201611/270b43e8b35e4f7ea98502b6f0e26f8a.shtml
描述: PentestBox是一个基于Windows的便携式渗透测试环境, 它基于ConEmu 和 cmder进行设计的。它包含了许多常用的渗透测试工具和应用程序,如Metasploit、Nmap、Burp Suite
等。PentestBox的设计初衷是为了方便渗透测试人员在Windows系统上进行测试,无需进行复杂的安装和配置。它可以直接从USB驱动器或其他便携设备上运行,而不会对主机系统产生任何影响, PentestBox还提供了图形用户界面,使得渗透测试工作更加简单和直观。
简单的说:PentestBox是一款Windows平台下预配置的便携式开源渗透测试工具集环境,适合初学者和专业人士使用。
PentestBox 官网:https://pentestbox.org/zh/
Q: 为什么又有一个渗透测试环境?
PentestBox不同于运行在虚拟机或者双启动环境的Linux渗透测试发行版。它打包了所有的安全工具,并且可以在Windows系统中原生地运行,有效地降低了对虚拟机或者双启动环境的需求。我们发现超过50%的渗透测试发行版是运行在Windows系统下的虚拟机程序中,这激发我们创造了它。
Q: PentestBox功能特性
PentestBox 帮助文档: https://docs.pentestbox.org/
描述: 从官网上下载速度还是蛮快的,这里我下载的是附带 metasploit 版本的 PentestBox,目前最新版本为 V2.2
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的安全来说是个威胁。
防火墙的关闭:
安装非常简单:直接运行 文件 选择安装的文件位置路径,即可安装,安装其实就是文件的释放,最后整个文件夹大小为4.55GB左右(2018年7月3日12:52:40);
知识补充:
描述:从上面我们可以看到是PentestBox共5个文件夹,2个库文件,一个bat批处理和一个exe启动程序(bat和exe都可以启动PentestBox)。
描述:PentextBox 工具集一览表参考地址,可以看到实际上其中的工具都是kali系统中的一些常见工具。
# 信息收集:
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 (kali)
joomscan(kali)
cmsmap (python开源CMS扫描),自动检测安全漏洞的过程中最受欢迎的CMS
VBScan (基于perl编程语言是)一个开源项目的检测链入页面CMS漏洞和分析。
joomscan(kali)Joomla它可能是最广泛使用的CMS,由于其灵活性,用户友好性,可扩展性命名一些;
Instarecon (自动化的基本数字侦察)伟大的目标获得最初的足迹,发现额外的子域。InstaRecon会做的事:DNS(直接、PTR MX,NS)查找域名查询服务(域和IP)查找谷歌在搜索的
SpiderFoot(信息收集-不行)
sslstrip(不行)
sslyze(不行)
#开发工具(框架):
Metasploit Framework
beefproject (beef是浏览器开发框架。这是一个渗透测试工具,它关注的是web浏览器。)
温馨提示: 若想添加自定义工具到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文件的时候,语法格式有点区别工具格式参考上面的格式。
描述:在PentextBox中软件安装 安装/升级/卸载 软件:toolsmanager
它会从github上进行检测是否存在更新;
安装、升级、卸载
weiyigeek.top-软件升级
由于PentestBox是一个开源项目,让在PentestBox使用的所有文件都存在于它的Github上库。终端下输入:update
从它的Github上库,如果有任何更改,然后显示菜单将先进行自我更新。如果没有互联网连接,脚本会等待一段时间,然后显示菜单。
描述: 功能界面设置介绍, 请参考【PentestBox简明使用教程】这个PDF文件。
comspec设置
weiyigeek.top-功能设置图
环境变量设置
weiyigeek.top-环境变量设置图
功能特性设置
weiyigeek.top-功能特性设置图
若需要PentestBox完整的功能界面介绍PDF文件,请关注公众号回复【PentestBox】或者【10011】进行获取.
描述:更多PentestBox
工具模块请参考 modules.pentestbox.com 网站。
描述: SpiderFoot
是一个开源情报自动化工具。它的目标是实现自动化的过程对给定目标收集情报,这可能是一个IP地址,域名、主机名或网络子网。它可以用来进攻,即作为黑盒的一部分渗透测试收集的信息目标或防守来识别你的组织是免费提供什么信息对你攻击者使用。
weiyigeek.top-SpiderFoot开源情报自动化工具图
描述: TestSSLServer 是一个简单的命令行工具,联系一个SSL / TLS服务器(名称和端口给出参数)获得一些SSL相关信息。
weiyigeek.top-TestSSLServer测试SSL服务器工具图
注意:安装好后,一定不要 updata all , 发如果运行了这个命令,因为盒子本身有的工具和环境是老版本的,update all 命令会导致环境错误而工具无法使用!否则会导致msf打不开,非要升级采用独立升级;问题:
解决方法:
vim +72 C:/PentestBox/bin/metasploit-framework/lib/msf/core/payload/dalvik.rb; /**将时间改小一点*/
保存启动 msfconsole
错误信息:
解决方法:
python –m pip install --upgrade pip
python –m pip install BeautifulSoup4
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
应该会出现下面的错误
下一步-> 接着修改%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
完成后执行:bundle install
Weiyigeek
在PentestBox的bin\customtools\customaliases进行修改 (F代表:pentest box整个路径)
其中 msfupdate = cd / d“%pentestbox_ROOT% (d代表:pentestbox文件路径) msfupdate = cd /d "%pentestbox_ROOT%\bin\metasploit-framework" * 下载PostgrepSQL::http://www.enterprisedb.com/products-services-training/pgdownload
安装
即可:
创建一个msf数据库切且postgres的用户;
修改bin\metasploit-framework\config 的database.yml?文件,更改以下代码并保存:
Weiyigeek
使用以下代码链接数据库:
db_connect postgres:密码@localhost/数据库名称
db_status
Weiyigeek
http://www.33lc.com/soft/32448.html http://www.3987.com/xiazai/1/18/43559.html#down
解答疑惑:因为你没去看官方文档,默认启动命令根本不是所谓的’beef‘,而是‘beefproject’,
{lamb} beefproject
C:\PentestBox\bin\beef {git}
{lamb} Could not find addressable-2.4.0 in any of the sources
Weiyigeek
Weiyigeek
亲,文章就要看完了,不关注一下【全栈工程师修炼指南】吗?
因为是国外开源项目的原因,有些配置不符合我们国内的本土风情,举个例子:解决方法:将自己原来的atom安装的文里件夹替换PentestBox里面的atom即可
C:\Users\CTF\AppData\Local\atom\app-1.12.6 (‘CTF’是我自己电脑的用户名)
Weiyigeek
解决方法:把专业版破解版的burpsuite替换进去,并重命名即可。
本文至此完毕,更多技术文章,尽情等待下篇好文!