sunkireddy-Barath/EchoTrace
GitHub: sunkireddy-Barath/EchoTrace
EchoTrace AI:语义欺诈演变与威胁情报引擎,助力网络安全防护。
Stars: 0 | Forks: 0
# 🛡️ EchoTrace AI
### *语义欺诈演变与威胁情报引擎*
**“在关键词出现之前检测欺诈家族。”**
EchoTrace 不是一个关键词过滤器。它不是一个聊天机器人包装器。
它是一个 **Qdrant 原生语义智能平台**,在 384 个维度上映射欺诈的心理 DNA — 检测突变、追踪演变,并捕捉其他系统错过的零日威胁。
[](https://youtu.be/3dWzNZXA8DY) [](https://github.com/sunkireddy-Barath/EchoTrace) [](https://qdrant.tech) [](http://localhost:8000/docs) ### 分析截图 1. 在 `/analyze` 中切换到 **“截图”** 选项卡 2. 投下或上传任何欺诈截图(PNG/JPG/WEBP) 3. EasyOCR 自动提取文本 4. 对提取的文本运行相同的完整分析流程 ### 触发零日检测 提交与任何已知家族不匹配的消息: ``` "Join our AI model rating community — earn Rs 2,000/day by reviewing chatbot responses. Pay Rs 500 activation." ``` 预期结果:**零日警报**,新颖度得分 > 58% + 在 Qdrant 中创建原型家族 ### 探索向量空间 1. 前往 **`/vectorspace`** 2. 在搜索框中输入任何消息 3. 观看动画: - 嵌入步骤(SentenceTransformers) - Qdrant HNSW 查询以实时代码显示 - 新点出现并动画到其最近的簇 4. 看看它最接近哪个家族 ### 实时监控零日 1. 前往 **`/radar`** 2. Qdrant 操作终端自动滚动显示实时日志条目 3. 点击任何警报卡以查看其 **新颖度得分可视化器**: - 6 个水平条(每个家族中心点一个) - 显示与每个家族的精确余弦相似度 - 突出显示为什么没有越过阈值 4. 原型家族孵化显示向毕业(10 个向量)的进展 ### 🔌 API 参考指南 | 方法 | 端点 | 描述 | 返回 | |--------|----------|-------------|---------| | `POST` | `/api/analyze` | 完整威胁分析 | `AnalysisResult` (21 个字段) | | `GET` | `/api/families` | 所有 6 个欺诈家族 + 统计 | `FamilyStats[]` | | `GET` | `/api/evolution/{family}` | 年度时间线 | `EvolutionEntry[]` | | `GET` | `/api/graph` | 威胁突变图 | `GraphData {nodes, edges}` | | `GET` | `/api/stats` | 仪表板统计 | `DashboardStats` | | `GET` | `/api/health` | Qdrant + 模型状态 | `HealthResponse` | | `GET` | `/api/velocity` | 所有家族漂移率 | `EvolutionVelocity[]` | | `GET` | `/api/velocity/{family}` | 单个家族漂移率 | `EvolutionVelocity` | | `POST` | `/api/report` | 提交社区欺诈 | `{status, family, score}` | | `GET` | `/api/feed` | 最近社区报告 | `FeedItem[]` | ### 示例:分析欺诈 ``` curl -X POST http://localhost:8000/api/analyze \ -F "text=Your SBI account will be blocked unless you update KYC." # 响应(缩写): { "threat_level": "HIGH", "threat_score": 0.91, "detected_family": "Banking Fraud", "genome": { "dominant_vector": "fear_induction", "attack_complexity": 0.83, "dimensions": [ { "key": "urgency", "score": 0.88 }, { "key": "authority", "score": 0.72 }, { "key": "fear", "score": 0.94 } ] }, "zero_day": { "is_zero_day": false, "novelty_score": 0.09, "variant_stage": "known" }, "similar_messages": [ ...10 Qdrant nearest neighbors... ], "evolution_timeline": [ ...7 year-by-year entries... ] } ``` 交互式 API 文档:**`http://localhost:8000/docs`** ## 🗂️ 种子语料库 涵盖 **6 个家族 · 6 年(2020–2025)** 的 84 条合成欺诈消息: | 家族 | 向量 | 演化弧 | |--------|---------|--------------| | 🏦 银行欺诈 | 21 | 账户被封锁 → KYC 更新 → 生物识别验证 | | 💼 就业欺诈 | 15 | 数据录入在家工作 → 假招聘人员 → AI 内容评分 | | 📱 UPI/支付 | 15 | UPI 退款 → 二维码陷阱 → UPI 授权欺诈 | | 📧 钓鱼 | 13 | 密码重置 → 加密钱包 → AI 安全警报 | | 🎰 彩票欺诈 | 10 | 英国电子邮件 → KBC WhatsApp → 加密空投 | | 💰 贷款欺诈 | 10 | 即时贷款 → MSME 计划 → 加密支持的贷款 | 每个条目包括:欺诈文本 · 年份 · 模态性 · 源标签 · 簇 ID · 置信度得分 ## 🛠️ 技术栈 | 层 | 技术 | 角色 | |-------|-----------|------| | 🟣 **向量数据库** | **Qdrant** (HNSW + INT8) | 核心智能引擎 — 所有检测、聚类、存储 | | 🧠 **嵌入** | SentenceTransformers `all-MiniLM-L6-v2` | 384 维语义向量 | | ⚡ **后端** | Python FastAPI + Pydantic v2 | REST API + 流程编排 | | 🔍 **OCR** | EasyOCR (CPU) | 截图 → 文本提取 | | 🎤 **语音转文本** | OpenAI Whisper (base) | 语音欺诈 → 文本转录 | | 📊 **图引擎** | NetworkX + SciPy | 家族突变图计算 | | 🎨 **前端** | Next.js 14 + TypeScript + Tailwind CSS | 完整应用程序 UI | | 🕸️ **图可视化** | Cytoscape.js | 交互式威胁突变网络 | | 📈 **图表** | Recharts | 雷达图、散点图、时间线、条形图 | | 🌍 **地图** | react-simple-maps | 地理威胁分布 | | 🎬 **动画** | Framer Motion | 滚动动画、过渡 | | 🐳 **基础设施** | Docker Compose | Qdrant + 后端容器化 | ## 💡 为什么选择 EchoTrace 而不是其他所有选项 | 功能 | EchoTrace | 关键词过滤器 | 机器学习分类器 | LLM 包装器 | |---|---|---|---|---| | 检测改写 | ✅ | ❌ | ⚠️ 部分支持 | ⚠️ 部分支持 | | 零日检测 | ✅ | ❌ | ❌ | ❌ | | 追踪演变 | ✅ | ❌ | ❌ | ❌ | | 8 维心理档案 | ✅ | ❌ | ❌ | ❌ | | 跨家族 DNA 匹配 | ✅ | ❌ | ❌ | ❌ | | 地理位置有效负载过滤 | ✅ | ❌ | ❌ | ❌ | | 多模态输入 | ✅ | ❌ | ⚠️ | ✅ | | 可解释的结果 | ✅ | ✅ | ❌ | ⚠️ | | 每次突变需要重新训练 | ❌ | ❌ | ✅ | ✅ | | 确定性结果 | ✅ | ✅ | ❌ | ❌ | | **单个数据库(Qdrant)** | **✅** | — | — | — | ## 🟣 Qdrant 功能展示 EchoTrace 故意使用 Qdrant 的每个主要功能: ``` Qdrant Feature How EchoTrace Uses It ──────────────────────────────────────────────────────────────── HNSW Index O(log n) ANN search across 84+ vectors INT8 Quantization 75% memory reduction, <1% accuracy loss Cosine Distance Semantic similarity = vector angle metric Payload Filtering Country/family/year geographic analysis Payload Indexing country, scam_family, year all indexed Named Vectors 384-dim float32 semantic vectors Multi-Collection scam_messages + scam_families together upsert() Store new community reports instantly search() Core detection in ~2ms scroll() Iterate proto-family clusters get_collection() Health check + stats dashboard ``` ## 🗺️ 路线图 - [ ] 实时摄取管道(Kafka/WebSocket 流) - [ ] 活动学习:用户反馈循环回 Qdrant - [ ] 跨语言检测(印地语、泰米尔语、孟加拉语、乌尔都语) - [ ] 从网络犯罪报告门户自动摄取 OSINT - [ ] 时间突变预测:预测下一个欺诈变体 - [ ] Qdrant 云部署,具有多节点复制 - [ ] 为银行和电信提供商提供威胁情报 API - [ ] 移动 SDK 用于实时 SMS 扫描 ## 📄 项目结构 ``` EchoTrace/ ├── backend/ │ ├── main.py ← FastAPI app + Qdrant lifespan init │ ├── config.py ← Pydantic settings (env vars) │ ├── models/schemas.py ← All Pydantic v2 request/response models │ ├── routers/ ← FastAPI route handlers (8 routers) │ ├── services/ │ │ ├── qdrant_service.py ← ALL vector DB operations (core) │ │ ├── embedding_service.py ← SentenceTransformers singleton │ │ ├── analysis_service.py ← Full pipeline orchestrator │ │ ├── genome_service.py ← 8-dimension psychological profiling │ │ ├── velocity_service.py ← Semantic drift rate computation │ │ ├── graph_service.py ← Mutation graph (NetworkX) │ │ ├── ocr_service.py ← EasyOCR wrapper │ │ └── audio_service.py ← Whisper STT wrapper │ └── data/seed_data.py ← 84-entry scam corpus │ └── frontend/ └── src/ ├── app/ │ ├── page.tsx ← Landing page (Framer Motion) │ ├── dashboard/ ← Main app dashboard │ ├── analyze/ ← Multimodal input │ ├── results/ ← Full intelligence report │ ├── families/ ← Fraud family explorer │ ├── feed/ ← Community feed + threat map │ ├── radar/ ← Zero-Day Radar │ ├── vectorspace/ ← HNSW vector explorer │ └── threatmap/ ← Geographic intelligence └── components/ ├── SemanticThreatMap.tsx ← UMAP scatter (Recharts) ├── GenomeRadar.tsx ← 8-dim radar chart ├── ZeroDayAlert.tsx ← Novelty score card ├── EvolutionTimeline.tsx ← Year-by-year chart ├── ThreatGraph.tsx ← Cytoscape network └── ThreatBriefTemplate.tsx← PDF export layout ```
[](https://youtu.be/3dWzNZXA8DY) [](https://github.com/sunkireddy-Barath/EchoTrace) [](https://qdrant.tech) [](http://localhost:8000/docs) ### 分析截图 1. 在 `/analyze` 中切换到 **“截图”** 选项卡 2. 投下或上传任何欺诈截图(PNG/JPG/WEBP) 3. EasyOCR 自动提取文本 4. 对提取的文本运行相同的完整分析流程 ### 触发零日检测 提交与任何已知家族不匹配的消息: ``` "Join our AI model rating community — earn Rs 2,000/day by reviewing chatbot responses. Pay Rs 500 activation." ``` 预期结果:**零日警报**,新颖度得分 > 58% + 在 Qdrant 中创建原型家族 ### 探索向量空间 1. 前往 **`/vectorspace`** 2. 在搜索框中输入任何消息 3. 观看动画: - 嵌入步骤(SentenceTransformers) - Qdrant HNSW 查询以实时代码显示 - 新点出现并动画到其最近的簇 4. 看看它最接近哪个家族 ### 实时监控零日 1. 前往 **`/radar`** 2. Qdrant 操作终端自动滚动显示实时日志条目 3. 点击任何警报卡以查看其 **新颖度得分可视化器**: - 6 个水平条(每个家族中心点一个) - 显示与每个家族的精确余弦相似度 - 突出显示为什么没有越过阈值 4. 原型家族孵化显示向毕业(10 个向量)的进展 ### 🔌 API 参考指南 | 方法 | 端点 | 描述 | 返回 | |--------|----------|-------------|---------| | `POST` | `/api/analyze` | 完整威胁分析 | `AnalysisResult` (21 个字段) | | `GET` | `/api/families` | 所有 6 个欺诈家族 + 统计 | `FamilyStats[]` | | `GET` | `/api/evolution/{family}` | 年度时间线 | `EvolutionEntry[]` | | `GET` | `/api/graph` | 威胁突变图 | `GraphData {nodes, edges}` | | `GET` | `/api/stats` | 仪表板统计 | `DashboardStats` | | `GET` | `/api/health` | Qdrant + 模型状态 | `HealthResponse` | | `GET` | `/api/velocity` | 所有家族漂移率 | `EvolutionVelocity[]` | | `GET` | `/api/velocity/{family}` | 单个家族漂移率 | `EvolutionVelocity` | | `POST` | `/api/report` | 提交社区欺诈 | `{status, family, score}` | | `GET` | `/api/feed` | 最近社区报告 | `FeedItem[]` | ### 示例:分析欺诈 ``` curl -X POST http://localhost:8000/api/analyze \ -F "text=Your SBI account will be blocked unless you update KYC." # 响应(缩写): { "threat_level": "HIGH", "threat_score": 0.91, "detected_family": "Banking Fraud", "genome": { "dominant_vector": "fear_induction", "attack_complexity": 0.83, "dimensions": [ { "key": "urgency", "score": 0.88 }, { "key": "authority", "score": 0.72 }, { "key": "fear", "score": 0.94 } ] }, "zero_day": { "is_zero_day": false, "novelty_score": 0.09, "variant_stage": "known" }, "similar_messages": [ ...10 Qdrant nearest neighbors... ], "evolution_timeline": [ ...7 year-by-year entries... ] } ``` 交互式 API 文档:**`http://localhost:8000/docs`** ## 🗂️ 种子语料库 涵盖 **6 个家族 · 6 年(2020–2025)** 的 84 条合成欺诈消息: | 家族 | 向量 | 演化弧 | |--------|---------|--------------| | 🏦 银行欺诈 | 21 | 账户被封锁 → KYC 更新 → 生物识别验证 | | 💼 就业欺诈 | 15 | 数据录入在家工作 → 假招聘人员 → AI 内容评分 | | 📱 UPI/支付 | 15 | UPI 退款 → 二维码陷阱 → UPI 授权欺诈 | | 📧 钓鱼 | 13 | 密码重置 → 加密钱包 → AI 安全警报 | | 🎰 彩票欺诈 | 10 | 英国电子邮件 → KBC WhatsApp → 加密空投 | | 💰 贷款欺诈 | 10 | 即时贷款 → MSME 计划 → 加密支持的贷款 | 每个条目包括:欺诈文本 · 年份 · 模态性 · 源标签 · 簇 ID · 置信度得分 ## 🛠️ 技术栈 | 层 | 技术 | 角色 | |-------|-----------|------| | 🟣 **向量数据库** | **Qdrant** (HNSW + INT8) | 核心智能引擎 — 所有检测、聚类、存储 | | 🧠 **嵌入** | SentenceTransformers `all-MiniLM-L6-v2` | 384 维语义向量 | | ⚡ **后端** | Python FastAPI + Pydantic v2 | REST API + 流程编排 | | 🔍 **OCR** | EasyOCR (CPU) | 截图 → 文本提取 | | 🎤 **语音转文本** | OpenAI Whisper (base) | 语音欺诈 → 文本转录 | | 📊 **图引擎** | NetworkX + SciPy | 家族突变图计算 | | 🎨 **前端** | Next.js 14 + TypeScript + Tailwind CSS | 完整应用程序 UI | | 🕸️ **图可视化** | Cytoscape.js | 交互式威胁突变网络 | | 📈 **图表** | Recharts | 雷达图、散点图、时间线、条形图 | | 🌍 **地图** | react-simple-maps | 地理威胁分布 | | 🎬 **动画** | Framer Motion | 滚动动画、过渡 | | 🐳 **基础设施** | Docker Compose | Qdrant + 后端容器化 | ## 💡 为什么选择 EchoTrace 而不是其他所有选项 | 功能 | EchoTrace | 关键词过滤器 | 机器学习分类器 | LLM 包装器 | |---|---|---|---|---| | 检测改写 | ✅ | ❌ | ⚠️ 部分支持 | ⚠️ 部分支持 | | 零日检测 | ✅ | ❌ | ❌ | ❌ | | 追踪演变 | ✅ | ❌ | ❌ | ❌ | | 8 维心理档案 | ✅ | ❌ | ❌ | ❌ | | 跨家族 DNA 匹配 | ✅ | ❌ | ❌ | ❌ | | 地理位置有效负载过滤 | ✅ | ❌ | ❌ | ❌ | | 多模态输入 | ✅ | ❌ | ⚠️ | ✅ | | 可解释的结果 | ✅ | ✅ | ❌ | ⚠️ | | 每次突变需要重新训练 | ❌ | ❌ | ✅ | ✅ | | 确定性结果 | ✅ | ✅ | ❌ | ❌ | | **单个数据库(Qdrant)** | **✅** | — | — | — | ## 🟣 Qdrant 功能展示 EchoTrace 故意使用 Qdrant 的每个主要功能: ``` Qdrant Feature How EchoTrace Uses It ──────────────────────────────────────────────────────────────── HNSW Index O(log n) ANN search across 84+ vectors INT8 Quantization 75% memory reduction, <1% accuracy loss Cosine Distance Semantic similarity = vector angle metric Payload Filtering Country/family/year geographic analysis Payload Indexing country, scam_family, year all indexed Named Vectors 384-dim float32 semantic vectors Multi-Collection scam_messages + scam_families together upsert() Store new community reports instantly search() Core detection in ~2ms scroll() Iterate proto-family clusters get_collection() Health check + stats dashboard ``` ## 🗺️ 路线图 - [ ] 实时摄取管道(Kafka/WebSocket 流) - [ ] 活动学习:用户反馈循环回 Qdrant - [ ] 跨语言检测(印地语、泰米尔语、孟加拉语、乌尔都语) - [ ] 从网络犯罪报告门户自动摄取 OSINT - [ ] 时间突变预测:预测下一个欺诈变体 - [ ] Qdrant 云部署,具有多节点复制 - [ ] 为银行和电信提供商提供威胁情报 API - [ ] 移动 SDK 用于实时 SMS 扫描 ## 📄 项目结构 ``` EchoTrace/ ├── backend/ │ ├── main.py ← FastAPI app + Qdrant lifespan init │ ├── config.py ← Pydantic settings (env vars) │ ├── models/schemas.py ← All Pydantic v2 request/response models │ ├── routers/ ← FastAPI route handlers (8 routers) │ ├── services/ │ │ ├── qdrant_service.py ← ALL vector DB operations (core) │ │ ├── embedding_service.py ← SentenceTransformers singleton │ │ ├── analysis_service.py ← Full pipeline orchestrator │ │ ├── genome_service.py ← 8-dimension psychological profiling │ │ ├── velocity_service.py ← Semantic drift rate computation │ │ ├── graph_service.py ← Mutation graph (NetworkX) │ │ ├── ocr_service.py ← EasyOCR wrapper │ │ └── audio_service.py ← Whisper STT wrapper │ └── data/seed_data.py ← 84-entry scam corpus │ └── frontend/ └── src/ ├── app/ │ ├── page.tsx ← Landing page (Framer Motion) │ ├── dashboard/ ← Main app dashboard │ ├── analyze/ ← Multimodal input │ ├── results/ ← Full intelligence report │ ├── families/ ← Fraud family explorer │ ├── feed/ ← Community feed + threat map │ ├── radar/ ← Zero-Day Radar │ ├── vectorspace/ ← HNSW vector explorer │ └── threatmap/ ← Geographic intelligence └── components/ ├── SemanticThreatMap.tsx ← UMAP scatter (Recharts) ├── GenomeRadar.tsx ← 8-dim radar chart ├── ZeroDayAlert.tsx ← Novelty score card ├── EvolutionTimeline.tsx ← Year-by-year chart ├── ThreatGraph.tsx ← Cytoscape network └── ThreatBriefTemplate.tsx← PDF export layout ```
**使用 🟣 Qdrant · 🐍 FastAPI · ⚡ Next.js 14 构建**
*EchoTrace 证明 Qdrant 不仅仅是一个搜索引擎 —
它是一个完整的智能平台.*
[](https://qdrant.tech)
[](https://github.com/sunkireddy-Barath/EchoTrace)
标签:AI反欺诈, AI模型, Apex, API文档, BSD, DNS解析, DNS通配符暴力破解, DoH影响, Qdrant, YouTube, 向量数据库, 图像识别, 多模态搜索, 威胁情报, 安全防护, 开发者工具, 开源项目, 技术社区, 数据挖掘, 文本分析, 机器学习, 深度学习, 社区评分, 网络安全, 自动化攻击, 视频演示, 诈骗检测, 语义智能, 语音识别, 请求拦截, 逆向工具, 隐私保护