长亭百川云 - 文章详情

Packer-Fuzzer一款好用的前端高效安全扫描工具

大象只为你

87

2024-06-27

**★★**免责声明★★

文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

1、Packer Fuzzer介绍

Packer Fuzzer是一款针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具。为什么会出现这个工具是由于WEB前端打包工具的流行,判断网站是否用Webpack打包,在Chrome浏览器可用插件Wappalyzer的杂项查看。

Packer Fuzzer支持自动模糊提取对应目标站点的API以及API对应的参数内容,并支持对:未授权访问、敏感信息泄露、CORS、SQL注入、水平越权、弱口令、任意文件上传七大漏洞进行模糊高效的快速检测。在扫描结束之后,工具还支持自动生成扫描报告,您可以选择便于分析的HTML版本以及较为正规的doc、pdf、txt版本。

项目地址:https://github.com/rtcatc/Packer-Fuzzer

2、环境准备

Packer Fuzzer工具是使用Python3语言开发,因此运行使用要确保环境安装有Python3.x和pip3。以Kali系统为例

如果没有kali系统虚拟机,可关注公众号:大象只为你,后台回复:【虚拟机】获取。

\# 切换账号为root管理员权限  
sudo su  
\# 查看Python3版本号命令  
python3 \--version  
\# 确认是否安装pip3,可用查看pip3版本号  
pip3 \--version

如果没安装python3和pip3,可用以下命令进行安装

\# 更新资源  
apt-get update  
\# 安装python3命令  
apt-get install python3  
\# 安装pip3命令  
apt-get install python3-pip

Packer Fuzzer工具会通过node_vm2
运行原生NodeJS
代码,官方推荐安装NodeJS
环境(不推荐其他JS运行环境,可能会导致解析失败)。安装命令如下

apt-get install nodejs && apt-get install npm

3、安装说明

github上有打包好的V1.4源码包,由于requirements.txt
没有指定版本号,在python3.11版本时,即使所需要资源导入成功了,在使用时也会报异常

通过问ChatGPT,再看github上的更新记录,发现requirements.txt
有最新更新记录,指定了python-docx==0.8.11
,所以使用主版本的源码进行编译可正常使用。

安装命令如下:

\# 切换到自己要放置的目录下,比如tools  
cd tools  
\# 下载源码  
git clone https://github.com/rtcatc/Packer-Fuzzer.git  
\# 切换到源码目录  
cd Packer-Fuzzer

在使用pip3导入资源包,发现又出现错误了,

按提示创建虚拟环境,相关命令如下:

\# 安装python3-venv包,如果还没安装的话  
apt install python3-venv  
\# 创建一个新的虚拟环境  
python3 \-m venv myenv  
\# 激活虚拟环境  
source myenv/bin/activate  
#-------分割线----------  
\# 退出虚拟环境  
deactivate

说明:虚拟环境,当前窗口关闭后就失效,下次需要使用时,注意切换目录到myenv所在目录去激活****

激活虚拟环境后,一键安装需要的资源

pip3 install \-r requirements.txt

4、使用说明

4.1、参数介绍

使用python3 PackerFuzzer.py [options]
命令来运行Packer Fuzzer工具,常用参数如下:

-h(--help) # 帮助命令,无需附加参数,查看工具支持的全部参数及其对应简介;

-u(--url) # 要扫描的网站网址路径,为必填选项,例如:-u https://demo.poc-sir.com

-c(--cookie)#  附加cookies内容,可为空,若填写则将全局传入,例如:-c "POC=666;SIR=233"

-d(--head)   # 附加HTTP头部内容,可为空,若填写则将全局传入,默认为Cache-Control:no-cache
,例如:-d "Token:3VHJ32HF0"

-t(--type) # 分为基础版和高级版,默认基础版本,高级版 -t adv

更多详细参数请查看github的参数介绍。

4.2、示例扫描说明

以某个网址做扫描验证,前端是vue实现的,扫描命令是 python3 PackerFuzzer.py -u http://xxx.com

扫描结果做为漏洞挖掘的参考,详细的报告在reports
目录下,默认有html和docx两种格式,命名是目标扫描域名再加一串随机数。可直接访问xx.html或复制到自己本机查看报告。

我更习惯使用html格式,左侧列出报告摘要、漏洞详情、安全建议等,右侧根据菜单点击详情展示,很友好。

像一些js文件一般是加密的,可以再使用在线工具解密,然后格式化查看内容。这个工具检测出来的漏洞不一定就是百分百正确,在实际使用过程中结合判断。

5、我的公众号

敬请关注我的公众号:大象只为你,持续更新网安相关知识中......

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2