【转载】高性能漏洞扫描器afog介绍及使用
什么是 afrogafrog 是一个高性能的漏洞扫描器具有快速稳定的特点。它支持用户自定义 PoC并内置了多种类型如 CVE、CNVD、默认密码、信息泄露、指纹识别、未授权访问、任意文件读取和命令执行。使用 afrog网络安全专业人员可以快速验证和修复漏洞从而提升安全防护能力。功能特性开源快速、稳定、误报率低详细的 HTML 漏洞报告可自定义且稳定更新的 PoCs活跃的社区交流群安装前置要求Go 版本 1.19 或更高版本。您可以通过以下方式安装二进制文件$ https://github.com/zan8in/afrog/releases/latestGithub$ git clone https://github.com/zan8in/afrog.git $ cd afrog $ go build cmd/afrog/main.go $ ./afrog -hGo$ go install -v github.com/zan8in/afrog/v3/cmd/afroglatest运行 afrog默认情况下afrog 会扫描所有内置的 PoCs如果发现任何漏洞它会自动创建一个以扫描日期为文件名的 HTML 报告。afrog -t https://example.com运行 afrog 时的警告如果您看到错误消息[ERR] ceye reverse service not set: /home/afrog/.config/afrog/afrog-config.yaml这意味着您需要修改配置文件。要执行自定义 PoC 目录您可以使用以下命令afrog -t https://example.com -P mypocs/使用命令-s keyword对所有 PoCs 进行模糊搜索并扫描搜索结果。可以使用多个关键词用逗号分隔。例如-s weblogic,jboss。afrog -t https://example.com -s weblogic,jboss使用命令-S keyword根据严重程度级别扫描漏洞。严重程度级别包括info、low、medium、high和critical。例如要仅扫描高危和严重漏洞请使用命令-S high,critical。afrog -t https://example.com -S high,critical您也可以同时扫描多个 URL。afrog -T urls.txt指纹门控requires弱口令/爆破/默认口令等高成本 PoC 通常建议只在命中指定指纹后执行。Afrog 支持在 PoCinfo中声明以下字段requires依赖的指纹标签例如mysql、ftp、nacosrequires-mode门控模式strict/opportunistic默认strict当 PoC 使用requires-mode: strict时如果运行时禁用了指纹阶段-nf或目标未命中对应指纹该 PoC 将被跳过。完整用法与问题排查请参考requires 指纹门控用法教程与问题答疑-web 命令-web命令允许将 afrog 扫描的漏洞持久存储到 SQLite3 数据库中。通过浏览器访问 http://x.x.x.x:16868 可以访问漏洞报告网页用户可以进行简单的关键词搜索并按漏洞严重程度过滤结果。afrog -web配置文件第一次启动 afrog 时它会自动创建一个名为afrog-config.yaml的配置文件该文件将保存在当前用户目录下的$HOME/.config/afrog/afrog-config.yaml。以下是示例配置文件reverse: ceye: api-key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx domain: xxxxxx.cey2e.io dnslogcn: domain: dnslog.cn alphalog: domain: dnslogxx.sh api_url: http://dnslogxx.sh/ xray: x_token: xraytest domain: dnslogxx.sh api_url: http://x.x.0.x:8777 revsuit: token: xx dns_domain: log.xx.com http_url: http://x.x.x.x/log/ api_url: http://x.x.x.x/helplogreverse是一个反向连接平台用于验证无法回显的命令执行漏洞。目前只有 ceye 可以用于验证。Ceye 配置要获取 ceye请按照以下步骤操作前往 ceye.io 网站并注册账户。登录并进入个人设置页面。复制domain和api-key并在afrog-config.yaml文件中正确配置它们。Dnslogcn无需配置但不稳定 dnslog.cnAlphalog需要构建服务 alphalogXray需要构建服务 xrayRevsuit需要构建服务 Revsuit、 教程Json 输出面向开发者Json可选命令-json-j将扫描结果保存到 JSON 文件。JSON 文件默认包含以下内容target、fulltarget、id和info。info 字段包含以下子字段name、author、severity、description和reference。如果您想保存request和response内容请使用 -json-all 命令参数。afrog -t https://example.com -json result.json afrog -t https://example.com -j result.json警告JSON 文件的内容会实时更新。但是有一个重要的注意事项在扫描完成之前如果开发者想要解析文件内容他们需要自己在文件末尾添加一个 ] 符号否则会导致解析错误。当然如果您等待扫描完成后再解析文件就不会出现这个问题。JsonAll可选命令-json-all-ja-json-all和-json命令之间的唯一区别是-json-all将所有漏洞结果包括request和response写入 JSON 文件。afrog -t https://example.com -json-all result.json afrog -t https://example.com -ja result.json截图作为库使用简单示例详细的 SDK 使用指南SDK 使用指南中文SDK Usage Guide (English)更多示例基础扫描器异步扫描器OOB 扫描器进度扫描器讨论群要加入微信上的 afrog 交流群请先添加 afrog 个人账户并标记为afrog。然后管理员会将您添加到群中。404Starlinkafrog 已加入 404Starlink免责声明此工具仅用于合法授权的企业安全建设目的。如果您想测试此工具的功能您应该自己构建目标环境。为了防止恶意使用此项目中包含的所有 PoCs 都是漏洞的理论评估。该工具不会利用漏洞、对目标发起真正的攻击或利用。在使用此工具进行漏洞扫描时重要的是确保您的行为符合当地法律法规并且您已获得充分的授权。请勿扫描未经授权的目标。如果您在使用此工具时从事任何非法行为您将对任何相应的后果承担全部责任我们不会承担任何法律或连带责任。在安装和使用此工具之前请仔细彻底地阅读每个条款。可能会以粗体或下划线突出显示可能显著影响您的权利和利益的限制、免责声明或其他条款以引起您的注意。除非您已完全阅读、完全理解并同意本协议的所有条款否则请勿安装或使用此工具。您使用该工具或以任何其他明示或暗示的方式接受本协议将被视为您承认并同意受本协议约束。【转自】afrog/docs/README_CN.md at main · zan8in/afrog · GitHub