nuclide-research/osint-platoon

GitHub: nuclide-research/osint-platoon

基于美国陆军侦察条例的多代理 OSINT 编排框架,通过四个并行异步班组对目标进行结构化被动情报收集并自动生成标准化报告。

Stars: 1 | Forks: 0

osint-platoon

基于美国陆军 ATP 3-21.8 侦察条例的多代理 OSINT 框架。

license python NuClide

功能安装用法架构案例研究范围

osint-platoon 将四个班(Alpha、Bravo、Charlie、Weapons)作为并行异步代理进行调度。每个班返回一份围绕 Pydantic schema 构建的 SPOT 报告(Size、Activity、Location、Unit、Time、Equipment)。编排器将这四份报告综合成一份 SALUTE 报告,然后根据发现的 pivot 重新规划,最多进行 N 次迭代。独立的 CLI 包装了相同的编排器,供非代理场景使用。 该条例是协调层,而不是执行层。Weapons 班调用 NuClide 工具链(JAXEN、aimap、VisorGraph、VisorLog、VisorScuba、BARE、VisorCorpus)。各班负责保持严谨的扇出;具体工作由工具完成。 # 功能 - 四个并行异步班:Alpha(Web 侦察)、Bravo(基础设施)、Charlie(社交媒体)、Weapons(文档和工具链) - 每个班出具 ATP 3-21.8 SPOT 报告,并在整个排级综合生成 SALUTE 报告 - Pivot 重新规划循环:一个新的 IP、域名或证书链会让 Bravo 在下一次迭代中重新分配任务 - 每个 SPOT 报告上的 `dead_space[]` 字段会记录已看到但未访问的表面(需要认证的 endpoint、私有 WHOIS、付费墙文档)。在作出任何论断之前,为控制误报提供验证面 - 三种深度模式:`hasty`、`deliberate`、`detailed` - 每次运行生成 JSONL 任务日志 - 五个已提交的案例研究目录,包含 SALUTE、发现明细、PoC 和截图 - 用于非代理场景的独立 CLI (`cli.py`);用于代理场景的 Claude Code 路径 # 安装 ``` git clone https://github.com/nuclide-research/osint-platoon cd osint-platoon pip install -r requirements.txt cp .env.example .env # add ANTHROPIC_API_KEY ``` Python 3.10+。依赖项:`pydantic>=2.0`, `click>=8.1`, `httpx>=0.27`, `dnspython>=2.6`, `python-whois>=0.9`, `PyPDF2>=3.0`, `structlog>=24.0`。 推荐的方式是克隆仓库并在目录内运行 `claude`。Claude Code 是班调度的 runtime。 # 用法 在 Claude Code session 内: ``` run the osint platoon on 1.2.3.4 run the osint platoon on example.com run the osint platoon on "Acme Corp" ``` Claude Code 从 `platoon/squads/` 读取班模板,并行调度 Alpha、Bravo、Charlie 和 Weapons,并将 SPOT 报告综合成 SALUTE。 深度关键词: | 关键词 | 行为 | |---------|----------| | `hasty` | 单次扫描,仅限 Web 和基础设施 | | `deliberate` | 全班调度,单次迭代(默认) | | `detailed` | 全班调度,最多 3 次重新规划迭代 | Pivot:当某个班发现一个新的 IP、域名或证书链时,输入 `follow the pivot on X`,Bravo 就会以此重新分配任务。 独立 CLI: ``` python cli.py --target example.com --type domain --depth deliberate python cli.py --target 1.2.3.4 --type ip --depth detailed python cli.py --target example.com --dry-run python cli.py --target "Acme Corp" --type company --max-iterations 3 --log-dir logs/ ``` | 标志 | 默认值 | 效果 | |------|---------|--------| | `--target` | 必填 | 域名、IP、公司、邮箱或用户名 | | `--type` | `domain` | `domain`, `person`, `company`, `email`, `username` | | `--depth` | `deliberate` | `hasty`, `deliberate`, `detailed` | | `--max-iterations` | `2` | 最大重新规划迭代次数 | | `--dry-run` | 关闭 | 仅进行 METT-TC 分析,不调度任何班 | | `--log-dir` | `logs` | JSONL 任务日志的存放目录 | # 架构 ``` Orchestrator (ATP 3-21.8 8-step TLP) | +-- Squad Alpha -> Web recon (news, mentions, breach data, paste sites) +-- Squad Bravo -> Infrastructure (DNS, WHOIS, crt.sh, ASN, cert pivots) +-- Squad Charlie -> Social footprint (usernames, public profiles, cross-platform) +-- Weapons Squad -> Document intel (PDFs, DOCX, metadata) + NuClide tool chain ``` 每个班生成一份包含 `finds[]`、`pivots[]`、`lace`(速率限制和连接健康状况)以及 `dead_space[]` 的 `SPOTReport`。编排器生成一份包含 subject、activity、location、unit/org、timeline 和 exposure 字段的 `SALUTEReport`。 SPOT 报告结构: ``` squad | finds[] | pivots[] | confidence | lace | dead_space[] | pirs_answered{} ``` SALUTE 报告结构: ``` subject | subject_type | activity[] | location[] | unit_org[] | timeline[] | exposure[] executive_summary | confidence_overall | iteration_count | target ``` # 案例研究 五个已完成的任务作为参考输出被提交: | 目录 | 运营方 | 关键发现 | |-----------|----------|-------------| | `34_111_184_20/` | Business Insider (Axel Springer) | Atlantis v0.32.0 未授权访问;5 个处于活跃状态的生产环境 Terraform 锁可读 | | `5_78_67_23/` | Voomi Supply LLC | Temporal 配置文件中包含明文的 Elasticsearch 超级用户凭证 | | `40_160_235_43/` | Fluid Attacks 工程师 | SimpleHTTPServer 映射了家目录;暴露了 33+ 个 AI 代理凭证文件 | | `35_200_236_6/` | Pukaar.ai | 三个未授权的推理 API;儿科健康数据处于爆炸半径内 | | `34_57_75_173/` | AIRIAD | Agno v2.6.1 AgentOS 未授权访问;5 个生产环境代理可被调用 | 每个目录都包含 `case-study.md` (SALUTE)、`findings-breakdown.txt`、`poc.txt` 和 `screenshots/`。 # 范围 仅限被动收集和开放表面枚举。不进行任何登录、不提交表单、不执行破坏性操作。一旦发现被证实即停止。进行披露。osint-platoon 不能替代 NuClide 武器库;Weapons 班会调用它。排的结构是协调层,而不是执行层。 # 我们的其他项目 - [aimap](https://github.com/nuclide-research/aimap):AI/ML 基础设施指纹扫描器 - [scanner](https://github.com/nuclide-research/scanner):介于被动发现和深度枚举之间的快速主动 banner 识别阶段 - [VisorGraph](https://github.com/nuclide-research/visorgraph):从证书 pivot 到运营者归因 - [VisorLog](https://github.com/nuclide-research/visorlog):发现账本和接入 pipeline - [osint-handbook-2026](https://github.com/nuclide-research/osint-handbook-2026):抓取的 OSINT 工具数据集 # 许可证 未提交 LICENSE 文件。NuClide 工具链的一部分。联系方式:[nuclide-research.com](https://nuclide-research.com)
标签:ESC4, GitHub, OSINT, Python, 多智能体, 实时处理, 异步并发, 情报收集, 无后门, 漏洞研究, 运行时操纵, 进程管理, 逆向工具