OSINT智能威胁检测工具

一个利用LLM和MCP协议自动执行OSINT任务,收集信息并自动数据库化,通过Web仪表板进行可视化的智能威胁检测工具。

  • by AIIIAjou
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 AIIIAjou/osint-mcp-servers

使用说明

OSINT MCP服务器

利用AI实现智能威胁检测自动化项目

LLM通过模型上下文协议(MCP)执行开放源代码智能(OSINT)操作,并自动数据库化收集的信息,并将其可视化为Web仪表板。

🚀 主要功能

1.OSINT收集工具(MCP服务器)

  • 情报X:搜索暗网和泄露数据
  • 夏洛克:在500+网站上搜索用户名
  • 剧作家:分析和滚动网页
    • 分析单个URL
    • 递归滚动和分析
    • 动态网页交互
    • 自动导航(基于AI)
  • 病毒总数:验证域和IP威胁信息

2.数据库自动化

所有收集的信息将自动存储在CSV数据库中:

  • 领域:
    • timestamp:收集时间
    • target:收集目标
    • url:收集的URL
    • pdf_path:网页PDF快照路径
    • summary:信息摘要
    • sensitive_info:重要信息(电子邮件、电话号码、SNS链接等)
    • collection_method:使用的收集方法
    • threat_level:威胁级别(safe/suspicious/malicious/unknown)
    • metadata:其他元数据

3.Web仪表板

可视化通过基于FastAPI的Web界面收集的数据:

  • 📊 实时统计仪表板
  • 🔍 搜索和过滤功能
  • 📄 查看详细信息
  • 📥 下载PDF
  • 🗑️ 删除记录
  • 📤 导出JSON

📦 安装

要求

  • Python 3.12+
  • Node.js(可选)

安装软件包

pip install -r requirements.txt
playwright install chromium

首选参数

.env 创建文件并设置API密钥:

INTELX_API_KEY=your_intelligence_x_api_key
VIRUSTOTAL_API_KEY=your_virustotal_api_key
SHODAN_API_KEY=your_shodan_api_key
HARVESTER_API_KEY=your_harvester_api_key
DEBUG_MODE=false

🎯 使用方法

1.运行MCP服务器

python server_stdio.py

该服务器与Claude Desktop集成,允许LLM使用OSINT工具。

Claude桌面设置(claude_desktop_config.json):

{
  "mcpServers": {
    "osint": {
      "command": "python",
      "args": ["/path/to/osint-mcp-servers/server_stdio.py"]
    }
  }
}

2.运行Web仪表板

python web_interface.py

在Web浏览器中http://localhost:8000连接

3.请求Claude使用OSINT

示例:

example.com 도메인을 분석하고 VirusTotal로 위협 정보도 확인해줘
github.com에서 "johndoe" 사용자명을 검색해줘
https://target-website.com를 크롤링하고 연락처 정보를 수집해줘

所有结果将自动 db.csv存储在中,网页 ./pdfs/ 以PDF格式存储在目录中。

📂 项目结构

osint-mcp-servers/
├── server_stdio.py          # MCP 서버 (OSINT 도구)
├── db_manager.py            # CSV 데이터베이스 관리
├── pdf_generator.py         # PDF 생성 모듈
├── web_interface.py         # 웹 대시보드
├── db.csv                   # 데이터베이스 파일
├── pdfs/                    # PDF 스냅샷 저장 폴더
├── sessions/                # Playwright 세션 저장 폴더
├── requirements.txt         # Python 의존성
└── README.md

🛠️ 模块说明

db_manager.py

管理CSV数据库的模块:

  • OSINTDatabase:数据库类
    • add_record():添加记录
    • get_all_records():查看所有记录
    • search_records():有条件搜索
    • delete_record():删除记录
    • get_statistics():统计信息
    • export_to_json():导出JSON

pdf_generator.py

使用Playwright创建PDF:

  • PDFGenerator:PDF生成类
    • url_to_pdf():将URL转换为PDF
    • html_to_pdf():将HTML转换为PDF

还提供了同步包装器函数:

  • generate_pdf_from_url()
  • generate_pdf_from_html()

web_interface.py

基于FastAPI的Web仪表板:

API端点:

  • GET /:主仪表板页面
  • GET /api/statistics:统计信息
  • GET /api/records:查看所有记录
  • DELETE /api/records/{timestamp}:删除记录
  • GET /api/pdf:下载PDF
  • GET /api/export:导出JSON

📊 Web仪表板功能

统计仪表板

  • 记录总数
  • 按威胁级别统计(安全/怀疑/恶意)
  • 最近收集时间

搜索和过滤

  • 目标搜索(文本搜索)
  • 按收集方法过滤
  • 按威胁级别过滤

记录管理

  • 查看详细信息(MODAL)
  • 下载PDF
  • 删除记录
  • 自动刷新(30秒)

🔒 安全注意事项

  1. API密钥安全性: .env 使用文件安全地管理API密钥
  2. 保存重要信息:收集的电子邮件、电话号码等存储在单独的字段中
  3. 威胁信息:基于VirusTotal结果自动分类威胁级别
  4. PDF快照:保留网页上的时间点证据

🧪 测试

测试数据库模块

python db_manager.py

将添加示例数据并输出统计数据。

测试PDF生成

python pdf_generator.py

example.com将生成PDF。

📝 开发日志

最近更新

  • CSV数据库自动化
  • 创建PDF快照
  • MCP服务器集成
  • 实现Web仪表板
  • 实时统计和过滤

未来计划

  • []导出Excel
  • []电子邮件通知
  • []计划功能
  • []高级搜索(正则表达式)
  • []数据可视化图表

🤝 贡献

欢迎话题和PR!

📄 许可证

MIT许可证

📧 咨询

如果您有项目相关问题,请注册问题。


由以下材料制成❤️ OSINT自动化