PragyanPandey3006/PravanixOS

GitHub: PragyanPandey3006/PravanixOS

一款 AI 驱动的网络犯罪调查与数字取证情报平台,为执法部门提供从报案分诊、证据分析到法庭报告的全链路调查工作流。

Stars: 0 | Forks: 0

# ✳ PRAVANIX ### AI 驱动的网络犯罪调查与数字取证情报平台 **一个专为网络犯罪部门、网络警察局和数字取证单元打造的完整、生产级调查操作系统。** 由 **[Pragyan Pandey](https://github.com/pragyanpandey3006)** 构建并拥有 [github.com/pragyanpandey3006](https://github.com/pragyanpandey3006) · [linkedin.com/in/pragyanx](https://linkedin.com/in/pragyanx) `FastAPI` · `MongoDB` · `Redis` · `Celery` · `MinIO/S3` · `React + Vite` · `Clerk Auth` · `Claude AI`
## 什么是 PRAVANIX? PRAVANIX 将碎片化的网络犯罪调查工作流程转化为一个单一的智能平台。调查人员录入报案信息后,系统会自动对其进行分类、立案、导入数字证据、验证完整性、运行 OCR、提取所有指标(电话、电子邮件、UPI ID、钱包、IP、域名、银行账户等)、根据威胁情报对每个指标进行评分、在知识图谱中建立关联、构建时间线,并生成一份适用于法庭的 PDF 报告——所有这一切都是实时进行的。 **一切都是真实的。没有演示成分。** 在未配置 API 密钥的情况下,平台可以使用本地 NLP、确定性的实体提取和启发式威胁评分完全正常运行。添加 Anthropic 密钥会将 AI 升级为 Claude;添加 VirusTotal/AbuseIPDB 密钥则可丰富威胁情报。 ## 核心功能亮点 - **🖥️ 黑客 / 终端 / 霓虹风格 GUI** — 深色、发光、等宽字体的指挥中心美学,在**手机、平板电脑和笔记本电脑**上均能完美响应。 - **🔐 双重身份验证** — Clerk(Google / 社交 / 托管)**以及**内置的邮箱密码验证,包含 Argon2 哈希、JWT 会话、refresh token、账户锁定与速率限制。 - **🧠 AI 分诊与助手** — 报案分类、案件摘要、报告叙述以及调查员副驾驶(由 Claude 驱动,并具备平滑的本地回退机制)。 - **📎 证据流水线** — SHA-256/512 哈希、恶意软件筛查、EXIF/PDF/DOCX/电子邮件元数据、OCR、实体提取、威胁评分、图谱同步、时间线——全部通过 WebSockets 实时流式传输。 - **🕸️ 关联分析** — 交互式力导向知识图谱;自动发现共享指标的关联案件。 - **⚠️ 威胁情报** — 本地 IOC 数据库 + 启发式算法 + 可选的外部情报源。 - **📄 报告** — 带有品牌标识、可用于法庭出示的 PDF 报告,包含证据登记册、指标、威胁与时间线。 - **👮 RBAC** — admin / supervisor / investigator / analyst / auditor,在每个 endpoint 强制执行。 - **🧾 每一项操作均具备监管链与不可篡改的审计日志**。 ## 系统架构 ``` ┌──────────────────────────┐ Browser (React) ──► │ nginx / Vite (frontend) │ └────────────┬─────────────┘ /api │ /ws ┌────────────▼─────────────┐ │ FastAPI (backend API) │◄── JWT / Clerk / RBAC └──┬─────────┬────────┬────┘ MongoDB ◄────┘ │ └────► MinIO / S3 (evidence blobs) (all data) │ Redis (cache · pub/sub · Celery broker) │ ┌────────────▼─────────────┐ │ Celery worker (pipeline)│ OCR · NER · threat · graph └──────────────────────────┘ ``` ## 快速开始 — 一条命令 (Docker) 需要 Docker + Docker Compose。 ``` git clone https://github.com/pragyanpandey3006/pravanix.git cd pravanix cp .env.example .env # (optional) edit secrets / API keys python3 -c "import secrets;print('JWT_SECRET='+secrets.token_urlsafe(64))" >> .env docker compose up -d --build # builds & starts the entire stack ``` 然后打开: | 服务 | URL | 备注 | |---|---|---| | **PRAVANIX App** | http://localhost:8080 | 图形界面 | | API 文档 | http://localhost:8000/api/docs | OpenAPI / Swagger | | MinIO 控制台 | http://localhost:9001 | 证据存储 | **默认所有者登录** (由 `seed` 服务创建): ``` Email: admin@pravanix.io Password: Pravanix@2026 ``` ## 本地开发 (不使用 Docker) **1. 基础设施** (通过 Docker 运行 Mongo, Redis, MinIO): ``` docker compose up -d mongodb redis minio ``` **2. 后端:** ``` cd backend python3 -m venv .venv && source .venv/bin/activate pip install -r requirements.txt cp ../.env.example ../.env # then set JWT_SECRET python -m app.seed # bootstrap owner admin + threat feed uvicorn app.main:app --reload # → http://localhost:8000 ``` 可选:运行异步 worker (否则 `PROCESSING_MODE=inline` 会在进程内处理): ``` celery -A app.worker.celery_app worker --loglevel=info ``` **3. 前端:** ``` cd frontend npm install cp .env.example .env # (optional) add Clerk keys npm run dev # → http://localhost:5173 ``` Vite 开发服务器会将 `/api` 代理到 `http://localhost:8000`。 ## 配置说明 所有配置均通过环境变量 (`.env`) 进行。核心变量如下: | 变量 | 用途 | 默认值 | |---|---|---| | `JWT_SECRET` | Token 签名密钥 — **请务必设置此项** | 开发占位符 | | `MONGODB_URI` | Mongo 连接 (本地或 **Atlas** `mongodb+srv://…`) | `mongodb://localhost:27017` | | `PROCESSING_MODE` | `inline` (单机) 或 `celery` (可扩展) | `inline` | | `AUTH_MODE` | `local` 或 `clerk` | `local` | | `ANTHROPIC_API_KEY` | 启用 Claude AI (否则使用本地 NLP) | 空 | | `VIRUSTOTAL_API_KEY` / `ABUSEIPDB_API_KEY` | 外部威胁情报扩充 | 空 | ### MongoDB Atlas 在 `.env` 中设置 `MONGODB_URI=mongodb+srv://:@/?retryWrites=true&w=majority`。无需修改代码。 ### Clerk (Google / 社交 / 托管登录) 1. 在 [dashboard.clerk.com](https://dashboard.clerk.com) 创建一个应用 → 启用您的登录方式。 2. 将 **API Keys** 复制到 `.env` 中:`VITE_CLERK_PUBLISHABLE_KEY` (前端) 和 `CLERK_SECRET_KEY` (后端)。设置 `AUTH_MODE=clerk`。"Continue with Clerk" 按钮会自动出现。 3. 后端会从可发布密钥中推导出 Clerk 的 JWKS + issuer 并验证会话 token — 无需额外配置。 如果没有 Clerk 密钥,内置的邮箱/密码身份验证即可开箱即用。 ## 项目结构 ``` pravanix/ ├── backend/ # FastAPI + Celery │ ├── app/ │ │ ├── core/ # config, db, security, storage, redis, rbac, queue, owner │ │ ├── services/ # forensics, entity extraction, threat intel, graph, │ │ │ # timeline, ai, reports, pipeline, notifications, audit │ │ ├── api/ # auth, complaints, cases, evidence, graph, timeline, │ │ │ # threat, reports, ai, users, dashboard, misc, ws, meta │ │ ├── schemas.py main.py worker.py tasks.py seed.py │ └── Dockerfile ├── frontend/ # React + Vite + TypeScript (neon terminal UI) │ ├── src/{lib,components,pages}/ │ └── Dockerfile nginx.conf ├── docs/ # full product & architecture specification └── docker-compose.yml # one-command full stack ``` ## 安全性 - Argon2id 密码哈希 · JWT 访问 token (15 分钟) + 轮换刷新 refresh token。 - 在每个 endpoint 进行 RBAC 权限检查;身份验证的速率限制。 - SHA-256/512 证据哈希、重复检测、恶意软件筛查、监管链。 - 每次状态更改均记录不可篡改的审计追踪。证据二进制文件与元数据分开存储。
**PRAVANIX** — 由 **Pragyan Pandey** 设计与开发 [github.com/pragyanpandey3006](https://github.com/pragyanpandey3006) · [linkedin.com/in/pragyanx](https://linkedin.com/in/pragyanx) © 2026 Pragyan Pandey. 保留所有权利。
标签:AV绕过, FastAPI, React, Syscalls, 威胁情报, 开发者工具, 搜索引擎查询, 数字取证, 案件管理系统, 网络安全, 自动化脚本, 请求拦截, 逆向工具, 隐私保护