内容
# 主机命令套件 - OSINT 软件包
*作者:* **cycloarcane**
*联系方式:* [cycloarkane@gmail.com](mailto:cycloarkane@gmail.com)
*许可证:* PolyForm 非商业许可证 1.0.0
**智能开源情报调查系统**
一个基于终端的 OSINT 调查框架,具有 AI 驱动的分析和智能代理决策功能。特点包括自动化的个人资料抓取、多平台用户名调查和本地 LLM 集成,以增强情报收集。
---
## 🚀 快速开始
### 先决条件
1. **安装 ollama** (用于 AI 分析):
```bash
curl -fsSL https://ollama.ai/install.sh | sh
ollama pull qwen3:8b # 推荐模型
```
2. **安装 OSINT 工具**:
```bash
# Arch Linux
yay -S sherlock-git mosint
# Ubuntu/Debian
pip install sherlock-project
# 对于 mosint,从以下地址下载: https://github.com/alpkeskin/mosint
```
### 安装
```bash
git clone https://github.com/cycloarcane/Hostile-Command-Suite.git
cd Hostile-Command-Suite
python -m venv .venv
source .venv/bin/activate # Linux/Mac
pip install -r requirements.txt
```
### 使用
**交互式综合调查:**
```bash
python3 HCSO.py --interactive
# 然后提供所有目标信息:姓名、用户名、电子邮件、地址等。
```
**命令行调查:**
```bash
# 单个目标( backward compatibility )
python3 HCSO.py cycloarcane
python3 HCSO.py user@example.com
# 综合目标(多个数据点)
python3 HCSO.py "John Smith, @johnsmith123, john@example.com, works at Acme Corp"
python3 HCSO.py --model llama3.2 "Jane Doe jane.doe@company.com https://linkedin.com/in/janedoe"
```
---
## 🛠️ 功能
### 核心能力
- **🔍 用户名调查**:Sherlock 集成,跨越 400+ 个社交媒体平台
- **📧 电子邮件调查**:Mosint 集成,用于电子邮件情报和泄露分析
- **🌐 个人资料抓取**:从发现的账户中自动提取个人资料详细信息
- **🔍 网络搜索情报**:DuckDuckGo 搜索集成,用于综合 OSINT 收集
- **🤖 AI 代理**:本地 ollama 集成,用于智能决策和分析
- **⚡ 智能工作流**:自动工具链和调查枢转
- **🎨 丰富终端**:专业红/黑主题界面,带有进度指示器
### 支持的目标
| 目标类型 | 主要工具 | 次要工具 | AI 分析 |
|-------------|--------------|-----------------|-------------|
| **用户名** | Sherlock → 个人资料抓取器 | DuckDuckGo 搜索,链接分析器 | ✅ 全分析 |
| **电子邮件** | Mosint | DuckDuckGo 搜索 | ✅ 全分析 |
| **任何目标** | DuckDuckGo 搜索 | 根据上下文的枢转 | ✅ 全分析 |
### MCP 工具架构
系统使用基于模型上下文协议(MCP)的工具服务器:
- **`sherlock_server.py`**:跨平台的用户名调查
- **`mosint_server.py`**:电子邮件枚举和泄露调查
- **`profile_scraper_server.py`**:智能个人资料内容提取
- **`duckduckgo_server.py`**:用于综合情报收集的网络搜索
- **`link_analyzer_server.py`**:URL 和 GitHub 个人资料的深度分析
### AI 驱动的情报
AI 代理提供:
- **综合数据提取**:使用 LLM 解析和分类所有提供的目标信息
- **智能工具选择**:根据数据类型自动选择适当的工具:
- **姓名** → DuckDuckGo 网络搜索公共记录和新闻
- **用户名** → Sherlock 用于社交媒体平台发现
- **电子邮件** → Mosint 用于泄露数据和域名分析
- **组织** → 网络搜索公司情报
- **URL** → 链接分析器用于深度内容分析
- **调查枢转**:发现新的线索并建议后续行动
- **安全风险评估**:评估暴露水平和安全影响
- **模式识别**:识别跨平台和数据源的连接
- **决策**:确定调查何时完成或需要继续
---
## 🏗️ 架构
### 智能代理设计
```
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ HCSO 代理 │──▶│ Ollama AI │───▶│ 调查 │
│ │ │ 决策引擎 │ │ 建议 │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ MCP 工具 │──▶│ 工具结果 │───▶│ 个人资料抓取器 │
│ 管理器 │ │ 分析 │ │ 自动触发 │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Sherlock │ │ Mosint │ │ 个人资料 │
│ 用户名搜索 │ │ 电子邮件情报 │ │ 抓取器 │
└─────────────────┘ └──────────────────┘ └─────────────────┘
```
### 调查工作流
1. **综合输入**:用户提供所有可用的目标信息(姓名、用户名、电子邮件、地址、组织、URL 等)
2. **AI 数据提取**:LLM 解析并将信息分类为结构化数据类型
3. **智能工具选择**:系统自动为每个数据类型选择适当的工具:
- 姓名 → 网络搜索公共情报
- 用户名 → 社交媒体平台发现
- 电子邮件 → 泄露分析和域名情报
- 组织 → 公司和公共记录搜索
- URL → 深度内容和个人资料分析
4. **并行调查**:根据提取的数据同时执行多个工具
5. **AI 分析**:对所有发现的结果进行智能分析并进行交叉发现
6. **决策点**:AI 建议额外的调查或标记完成
7. **迭代增强**:根据发现的线索进行后续调查
---
## 📊 示例输出
```
╔═════════════════════════════════════════════════════════════════════════════════╗
║ ██ ██ ███████ ██████ ███████ ███████ ██ ███ ██ ████████ ║
║ ██ ██ ██ ██ ██ ██ ██ ██ ████ ██ ██ ║
║ ███████ ███████ ██ █████ ██ ██ ███████ ██ ██ ██ ██ ██ ║
║ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ║
║ ██ ██ ███████ ██████ ███████ ███████ ██ ██ ████ ██ ║
╚═════════════════════════════════════════════════════════════════════════════════╝
主机命令套件 - OSINT 软件包
智能开源情报调查系统
使用 AI 模型:qwen3:8b
可用工具:sherlock, mosint, profile_scraper, duckduckgo_search, link_analyzer
──────────────────────────────────────────────────────────────────────────────
═══ 综合目标信息 ═══
提供关于目标的所有可用信息,以便进行智能分析
包括:姓名、用户名、电子邮件、地址、组织、社交个人资料等。
输入所有目标信息:John Smith, @johnsmith123, john.smith@techcorp.com, 在 TechCorp 工作
分析提供的信息
──────────────────────────────────────────────────────────────────────────────
提取的目标情报
┏━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 数据类型 ┃ 提取的值 ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 姓名 │ John Smith │
│ 用户名 │ johnsmith123 │
│ 电子邮件 │ john.smith@techcorp.com │
│ 组织 │ TechCorp │
└────────────────┴───────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────
调查姓名:John Smith
SHERLOCK 调查结果
┏━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┓
┃ 指标 ┃ 值 ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━┩
│ 目标 │ cycloarcane │
│ 找到的账户 │ 17 │
│ 状态 │ 成功 │
└────────────────┴─────────────┘
────────────────────────────────────────────────────────────
找到 17 个个人资料,抓取以获取更多情报...
个人资料抓取器调查结果
┏━━━━━━━━━━━━━━━━━━┳━━━━━━━━━┓
┃ 指标 ┃ 值 ┃
┡━━━━━━━━━━━━━━━━━━╇━━━━━━━━━┩
│ 总共抓取 │ 5 │
│ 成功 │ 4 │
│ 有用的信息 │ 4 │
│ 状态 │ 成功 │
└──────────────────┴─────────┘
────────────────────────────────────────────────────────────
AI 代理分析...
╭─ AI 调查分析 ──────────────────────────────────────────────╮
│ 分析:调查显示 GitHub 个人资料具有安全研究兴趣(LLM + 红队)。从多个平台收集了高价值情报。个人资料抓取提供了足够的上下文。 │
│ │
│ 建议:调查完成 - 收集了足够的情报 │
│ 工具:无 │
│ 目标:N/A │
│ 理由:个人资料分析显示技术专长和安全重点。当前调查范围内不需要额外的工具。 │
╰───────────────────────────────────────────────────────────────────────────╯
```
---
## 🛡️ 安全与伦理
### 负责使用
- **法律合规**:所有调查必须符合适用的法律
- **授权**:仅调查您有权限调查的目标
- **速率限制**:尊重平台速率限制并实施延迟
- **本地处理**:所有 AI 分析通过 ollama 在本地进行(无云)
### 隐私与安全
- **无数据持久化**:调查结果不会长期存储
- **本地 LLM**:AI 分析永远不会离开您的机器
- **工具隔离**:每个 OSINT 工具独立运行
- **专业重点**:设计用于防御性安全和合法研究
---
## 🔧 配置
### AI 模型选择
```bash
# 使用不同的 ollama 模型
python3 HCSO.py --model llama3.2 target
python3 HCSO.py --model qwen3:8b target
python3 HCSO.py --model mixtral target
```
### 可配置提示
代理行为可通过 YAML 文件配置:
- `prompts/agent_system.yaml`:核心代理指令和工具选择逻辑
- `prompts/tool_prompts.yaml`:工具特定分析模板
### 工具能力
| 工具 | 输入 | 能力 | 自动触发 |
|------|--------|--------------|--------------|
| **DuckDuckGo 搜索** | 姓名、组织 | 网络情报、新闻、公共记录 | 自动适用于姓名 |
| **Sherlock** | 用户名 | 400+ 平台搜索 | 自动适用于用户名 |
| **Mosint** | 电子邮件 | 泄露数据、域名情报 | 自动适用于电子邮件 |
| **链接分析器** | URL | GitHub 个人资料、网页内容分析 | 自动适用于 URL |
| **个人资料抓取器** | URL | 个人资料信息、关注者、验证 | Sherlock 后自动触发 |
---
## 🚧 开发
### 添加新的 OSINT 工具
1. 在 `mcp_tools/new_tool_server.py` 中创建 MCP 服务器
2. 在 `MCPToolManager.check_available_tools()` 中添加工具检测
3. 在 `MCPToolManager.call_tool()` 中实现工具调用
4. 在 `display_investigation_result()` 中添加结果显示
5. 更新代理提示以进行工具选择逻辑
### 架构优势
**以前的复杂架构:**
- 15+ 微服务与 FastMCP
- PostgreSQL 数据库需求
- Web UI 和 API 复杂性
- 多个身份验证层
**当前智能代理架构:**
- 单个智能代理与 MCP 工具
- 无需数据库
- 纯终端界面与 AI
- 本地 ollama 用于决策
- 自动工具链和枢转
---
## 📈 路线图
### 第一阶段:核心情报 ✅
- [x] Sherlock 用户名调查与 AI 分析
- [x] Mosint 电子邮件调查与 AI 分析
- [x] 智能个人资料抓取社交媒体
- [x] AI 驱动的调查决策
- [x] 基于 MCP 的工具架构
### 第二阶段:增强分析 🚧
- [ ] 链接分析器用于深度 GitHub/社交媒体分析
- [ ] 域名调查能力
- [ ] 电话号码 OSINT 集成
- [ ] 跨发现的相关性分析
### 第三阶段:高级情报 📋
- [ ] 调查会话管理
- [ ] 自定义工具集成框架
- [ ] 自动调查工作流
- [ ] 高级 AI 推理和枢转
---
## 🤝 贡献
1. 复刻仓库
2. 创建功能分支 (`git checkout -b feature/new-tool`)
3. 添加 MCP 工具服务器,按照现有模式
4. 更新代理提示以进行工具集成
5. 使用各种目标类型进行测试
6. 提交拉取请求
### 开发设置
```bash
git clone https://github.com/cycloarcane/Hostile-Command-Suite.git
cd Hostile-Command-Suite
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python3 HCSO.py --interactive
```
---
## 📄 许可证
该项目根据 PolyForm 非商业许可证 1.0.0 授权 - 有关详细信息,请参阅 LICENSE 文件。
版权所有 © cycloarcane (cycloarkane@gmail.com)
---
**智能。终端。有效。**
*高级 OSINT 调查,具备 AI 驱动的决策功能*
*如有疑问或功能请求,请联系 [cycloarkane@gmail.com](mailto:cycloarkane@gmail.com)*