PeteAndrews1289/honeypot-siem-project

GitHub: PeteAndrews1289/honeypot-siem-project

基于Cowrie和Conpot蜜罐的Splunk SIEM实战案例研究,提供从遥测采集、分析到脱敏证据发布的完整可复现工作流。

Stars: 0 | Forks: 0

# 蜜罐 SIEM 案例研究 [![验证证据](https://static.pigsec.cn/wp-content/uploads/repos/cas/e1/e10e2e72d80fff142b72652874ea0b47b2c5d944281f52f8a230ef71b50b8f2a.svg)](https://github.com/PeteAndrews1289/honeypot-siem-project/actions/workflows/validate-evidence.yml) 本项目在隔离的 DigitalOcean VPS 上部署了 Cowrie 和 Conpot,将产生的 SSH、Telnet 和 ICS/SCADA 遥测数据接入 Splunk,并将导出数据转化为一个保护隐私且可测试的证据包。 ![脱敏蜜罐证据概览](https://raw.githubusercontent.com/PeteAndrews1289/honeypot-siem-project/main/docs/images/honeypot-evidence-overview.svg) ## 结果一览 | 结果 | 验证值 | 定义 | |---|---:|---| | 归因到来源的事件记录 | **952,393** | 汇总源导出中 `total_events` 的总和;未提取来源的事件不在此分母之内 | | 观察到的不同来源值 | **4,624** | 4,623 个全球可路由地址,外加一个包含两次事件的环回伪影 | | 仅 Cowrie / 仅 Conpot / 两者皆有 | **4,358 / 212 / 54** 个来源 | “两者皆有”指相同的观察来源地址同时出现在两个服务数据集中;这并不能证明攻击者身份或活动关联 | | 成功的 Cowrie 认证事件 | **613** | 包含 `cowrie.login.success` 的记录 | | Cowrie 命令输入事件 | **457** | `cowrie.command.input`;其中 433 次包含非空的模拟命令 | | ICS 协议交互记录 | **721** | 507 条 S7,157 条 Modbus,28 条 COTP,12 条 SNMP 以及 17 条其他记录 | [脱敏证据包](artifacts/evidence/README.md) 包括了伪匿名化的源级数据、核对后的汇总表、源文件哈希值、可用时的 UTC 时间窗口、生成代码、测试以及自动化的隐私检查。 ## 架构与证据流 ``` flowchart LR Internet[Unsolicited internet traffic] --> Edge[Firewall and port redirection] subgraph Lab[Decommissioned DigitalOcean VPS] Edge --> Cowrie[Cowrie SSH and Telnet] Edge --> Conpot[Conpot ICS protocols] Cowrie --> Logs[Local telemetry] Conpot --> Logs Logs --> Splunk[Splunk Enterprise] end Splunk --> Exports[Six CSV exports] Exports --> Builder[Privacy-preserving evidence builder] Builder --> Public[Sanitized public artifacts] Public --> CI[Reconciliation and redaction checks] ``` 该实验室刻意将高并发量的面向凭证的蜜罐与较低并发量的工业协议模拟结合在一起。Splunk 提供了搜索、字段提取、时间分析和仪表盘功能。随后,公开证据构建器在生成本仓库中的工件之前,移除了源 IP、凭证、原始命令、payload 标识符、会话标识符和主机路径。 ## 发现 ### 活动高度集中 中位数来源产生了 18 条事件记录,而最大的来源产生了所有归因到来源记录的 17.3%。前十名来源产生了 52.9%。这种倾斜说明,为什么仅凭原始事件总数无法有效衡量不同的活动。 ### Cowrie 产生了大部分归因到来源的数量 - 4,358 个来源值仅出现在 Cowrie 数据中,共计 949,972 个事件。 - 212 个来源值仅出现在 Conpot 数据中,共计 1,104 个事件。 - 54 个来源值同时出现在两个服务数据集中,共计 1,317 个合并事件。 这种重叠是一种可观察到的源地址关系,并不能证明是由同一个攻击者或活动控制的行为。 ### 成功登录产生了认证后行为 高信号导出包含 613 次成功的 Cowrie 认证事件和 457 次命令输入记录。在这些命令记录中,有 433 次是非空的。主机和网络发现主导了已分类的活动。有 12 次记录包含了 payload 传输工具;这些都是在 Cowrie 模拟环境中观察到的检索尝试,并不能证明成功执行了恶意软件或主机被入侵。 ### Conpot 记录了多个协议族 ICS 导出包含 721 条交互记录:507 条 S7,157 条 Modbus,28 条 COTP,12 条 SNMP 以及 17 条其他记录。这些记录展示了特定于协议的扫描和交互。它们不能证明攻击者的意图、身份或成功的漏洞利用。 有关证据到结论的映射,请参阅 [findings-summary.md](artifacts/findings-summary.md);有关用于得出分析结果的 SPL,请参阅 [sample-queries.md](artifacts/sample-queries.md)。 ## 数据范围与局限性 六个来源的导出来自不同的 Splunk 搜索和时间窗口: - 源摘要支持汇总源和事件总数,但不包含时间字段。 - 高信号导出的时间跨度为 2026-04-02 16:05:15.650 UTC 到 2026-04-23 13:10:58 UTC。 - ICS 导出的时间跨度为 2026-04-02 16:05:15.650 UTC 到 2026-04-22 23:26:36.931 UTC。 - 原名为 `master_dataset.csv` 的文件是一个上限为 10,000 行的近期事件样本,仅涵盖 2026-04-23 03:29:50 UTC 到 14:11:21.649 UTC。不能将其视为完整的语料库。 其他局限性: - 源 IP 不等同于某个人、组织或活动。 - IP 地理位置是近似的;由于保留的导出数据不包含国家级别的汇总,因此未包含任何关于国家的结论。 - 该项目在同一公共 VPS 上运行 Splunk,这简化了实验室环境,但并非推荐的生产架构。 - 保留的文档并未完全证明出站过滤或管理平面分离。未来的设计应隔离收集、分析和管理。 ## 可复现的公开证据 原始导出数据保持私有。要在本地重建公开证据: ``` python3 scripts/build_evidence.py \ --input-dir /path/to/private/exports \ --output-dir artifacts/evidence python3 scripts/validate_public_evidence.py artifacts/evidence python3 -m unittest discover -s tests -v ``` 验证工作流会检查: - 4,624 个伪匿名来源行核对后对应 952,393 个归因到来源的事件。 - 所有 54 个跨目标行都是源摘要的一致子集。 - 命令、ICS 和高信号类别总计与其导出结果核对一致。 - 公开的 CSV/JSON 工件不包含原始 IP、URL、UUID、主机路径或敏感列名。 ## 仓库结构 - [`artifacts/evidence/`](artifacts/evidence/) — 脱敏数据、清单、哈希值和指标定义。 - [`scripts/`](scripts/) — 无依赖的证据生成和验证工具。 - [`tests/`](tests/) — 用于测试聚合和脱敏行为的合成测试。 - [`artifacts/`](artifacts/) — 发现和查询索引。 - [`dashboards/`](dashboards/) — 仪表盘设计和 Splunk 搜索。 - [`docs/`](docs/) — 分阶段部署和分析回顾。 - [`configs/`](configs/) — 保留的部署和暴露说明。 ## 展示的工具与技能 Cowrie · Conpot · Splunk Enterprise · SPL · Linux · DigitalOcean · Python · 隐私保护数据发布 · 证据验证 · 安全分析 本案例研究与 SOC 分析、检测工程、威胁狩猎和安全工程息息相关,因为它展示了从受控遥测数据收集、SIEM 调查、可靠的发现、脱敏证据发布到自动化验证的完整路径。
标签:ICS_SCADA, PE 加载器, 代码示例, 威胁情报, 安全运营, 开发者工具, 扫描框架, 插件系统, 数据分析, 蜜罐, 证书利用, 逆向工具