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:下载PDFGET /api/export:导出JSON
📊 Web仪表板功能
统计仪表板
- 记录总数
- 按威胁级别统计(安全/怀疑/恶意)
- 最近收集时间
搜索和过滤
- 目标搜索(文本搜索)
- 按收集方法过滤
- 按威胁级别过滤
记录管理
- 查看详细信息(MODAL)
- 下载PDF
- 删除记录
- 自动刷新(30秒)
🔒 安全注意事项
- API密钥安全性:
.env使用文件安全地管理API密钥 - 保存重要信息:收集的电子邮件、电话号码等存储在单独的字段中
- 威胁信息:基于VirusTotal结果自动分类威胁级别
- PDF快照:保留网页上的时间点证据
🧪 测试
测试数据库模块
python db_manager.py将添加示例数据并输出统计数据。
测试PDF生成
python pdf_generator.pyexample.com将生成PDF。
📝 开发日志
最近更新
- CSV数据库自动化
- 创建PDF快照
- MCP服务器集成
- 实现Web仪表板
- 实时统计和过滤
未来计划
- \[\]导出Excel
- \[\]电子邮件通知
- \[\]计划功能
- \[\]高级搜索(正则表达式)
- \[\]数据可视化图表
🤝 贡献
欢迎话题和PR!
📄 许可证
MIT许可证
📧 咨询
如果您有项目相关问题,请注册问题。
______________________________________________________________________
由以下材料制成❤️ OSINT自动化
