MrrAmissah/PacketSage

GitHub: MrrAmissah/PacketSage

PacketSage 是一个防御性网络取证沙盒,为安全分析师提供数据包日志导入、流重建、信号标注、时间线梳理和报告生成的一体化被动审查工作空间。

Stars: 0 | Forks: 0

# PacketSage PacketSage 是一个防御性网络取证沙盒,用于审查数据包导出文件、解码后的遥测数据、协议行为、与证据关联的观察结果、AI 辅助的分析师备忘录、事件时间线以及可直接生成报告的调查笔记。 它专为安全分析师、事件响应人员、学生和 SOC 操作员设计,为他们提供一个用于被动审查数据包的结构化工作空间。PacketSage 能够摄取基于文本的数据包日志、Wireshark CSV、Suricata EVE 警报、Zeek 摘要以及演示用的 PCAP 风格元数据,随后重建网络流,高亮显示值得审查的观察结果,并协助起草与证据绑定的报告。 ## 许可证与使用说明 PacketSage 是专有且源代码可见的,并非开源。公开访问此存储库仅用于透明度展示、审查、作品集展示和协作筛选。未经存储库所有者事先书面许可,不得进行复制、再分发、商业使用、托管重用、重新品牌化或制作衍生产品。请参阅 [LICENSE](./LICENSE) 和 [CONTRIBUTING.md](./CONTRIBUTING.md)。 ## 产品预览

PacketSage Import Evidence screen for uploading authorized packet exports, loading a sample incident dataset, or pasting structured logs.

PacketSage Command Center showing decoded packet evidence, protocol stats, signal counts, and investigation brief. PacketSage Report Builder showing report settings, evidence metadata, readiness checks, and export controls.

## 🚀 核心定位与边界 为确保专业的取证完整性,PacketSage 采用严格的**证据优先,AI 辅助**工程模型。它围绕以下边界进行设计: * **防御性分析师工作空间**:PacketSage 专为防御态势审查和教学性取证设计。它**不是**主动恶意软件检测器或违规事件遏制系统。 * **受控的取证工作空间**:原始抓包在浏览器内存中解码;支持的文本导出文件使用解析 endpoint。它**不是**法庭可用的取证证据库。 * **受证据约束的助手**:AI 辅助备忘录生成器严格受限于摄取的数据集。它仅作为起草助手,**不能**替代人工验证、最终判断或主动事件范围界定。 * **受限的本地抓包解码器**:浏览器端 `.pcap`/`.pcapng` 解码涵盖 Ethernet 和实际场景中的 IPv4/IPv6 TCP、UDP、ICMP 及基本 DNS 元数据,但不支持流重组、解密或 payload 重建。 ## 🛠️ 主要功能与模块 1. **指挥中心**:主操作控制台。提供数据包量、协议分布(TCP、UDP、ICMP)、明文暴露风险的高层级摘要,以及快速访问最高严重性信号的入口。 2. **导入证据**:多功能的摄取面板,支持拖拽文件导入或复制粘贴文本缓冲区,适用于结构化日志(CSV、TSV、JSON、原始字符串)。 3. **网络流浏览器**:交互式会话重建网格。搜索并过滤 TCP/UDP 会话,计算字节传输量,以及深入分析数据包序列。 4. **协议情报**:针对关键网络应用的独立调查轨道: * *DNS 日志*:重建查找类型(A、AAAA、TXT、MX)和查询的域名。 * *HTTP 流量*:检查未加密的 HTTP 请求、请求 URI、User-Agents 和凭证暴露情况。 * *TLS 元数据*:提取服务器名称指示(SNI)和证书版本,无需解密即可比较加密会话行为。 5. **信号与观察**:一个确定性规则引擎,用于浮现潜在的威胁标记(例如,扫描模式、未加密传输、信标)。分析师可以手动 *验证* 或 *驳回* 这些发现。 6. **AI 分析师备忘录**:使用服务器端 Gemini API 代理,从解析后的遥测数据中综合生成执行摘要叙述,包含高管层级的类比和防御建议。 7. **事件时间线**:基于数据包时间戳,以清晰的时间顺序排列的重建网络事件时间线,具备严重性过滤器和详情模态框。 8. **报告生成器**:一个带有“报告就绪评分”的文档编译器,可跟踪调查的完整度,并编译适合打印的 PDF/纸质报告。 9. **Packet Academy(数据包学院)**:一个教学培训套件,包含基于模拟捕获配置文件的引导式多选挑战,用于评估防御推理技能。 10. **架构规范**:当前浏览器端沙盒与计划中的生产级微服务架构的透明路线图对比。 ## 📦 标准数据模型 * **UploadedEvidence**:跟踪导入的日志/数据包捆包的属性(名称、大小、parseMode、上传时间戳)。 * **FlowSummary**:重建源端点和目标端点之间的 TCP/UDP 会话,详细记录时间戳、流量和计算出的风险指标。 * **DnsRecord / HttpRecord / TlsRecord**:标准化的特定协议结构,包含查询的域名、请求的路径、响应代码和证书 SNI。 * **SuspiciousSignal**:即时计算的确定性指标(例如,明文凭证、异常的入站端口、数据传输峰值、扫描模式)。 * **AiAnalysisResult**:Gemini 生成的、结构化且符合 schema 的摘要。 ## 🔒 安全与隐私模型 * **仅限授权使用**:用户在导入自定义日志前必须确认已获授权。内置了一个预先打包的模拟数据集,用于零凭证培训。 * **处理边界**:原始 PCAP/PCAPNG 抓包在本地解码。支持的文本证据将发送至解析 endpoint;选定的元数据稍后可能会通过 AI 代理发送。 * **服务器端 AI 代理与脱敏**:为了起草 AI 备忘录,选定的解码后元数据、数据包量指标、端口分布和触发的规则将被提交到服务器端的 Gemini API 代理。 * *不会向代理传输任何原始数据包 payload*。 * 凭证、JWT token 和敏感的 header 在传输之前,会使用正则表达式在客户端本地进行脱敏处理。 * **被动取证**:PacketSage 是完全被动的。它不执行主动的网络端口扫描、主机 ping 或活动接口嗅探。 ## 💻 本地运行 ### 1. 安装依赖项 ``` npm install ``` ### 2. 配置环境变量 在项目根目录下基于 `.env.example` 创建一个 `.env` 文件: ``` GEMINI_API_KEY="your-gemini-api-key" APP_URL="http://localhost:3000" ``` *(注意:请勿在 `GEMINI_API_KEY` 前添加 `VITE_` 前缀,以确保其不会在浏览器中暴露)。* ### 3. 运行开发服务器 ``` npm run dev ``` ### 4. 访问工作空间 打开浏览器并导航至 `http://localhost:3000`。 ## 🗺️ 生产路线图 * **阶段 1:取证沙盒工作站(当前)**: - 临时性的浏览器端工作空间、基于文本的解析器适配器和确定性规则引擎。 - 用于分析备忘录的服务器端 Gemini 代理集成。 - 具备整洁打印布局的报告生成器。 - 内置的 Packet Academy。 * **阶段 2:基于微服务的二进制解析器(计划中)**: - 使用 `libpcap`、`tshark`、`zeek` 和 `suricata` 的容器化解析。 - 带有短期签名 URL 的安全云存储桶。 * **阶段 3:工作空间授权与案例管理(计划中)**: - 多租户 Firebase 身份验证和 Firestore 持久化案例存储。
标签:AI辅助分析, Metaprompt, MITM代理, 安全事件响应, 安全运营中心, 数据分析与可视化, 数据可视化, 网络映射, 网络流量取证, 自动化攻击