YashJagdale2122/leakdb-platform-engine

GitHub: YashJagdale2122/leakdb-platform-engine

LeakDB 是一个分布式网络威胁情报管线引擎,基于 FastAPI、Celery 和 DragonflyDB 构建异步架构,用于安全地摄取、解析和索引大规模非结构化数据泄露。

Stars: 1 | Forks: 0

# LeakDB 平台引擎 [![FastAPI](https://img.shields.io/badge/API-FastAPI-009688?style=flat-square&logo=fastapi&logoColor=white)](https://fastapi.tiangolo.com) [![Dragonfly](https://img.shields.io/badge/Broker-DragonflyDB-E34C26?style=flat-square)](https://dragonflydb.io) [![Celery](https://img.shields.io/badge/Workers-Celery-3771A1?style=flat-square&logo=celery&logoColor=white)](https://docs.celeryq.dev) [![Elasticsearch](https://img.shields.io/badge/Search-Elasticsearch-005571?style=flat-square&logo=elasticsearch&logoColor=white)](https://www.elastic.co) [![Neo4j](https://img.shields.io/badge/Graph-Neo4j-008CC1?style=flat-square&logo=neo4j&logoColor=white)](https://neo4j.com) [![Docker](https://img.shields.io/badge/Containers-Docker%20Compose-2496ED?style=flat-square&logo=docker&logoColor=white)](https://www.docker.com) LeakDB 是一个生产级的分布式网络威胁情报 (CTI) pipeline 架构,旨在带外安全地摄取、解析、分析和索引大规模、非结构化的泄露数据。 该平台可安全地处理数 GB 的高熵原始数据,提取取证指标(文本层、EXIF 元数据),通过结构化光学字符识别 (OCR) 引擎进行级联处理,并在高并发负载下映射行为者关系,同时不会阻塞面向前端的 API。 ## 核心系统架构流程 ``` [ Client Ingestion Request ] │ (HTTPS / Secure Payload) │ ▼ ┌─────────────────────────┐ │ FastAPI Edge Gateway │ ───(Pool Session)───► [ PostgreSQL Ledger ] └─────────────────────────┘ (Pipeline State Audits) │ (Pushes Deferred Task) │ ▼ ┌─────────────────────────┐ │ Dragonfly Memory Grid │ └─────────────────────────┘ │ (RESP Multi-Threaded Queue) │ ▼ ┌─────────────────────────┐ │ Celery Worker Pool │ ◄───(Stream Downloads)───► [ MinIO S3 Object Store ] └─────────────────────────┘ │ │ (Indexes Cleaned Text Layer) (Maps Complex Intelligence Graph) │ │ ▼ ▼ ┌──────────────┐ ┌──────────────┐ │Elasticsearch │ │ Neo4j Graph │ │ (Search/PII) │ │ (Entity Dots)│ └──────────────┘ └──────────────┘ ``` ## 深入架构亮点 ### 异步边缘路由与拓扑隔离 面向前端的 FastAPI 应用网关采用了非阻塞异步架构。在接收到结构化数据泄露触发器后,API 会将繁重的内存处理足迹卸载到队列矩阵中,在 PostgreSQL 中记录事务性基线跟踪,并立即将 HTTP 202 Accepted 握手回调返回给入口节点。 ### 高吞吐量缓存结构 (Dragonfly) LeakDB 用 DragonflyDB 取代了标准的单线程 Redis 拓扑。Dragonfly 实现了现代的、高度并发的、多线程的无共享处理线程设计,利用了 Linux io_uring 机制。这减少了执行延迟指标,使其接近于零,并使用标准的、线缆兼容的 Redis 协议 (RESP) 为大量后台线程提供了巨大的处理余量。 ### 三级高可用性 OCR 回退矩阵 非结构化图形资产(扫描的泄露账本、屏幕截图、目标身份文件)在服务层内部按顺序级联通过容错的 OCR 处理链: * **第 1 级 (Florence-2 Vision API)**:优先考虑深度语义文档映射和空间结构。 * **第 2 级 (Tesseract OCR + OpenCV CLAHE 预处理)**:如果第 1 级超时则触发。在运行母语字符匹配之前,应用自定义的 CLAHE 对比度滤镜、灰度变换和自适应阈值掩码。 * **第 3 级 (EasyOCR 引擎回退)**:高熵神经回退传递,以抢救剩余的 token 目标。 ### 关联情报映射与遥测采集 * **图关系 (Neo4j)**:将扁平的元数据映射转换为多维图。执行参数化的 Cypher 向量,以在不同的泄露中连接威胁行为者、受影响的国家、目标网络和文件。 * **取证 EXIF 采集**:剥离二进制文件足迹(JPEG/PNG 层)以采集跟踪遥测数据(设备签名、GPS 标记、软件指纹),并将其直接记录在主搜索索引中。 * **OOM 预防框架**:使用内存安全的字节流缓冲区(32 KB 分块分配周期)将大型对象流式传输到本地沙盒文件空间中,从而完全防止容器 OOM 崩溃循环。 ## 生产环境仓库文件蓝图 ``` leakdb-platform-engine/ ├── app/ │ ├── __init__.py │ ├── main.py # Gateway setup & middleware router wiring │ ├── api/ │ │ ├── __init__.py │ │ ├── deps.py # Gateway security access decorators │ │ └── v1/ │ │ ├── router.py # Module routing aggregator │ │ └── endpoints/ │ │ ├── ingestion.py # Asynchronous target submission handlers │ │ └── search.py # Multi-match cluster interface queries │ ├── core/ │ │ ├── __init__.py │ │ ├── config.py # Type-validated Pydantic setting system │ │ ├── database.py # High-performance async connection pools │ │ ├── logging.py # Structured JSON log aggregation engine │ │ └── celery_app.py # Task scheduler configurations │ ├── models/ │ │ ├── __init__.py │ │ └── base.py # PostgreSQL declarative system ledger maps │ ├── schemas/ │ │ ├── __init__.py │ │ ├── ingestion.py # Pydantic input/output structural rules │ │ └── search.py # Query definition constraints │ ├── services/ │ │ ├── __init__.py │ │ └── analyzer.py # Independent processing services │ └── workers/ │ ├── __init__.py │ └── tasks.py # Worker execution context loops ├── scripts/ │ └── seed.py # One-click mock environment infrastructure seeder ├── .env.example # Explicitly defined environment skeleton configuration ├── .gitignore # Enforces security containment bounds ├── Dockerfile # Multi-stage optimized distribution base image ├── docker-compose.yml # Local stack orchestration setup blueprint └── requirements.txt # Base package requirement dependencies ``` ## 前置条件与外部依赖项设置 在初始化核心应用容器之前,请确保所需的基础基础设施元素和本地深度学习推理模型已被拉取、配置并处于运行状态。 ### 1. 外部存储与搜索集群 如果您要连接到现有实例而不是本地 stack 定义,请验证目标网络是否已暴露: * **Elasticsearch (v8.x)**:安全配置,并启用索引映射支持。 * **MinIO 对象存储**:实例化一个与平台设置文件匹配的专用入口 bucket。 * **Neo4j 图数据库 (v5.x)**:Bolt 协议在端口 7687 上运行。 ### 2. 大型语言模型服务 (vLLM / Ollama 后端) 分析引擎依赖于可通过 OpenAI 兼容的 completion 路由访问的开放权重基础模型(默认:`granite-3.0-8b`)。 要通过 Ollama 在本地运行此模型,请执行: ``` # 拉取并实例化目标推理上下文模型 ollama pull granite-3.0-8b ollama serve ``` ### 3. 计算机视觉服务 (Florence-2 Docker 部署) 多级 OCR 级联利用微软的 Florence-2 视觉模型,该模型通过专用的 gRPC/REST 服务进行容器化,以解析非结构化视觉工件: ``` # 拉取并执行专用文档分析 vision 容器 docker pull [mcr.microsoft.com/oryx/python:3.11](https://mcr.microsoft.com/oryx/python:3.11) # 确保服务端点与环境配置中的 FLORENCE_API 属性一致 ``` ## 快速入门部署指南 ### 1. 初始化系统工作空间环境 ``` # 克隆基础设施工程工作区 git clone [https://github.com/YOUR_USERNAME/leakdb-platform-engine.git](https://github.com/YOUR_USERNAME/leakdb-platform-engine.git) cd leakdb-platform-engine # 将环境模板骨架文件复制到本地目标追踪边界 cp .env.example .env ``` ### 2. 配置本地系统设置 (.env) 使用您的目标开发凭证更新私有的本地 `.env` 文件。注意:底层系统利用多阶段 docker 编排机制,通过动态环境引用注入 `${VAR}` 安全地读取参数,从而完全防止 secret 泄露。 ### 3. 启动核心基础设施栈 ``` # 构建多阶段执行层并启动堆栈守护进程 (Postgres, Dragonfly, Gateway, Workers) docker compose up --build -d # 验证基础设施容器分配状态健康且在线 docker compose ps ``` ### 4. 初始化存储基础设施并运行验证测试 ``` # 运行自动化数据库与对象存储 seeder 工具,以创建 Elasticsearch 索引和 buckets python -m scripts.seed # 使用 curl 触发示例摄取工作负载,以验证端到端任务路由 curl -X POST "http://localhost:8000/api/v1/ingestion/trigger" \ -H "X-LeakDB-API-Key: vclabs_platform_gateway_fallback_token_string" \ -H "Content-Type: application/json" \ -d '{ "db_name": "intel_breach_test_2026", "actor": ["ThreatGroup-7"], "country": ["Global"], "db_context": "Sample unstructured audit data payload for pipeline verification." }' # 通过结构化 JSON 输出格式化程序监控实时 worker 管道 docker compose logs -f worker ``` ## 安全模型与基础设施规范 * **零 Secret 持久化策略**:代码布局中绝对没有硬编码任何凭证、加密密钥、内部集群 IP 或数据库路由。 * **严格的运行时隔离**:本地设置通过 `pydantic-settings` 进行管理,以在启动时强制执行类型匹配,如果参数不正确则会快速失败。 * **确定性 Docker 分层**:多阶段 Docker 定义将目标依赖项分开,防止构建工具或本地环境噪音泄露到您的生产运行时中。
标签:AI风险缓解, AV绕过, Celery, Elasticsearch, FastAPI, 分布式架构, 威胁情报, 开发者工具, 数据处理管道, 测试用例, 请求拦截, 逆向工具