afrog-漏洞扫描(挖洞)工具【了解安装使用详细】

★★ 免责声明★★

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

1、afrog介绍

afrog 是一款性能卓越、快速稳定、PoC可定制的漏洞扫描(挖洞)工具,PoC涉及CVE、CNVD、默认口令、信息泄露、指纹识别、未授权访问、任意文件读取、命令执行等多种漏洞类型,帮助网络安全从业者快速验证并及时修复漏洞。

afrog有以下优点:

  • 开源
  • 快速、稳定、误报率低
  • 详细的 HTML 漏洞报告
  • 可定制且可稳定更新的 PoC
  • 活跃的社区交流小组

项目地址:https://github.com/zan8in/afrog

2、环境准备

基础环境是kali linux ,ip: 192.168.242.4

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

afrog的安装使用需要go,go版本要求1.19 或更高版本,所以需要先安装go。

2.1、安装go

在kali linux系统下安装会比较简单,使用apt-get命令,安装完成就可使用,不需要再设置环境变量等,安装命令如下:

shell 复制代码
# 切换到root角色
sudo su
# 更新资源
apt-get update
# 安装golang
apt-get install golang-go
# 查看安装版本
go version
3、安装afrog

安装afrog官方有提供3个方式,编译好的Binary直接使用、Github下载源码编译和Go方式安装。本文给前面两种方式,Github源码安装是会比较麻烦,过程中也可能会出现异常情况。

3.1、编译好的Binary直接使用

github项目地址看到右侧看到Releases点进去下载最新的afrog_xxx_linux_amd64.zip 或直接访问 https://github.com/zan8in/afrog/releases 选择版本下载,然后复制到kali系统、解压即可用。

shell 复制代码
# 创建目录,复制下载的编译好的zip包到该目录下
mkdir afrog
# 切换到afrog目录下
cd afrog
# 解压压缩包
unzip afrog_3.0.7_linux_amd64.zip 
# 删除压缩包
rm -rf afrog_3.0.7_linux_amd64.zip
# 查看版本号验证命令是否可正常使用
./afrog -v
# 更多命令使用参数-h查看
./afrog -h
3.2、Github下载源码编译

方便工具使用管理,一般会单独放在一个目录下,比如tools,安装命令如下:

如果git clone方式,因网络问题无法正常下载,可直接到github上下载后再复制到kali 虚拟机。

shell 复制代码
# 切换到tools目录
cd tools
# 下载afrog源码
git clone https://github.com/zan8in/afrog.git
# 切换到afrog源码目录
cd afrog
# 方式一:生成的执行文件是afrog【建议使用】
go build -o afrog cmd/afrog/main.go  
# 方式二:生成的执行文件是main
go build cmd/afrog/main.go  

在编译这个步骤预计10~20分钟,具体看网速而定,如果网速不好的话,这个步骤会卡很久,卡很久可能是异常了【详见3.3、Github下载源码编译异常处理】。

编译完后就可以使用命令确认是否正常使用。

shell 复制代码
# 查看版本号
./afrog -v
# 更多命令使用参数-h查看
./afrog -h
3.3、Github下载源码编译异常处理

卡在go: downloading github.com/zan8in/rawhttp 这个地方很久没反应

如果没有使用Ctrl+C命令强制停止,最后会有异常信息如下:

....略
whttp/@v/v0.0.0-20230318132449-31532db674af.zip": dial tcp 172.217.163.49:443: connect: connection refused
pkg/runner/celprogram.go:18:2: github.com/zan8in/oobadapter@v0.0.0-20240611013553-c79cb5eec939: Get "https://proxy.golang.org/github.com/zan8in/oobadapter/@v/v0.0.0-20240611013553-c79cb5eec939.zip": dial tcp 142.251.42.241:443: connect: connection refused
pkg/runner/cel.go:15:2: google.golang.org/genproto/googleapis/api@v0.0.0-20230530153820-e85fd2cbaebc: Get "https://proxy.golang.org/google.golang.org/genproto/googleapis/api/@v/v0.0.0-20230530153820-e85fd2cbaebc.zip": dial tcp 142.251.42.241:443: connect: connection refused

把以上报错信息复制去ChatGPT给出的说明是安装和编译 afrog 时遇到了连接问题,无法从 Go 代理服务器下载所需的包。这可能是由于网络问题或代理服务器的问题。

尝试在浏览器中打开 https://proxy.golang.org 是能正常访问。采用更改 Go 代理服务器的方式解决

shell 复制代码
# 执行该语句后再重新编译afrog就正常了
go env -w GOPROXY=https://goproxy.cn,direct
4、使用说明

使用命令可用 ./afrog -h 来查看,这里只列出1个命令和对应2个场景靶场使用示例。afrog和其他一些工具的联动后面我自己测试使用再分享出来。更多用法请参考wiki:https://github.com/zan8in/afrog/wiki

在扫描之前,需要先配置afrog-config.yaml

4.0、配置afrog-config.yaml

配置文件目录在$HOME/.config/afrog/afrog-config.yaml 。详细可参考:https://github.com/zan8in/afrog/wiki/Configuration

至少需要配置ceye,api-key和domain 从http://ceye.io/ 获取,自己注册账号。

使用命令vim 打开配置文件,按i键进入编辑,退出编辑按esc,保存退出输入:wq!,仅退出不保存输入:q!

4.1、使用命令

扫描单个目标:

默认情况下,afrog 会扫描所有内置 PoC,如果发现任何漏洞,它会自动创建 HTML 报告,以扫描日期作为文件名,并且在web端【需启用web服务才可看】展示出来;如果没有发现漏洞不会生成报告。

shell 复制代码
./afrog -t https://example.com

扫描的结果在/reports目录下,或使用命令./afrog --web 启动web服务查看漏洞报告。

注意:扫描结果不一定完全准确,可结合其他信息收集或检测一起。

以下演示基于在线靶场:https://vulfocus.cn/,靶场启动后20分钟内有效。

4.2、无漏洞示例

在线靶场搜索SQL注入编号:CVE_2022_28346,启动靶场。

执行命令结果如下:

到reports目录下查看没有生成xxx.html文件。

分析原因: 漏洞编号CVE_2022_28346在afrog收录的pocs里面有没有记录,所以就扫描不出来。

4.3、有漏洞示例

先在github上的pocs记录上取一个CVE-2020-14750,再到在线靶场搜索,启动靶场,得到测试地址。

执行命令结果如下:

访问web端,可以看到列出结果和控制台一样的记录,只不过web端会有更详细的记录可以查看。

以弱口令登录为示例,查看详细,会发现测试弱口令登录成功的账号密码都提供出来了。

5、我的公众号

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

相关推荐
蜜獾云2 小时前
linux firewalld 命令详解
linux·运维·服务器·网络·windows·网络安全·firewalld
H轨迹H9 小时前
#渗透测试 kioptix level 2靶机通关教程及提权
网络安全·渗透测试·oscp
AirDroid_qs11 小时前
Niushop开源商城(漏洞复现)
android·网络安全·开源
星竹13 小时前
upload-labs-master第21关超详细教程
网络安全
蜜獾云13 小时前
docker 安装雷池WAF防火墙 守护Web服务器
linux·运维·服务器·网络·网络安全·docker·容器
Clockwiseee1 天前
php伪协议
windows·安全·web安全·网络安全
Lspecialnx_1 天前
文件解析漏洞中间件(iis和Apache)
网络安全·中间件
学习溢出1 天前
【网络安全】逆向工程 练习示例
网络·安全·网络安全·渗透测试·逆向工程