资产灯塔ARL二次开发之快速信息收集优化篇
内容提要
本文介绍了如何修改信息收集工具资产灯塔ARL的功能,并优化其扫描效率。作者提到了对子域名字典的增强、指纹规则的增强以及漏洞检测的轻量化等方面的改进。同时,作者还分享了相关的字典和指纹规则的链接。
延伸解读
ARL字典增强的实操要点
ARL自带子域名字典仅约2万条,作者通过收集其他字典并与自带字典去重生成新字典,以提升子域名发现能力。操作时需将字典文件复制到arl_worker容器的/code/app/dicts/目录,并重启容器生效。这提示使用者,字典规模直接影响信息收集的覆盖面,但需注意去重和容器路径的正确性。
指纹规则扩展的规范与来源
指纹增强可参考开源项目ARL-Finger-ADD,该项目从finger.json读取指纹并替换进ARL指纹库。指纹命名规范中,method为faviconhash时匹配icon的hash值,method为keyword时匹配header或body中的字符串。用户可依据此规范自行收集更多指纹,但需确保格式正确,否则可能无法被ARL识别。
扫描效率优化的方向与取舍
作者提出优化扫描效率的几个方向:加快文件泄露检测、轻量化漏洞检测、加入自定义检测规则。其中特别指出nuclei偏重型扫描器,暗示在资源有限或追求速度的场景下,可能需要更轻量的替代方案。这些改进旨在平衡收集广度与扫描速度,但具体效果取决于实际环境和规则质量。
Q&A
ARL自带的子域名字典有多少条?如何增强?
ARL自带的大字典只有2万个子域名。作者收集了其他字典,与ARL自带字典去重后生成新字典,并提供了下载链接。将字典复制到arl_worker的docker容器中,使用命令:docker cp domain_2w.txt 容器ID:/code/app/dicts/domain_2w.txt,然后重启容器即可。
如何增强ARL的指纹规则?
可以参考开源项目ARL-Finger-ADD(https://github.com/loecho-sec/ARL-Finger-ADD/tree/main),该项目从finger.json中读取匹配的指纹来替换进ARL的指纹库中。finger.json的命名规范:method为faviconhash时匹配icon的hash值;method为keyword时匹配location为header或body的字符串。根据规范可以自己收集更多指纹加入规则。
ARL二次开发中,如何优化文件泄露检测和漏洞检测?
作者提出加快文件泄露检测的速度,并轻量化漏洞检测,因为nuclei偏重型扫描器。具体优化方法未在文中详细说明,但这是初步信息收集的想法之一。
ARL二次开发中,如何加入自定义的检测规则?
作者提到在webInfoHunter信息收集中加入自定义的检测规则,但未提供具体实现细节。
ARL指纹库中指纹的命名规范是什么?
指纹的命名规范包括:method为faviconhash时,匹配的是icon的hash值;method为keyword时,匹配的是location为header或body的字符串。
如何将增强的子域名字典应用到ARL中?
将字典文件复制到arl_worker的docker容器中,使用命令:docker cp domain_2w.txt 容器ID:/code/app/dicts/domain_2w.txt,然后重启容器即可。