技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

Autoscanner 全流程自动化扫描器深度技术分析

项目背景与痛点

在数字时代,网络安全成为了企业最为关切的问题之一。域名作为互联网的入口,其安全性直接关系到整个业务系统和数据的安全。域名扫描工具是网络安全工程师用于探测潜在风险的重要工具,但传统工具往往需要人工进行多步骤操作,且对于多工具集成、不同阶段结果的衔接都有很大的挑战。

Autoscanner 是一个输入域名后可以全流程自动化地进行子域名爆破、端口扫描、Web 服务发现、集成报告的扫描器。这一自动化流程能够显著减少安全人员的工作负担,大大提高扫描效率并减少人为错误,从而更好地保护企业的网络安全。

核心技术揭秘

Autoscanner 的架构以集成和自动化为核心,通过结合 oneforall、masscan、nmap、dirsearch、crawlergo 和 xray 等工具,形成了一套完整的扫描框架。这其中的联动和数据流是关键技术点。

以下是 Autoscanner 的数据流架构图:

graph TD A[用户输入目标域名] --> B[子域名爆破] B --> C{"爆破结果"} C -->|有结果| D[端口扫描] C -->|无结果| Xr[返回无结果] D --> E{"端口扫描结果"} E -->|有端口开放| F[Web服务扫描] E -->|无端口开放| Xr F --> G{"Web服务扫描结果"} G -->|发现服务| H[自动化报告] G -->|无服务| Xr H --> I[集成报告]

在每一个工具层面上,Autoscanner 都进行了深入优化,例如通过 oneforall 插件插件化了子域名爆破过程,确保了灵活性和扩展性。整个数据流通过中间件方式协同运作,形成了高效稳定的工作流程。

功能亮点与差异

Autoscanner 的独特之处在于它不仅实现了全流程自动化,更集成了 CDN 识别、网页截图、站点定位等高级功能。这些功能在同类扫描工具中较为少见,但对全面的安全扫描至关重要。

其动态识别域名并添加功能、工具超时中断机制也大大提高了扫描的鲁棒性。用户的体验和自动化程度显著提高,意味着更高效、更精确的扫描结果。

应用场景与落地建议

在生产环境中使用 Autoscanner,首先需要确保其相关工具链的完整安装,以避免执行时出现工具缺失导致的任务失败。同时,由于涉及域名和网络扫描,用户应当注意遵守相关法律法规,防止因扫描行为引发法律责任。

Autoscanner 适用于企业内部网络安全自查、漏洞排查与漏洞生命周期管理等场景。它能够帮助安全团队快速定位风险、及时作出响应,形成有效的安全防护墙。

综合评价

Autoscanner 在实现流程化自动化扫描上做得非常出色。其创新功能及集成机制提供了相较于市面上其他工具更高的安全性和便利性,使得它能够快速投入使用,并迅速发现潜在漏洞。

但也有一点不足。由于集成了多种工具,可能会引起资源占用较高,尤其在大规模扫描时,需要谨慎配置。此外,高级功能的实际效果依赖于底层工具的支持和策略的有效性,对于定制化要求高的用户来说,可能需要进行适当的工具链调整。

总之,Autoscanner 是一个能够大幅简化漏洞扫描流程、提升扫描效率的优秀工具,值得推荐给注重网络安全和效率的团队使用。

简要分析

热度分
1033
价值分
517
活跃状态
活跃

语言占比

Dockerfile
HTML
Python
Shell

Release

README

AutoScanner

AutoScanner是什么

AutoScanner是一款自动化扫描器,其功能分为两块:

  • 1 遍历所有子域名、子域名主机所有端口及所有http、https端口服务
  • 2 对子域名主机信息进行相关检测,如cname解析判断是否是cdn、域名定位信息判断是否为云服务器、masscan扫端口、nmap等
  • 3 对http端口服务截图、使用集成的工具如crawlergo、xray、dirsearch等进行扫描;
  • 4 集成扫描报告

AutoScanner对工具之间的调用衔接做了很多处理:

  • 1 bugscanner同站点域名识别、crawlergo爬取出的域名动态添加到扫描列表中
  • 2 判断站点是否存在cdn,存在的话跳过系列host检测;如masscan扫描出大于20个开放端口时,自动判定为存在安全设备
  • 3 curl访问站点识别,如访问失败跳过后续web检测
  • 4 所有工具增加超时中断功能,避免工具卡死卡住
  • …

项目运行

由于涉及过多工具、python包依赖及浏览器环境等,建议使用docker运行;

0x01 工具下载

二选一即可

  • 工具在执行时会自动多线程下载,不用任何操作直接下载完成正常运行,即使下载过程中有中断。 (国内从github下载,可能非常慢)
  • 下载百度云,将解压的tools目录放置项目主目录即main.py这一层;

0x02 构建镜像

  • docker build -t auto .
  • 构建过程中如果有报错,请多尝试几次或者更换源,实测过程中是遇到几次因为源的问题构建不成功,但是注销阿里云源即可成功。

0x03 执行项目

  • docker运行命令参数已放入docker_run.sh文件中,直接修改执行./docker_run.sh即可
  • 其中支持参数为:
    • -d 单个domain
    • -f 包含多个domains的文件
    • –fq 从企查查导出的企业备案域名xls文件

0x04 报告查看

  • 执行python3 -m http.server 80 --directory report/, 在浏览器中输入地址即可

截图展示

image image

评论

暂无评论