这个项目能做什么

theHarvester 是一款基于 Python 的开源情报工具,专为授权安全评估的早期侦察阶段设计。它查询公共提供商和数据源,然后将子域名等主机名、电子邮件地址、IP 地址、URL、ASN、人员及泄露名称等发现结果规范化到共享证据模型中。 主要命令行界面支持一次性枚举和 Shell 工作流。用户可选择单个提供商,或使用子域名、邮箱、IP、ASN、URL、人员和泄露等能力选择器。可配置源并发数、结果限制、主机名排除、DNS 解析、代理和输出命名。仓库列出了 60 个发现源,包括证书透明度服务、搜索引擎、代码仓库、被动 DNS 提供商、URL 存档和安全情报平台。部分源需要 API 密钥,而多个被动源无需凭证即可使用。 活动分为三个范围类别。P0 源查询现有提供商或数据集,不直接向目标发送流量。P1 涵盖 DNS 相关活动,如解析、暴力枚举、反向查找和递归 DNS。P2 涵盖直接交互,包括 HTTP 或 TLS 请求、截图、接管检查、虚拟主机检查、端口相关活动和 API 路径扫描。P1 和 P2 操作仅在明确选择时运行,文档强调仅测试操作者拥有或明确允许评估的域或端点。 结果可导出为 JSONL 格式,同时生成 JSON 和 XML 兼容报告。完成的运行保留在本地 SQLite 证据存储中。JSONL 输出包含运行摘要,随后是去重后的发现结果,附带源和操作来源;选定的结果类型可包含 DNS 证据、Shodan 主机、接管指标、观察结果和其他丰富记录的结构化详情。 HarvestView 提供本地浏览器界面和 API,用于启动运行、查看历史记录和工件、检查源结果、比较主机名变化以及管理计划。它默认在回环地址上运行,使用 API 密钥和派生的 HttpOnly 会话 cookie,并通过本地工作器串行执行计划的有限运行。单独的报表命令可比较完成的运行,并根据完成的源结果将主机名分类为新增报告、仍在报告、不再报告或不确定。 REST API 通过经过身份验证的端点公开运行创建和取消、源列表、证据导入和导出、运行历史、计划管理和调度历史。文档提供了 Docker Compose 部署方案,服务以非特权用户身份运行,绑定到 localhost,将运行存储在命名卷中,并从文件密钥读取操作员密钥。用户配置目录下的配置文件管理提供商 API 密钥、代理和可选的身份验证服务。