threatchain/threatchain-siem

GitHub: threatchain/threatchain-siem

一款基于 Arbitrum 区块链的去中心化企业级 SIEM,利用防篡改日志锚定技术解决传统日志管理中的数据删除问题,并集成 AI 分析与合规审计功能。

Stars: 0 | Forks: 0

# ThreatChain SIEM **企业级 Web3 SIEM。** 基于 Arbitrum 的去中心化安全监控,配备 AI 驱动分析和防篡改日志锚定。 [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![Arbitrum](https://img.shields.io/badge/chain-Arbitrum-blue.svg)](https://arbitrum.io) ### 企业功能 | 功能 | 描述 | |---------|-------------| | **AI 安全分析师** | Claude、OpenAI、Ollama 或任何兼容 OpenAI 的 LLM。警报分流、威胁搜寻、事件分析 | | **持久化存储** | 支持 WAL 模式的 SQLite,全文搜索,重启后数据不丢失 | | **多租户** | 按租户隔离团队、代理和数据 | | **mTLS 注册** | 一键安装,基于 EC P-256 证书的身份验证 | | **系统清单** | 操作系统、软件包、网络、硬件、用户 — 每小时采集 | | **下钻仪表板** | 点击任意 IP、哈希、主机名、MITRE ID、CVE 即可查看详细信息 | | **SSO/LDAP** | SAML 2.0 和 LDAP 身份验证 | | **集成** | Slack、PagerDuty、Jira、Email、Webhook、Syslog 转发 | | **日志转发** | 将 CEF、LEEF、JSON 转发至其他 SIEM(Splunk、Elastic、QRadar) | | **加密存储** | 静态数据采用 AES-256-GCM 字段级加密 | | **52 条检测规则** | 兼容 Sigma 的 YAML 规则,支持自定义规则 | | **RBAC** | 5 种角色,47 项权限,API + 仪表板强制执行 | | **区块链锚定** | 每 5 分钟在 Arbitrum 上生成 Merkle 根 — 防篡改证明 | | **质押使用代币经济** | 免费版(50 次锚定/天),专业版(1K $THREAT),企业版(10K $THREAT) | ## 为什么选择 Web3 SIEM? 传统 SIEM 存在一个致命缺陷:**日志可以被删除。** 被入侵的管理员、国家级攻击者或恶意内部人员可以清除入侵的所有痕迹。没有密码学证据证明日志曾经存在过。 ThreatChain SIEM 通过将日志哈希锚定在链上来解决这一问题。一旦锚定,任何人都无法否认事件的发生,甚至包括你自己。 | 传统 SIEM | ThreatChain SIEM | |-----------------|------------------| | 日志存储在单台服务器上 | 日志哈希锚定在 Arbitrum 上 | | 管理员可以删除日志 | 不可变 — 没人能抹除历史 | | 威胁情报孤岛 | 来自 400 万+ 指标的共享 IOC 源 | | 合规性是“相信我” | 合规性是“链上验证” | | 缺乏共享 IOC 的激励 | 经验证的报告可获得 $THREAT 奖励 | ## 架构 ``` ┌─────────────────┐ │ ENDPOINTS │ │ Agent per host │ └────────┬────────┘ │ encrypted syslog / file events ┌────────▼────────┐ │ SERVER │ │ Rule engine │ │ ML anomaly det │ │ Alert pipeline │ │ REST API │ └───┬─────────┬───┘ │ │ ┌─────────▼──┐ ┌──▼──────────┐ │ DASHBOARD │ │ BLOCKCHAIN │ │ React UI │ │ Arbitrum │ │ Alerts │ │ Merkle root │ │ Compliance │ │ every 5 min │ │ Reports │ │ IOC registry│ └─────────────┘ │ $THREAT │ └──────────────┘ ``` ### Agent 运行在每个受监控端点上的轻量级 Python 代理: - **Syslog 采集器** — 读取 /var/log/*、journalctl、Windows Event Log - **文件完整性监控 (FIM)** — 关键文件的 SHA256 哈希,变更时告警 - **进程监控** — 检测可疑进程生成、权限提升 - **网络监控** — 连接跟踪、DNS 查询日志 - **加密传输** — 通过 TLS + HMAC 传输至服务器,线路上无明文日志 ### Server 中央处理引擎: - **规则引擎** — 基于 YAML 的检测规则(兼容 Sigma) - **关联引擎** — 跨主机的多事件模式匹配 - **ML 异常检测** — 基线学习、偏差告警 - **告警管道** — 严重性分类、去重、通过 ThreatChain API 丰富 - **区块链锚定** — 每 5 分钟生成日志哈希的 Merkle 根 → Arbitrum ### Blockchain Layer - **日志锚定** — 所有日志哈希的 Merkle 树,根每 N 分钟存储在链上 - **IOC 注册** — 链上威胁指标提交,奖励 $THREAT - **合规证明** — 审计员根据链上根验证“事件 X 是否在时间 T 发生?” - **告警证明** — 生成并确认告警的密码学证明 ### Smart Contract Arbitrum 上的 `LogAnchor.sol`: - `anchorRoot(bytes32 merkleRoot, uint256 fromTimestamp, uint256 toTimestamp, uint256 eventCount)` - `verifyLog(bytes32 logHash, bytes32[] proof, uint256 anchorIndex)` → bool - `submitIOC(bytes32 iocHash, uint8 iocType, uint8 severity)` → 赚取 $THREAT - 不可变,无管理员密钥,无升级代理 — 锚定数据永久保存 ## 快速开始 ### 1. 安装 SIEM 服务器(一条命令) ``` curl -sSL https://threatchain.io/install | sudo bash ``` 这将: - 安装所有依赖项(Python 3.10+、venv、软件包) - 生成私有证书颁发机构 (CA) - 创建 TLS 服务器证书 (EC P-256) - 生成管理员凭据和注册令牌 - 在端口 8403 上启动 HTTPS SIEM 服务器 - 启用开机自启 安装完成后,你将看到: ``` Dashboard: https://YOUR_IP:8403 Admin Password: xxxxxxxxxxxxxxxx Enrollment Token: tctk_xxxxxxxxxxxxxxxxxxxxxxxxxxxx Save these credentials. They will not be shown again. ``` ### 2. 安装 Agent(每台服务器一条命令) 在每台要监控的服务器上,运行: ``` curl -sSL https://threatchain.io/install-agent | sudo bash -s -- \ --server https://YOUR_SIEM_IP:8403 \ --token tctk_YOUR_ENROLLMENT_TOKEN ``` 这将: - 从你的 SIEM 服务器下载 CA 证书 - 在 Agent 上生成唯一的 EC P-256 密钥对 - 使用一次性令牌向服务器注册(令牌使用后即失效) - 从 CA 接收签名的客户端证书 - 配置日志采集、FIM 和进程监控 - 作为系统服务启动 Agent 所有通信均使用 **双向 TLS (mTLS)** — 服务器和 Agent 均出示由同一 CA 签名的证书。 ### 3. 创建更多注册令牌 每个令牌均为一次性使用。从服务器生成更多令牌: ``` tcsiem-admin create-token --name "database-server-01" ``` 或通过 API: ``` curl -sk -X POST https://YOUR_SIEM_IP:8403/api/v1/agents/tokens \ -H "Authorization: Bearer YOUR_ADMIN_TOKEN" \ -H "Content-Type: application/json" \ -d '{"agent_name": "database-server-01"}' ``` ## 支持的平台 | 平台 | Server | Agent | |----------|--------|-------| | Ubuntu 22.04+ | Yes | Yes | | Debian 12+ | Yes | Yes | | RHEL / CentOS 9+ | Yes | Yes | | Fedora 38+ | Yes | Yes | | macOS 13+ | Yes | Yes | | Windows Server 2019+ | - | 即将推出 | ## 安全模型 ``` Agent (monitored server) SIEM Server (your infrastructure) +-----------------------+ +----------------------------+ | agent.key (private) |---- mTLS ---->| server.key (private) | | agent.crt (CA-signed) | | server.crt (CA-signed) | | ca.crt (trust anchor) | | ca.key (signs all certs) | +-----------------------+ +----------------------------+ ``` - **私有 CA** — 在服务器安装时生成,永不离开服务器 - **mTLS** — 双方均出示证书,由同一 CA 验证 - **一次性注册令牌** — 每个 Agent 注册一次,令牌随即消耗 - **Agent 密钥本地生成** — 私钥永不离开 Agent 主机 - **证书轮换** — Agent 在过期前自动轮换证书 - **EC P-256** — 椭圆曲线密钥(256 位安全性,比 RSA 更快) ## Agent 监控内容 | 来源 | 详情 | |--------|---------| | **Syslog** | /var/log/syslog、/var/log/auth.log、journalctl | | **Web 服务器** | nginx/Apache 访问和错误日志 | | **防火墙** | ufw、iptables、fail2ban 日志 | | **文件完整性** | 关键文件的 SHA-256 哈希,变更时告警 | | **进程** | 检测新的 root 进程、权限提升 | | **自定义日志** | 你添加到配置中的任何日志文件 | ## 卸载 ``` # 移除 agent sudo bash /opt/tcsiem/install/uninstall-agent.sh # 移除 server sudo bash /opt/tcsiem/install/uninstall-server.sh ``` ## 检测规则(兼容 Sigma) ``` title: Brute Force SSH Login id: tc-001 severity: high type: threshold threshold: count: 5 window: 300 # 5 minutes match: source: syslog message: "Failed password" field.service: sshd action: alert: true enrich: true # auto-enrich source IP via ThreatChain API anchor: true # include in next Merkle root ``` ## 链上验证 任何审计员、监管机构或事件响应人员都可以独立验证日志在特定时间是否存在: ``` from threatchain_siem.anchoring import verify_log # 证明此 SSH 暴力破解警报存在于 2026-03-15 14:22:00 result = verify_log( log_hash="0x7f3a...", anchor_index=1842, rpc_url="https://arb1.arbitrum.io/rpc" ) print(result) # { # "verified": true, # "anchor_tx": "0xdef...", # "block_number": 182847123, # "timestamp": "2026-03-15T14:25:00Z", # "merkle_proof": ["0x...", "0x...", "0x..."] # } ``` ## 代币经济学 ($THREAT) — 质押使用 无按日志计费。无销毁税。一次质押,永久使用。随时取消质押。 | 等级 | 质押 | 锚定/天 | 功能 | |------|-------|-------------|----------| | **免费版** | 无 | 50 | 基础锚定,1 个 Agent,验证 | | **专业版** | 1,000 $THREAT | 无限制 | 无限 Agent,AI 分析,IOC 提交 | | **企业版** | 25,000 $THREAT | 无限制 | 所有专业版功能 + 合规报告,优先 API,SOAR | **真实收益:** 协议收入(API 费用、高级订阅)按比例分配给质押者。无通胀奖励 — 仅限真实收入。 **为何有效:** - 价格上涨 → 你的质押价值更高 → 你获得奖励而非惩罚 - 想要退出 → 90 天后取消质押(100% 返还)。提前退出:线性惩罚覆盖服务成本(第 1 天=99%,第 45 天=50%,第 90 天=0%) - 验证始终免费 — 任何人都不应付费证明日志是真实的 - 更多采用 → 更多质押 → 更多需求 → 价格更高 → 质押者受益 ## 合规标准 ThreatChain SIEM 生成具有链上验证功能的审计就绪报告,适用于: - **PCI-DSS** — 要求 10(日志记录和监控) - **SOX** — 第 404 节(内部控制) - **HIPAA** — 安全规则(审计控制) - **SOC 2** — CC7.2(监控) - **GDPR** — 第 30 条(处理记录) 每份报告均包含审计员可独立验证的链上交易哈希。 ## 负责任的使用 本软件**仅限授权安全监控使用**。在任何系统上部署 Agent 之前,请确保你拥有适当的授权。遵守所有适用的隐私法律和法规。 ## 许可证 MIT 许可证。参见 [LICENSE](LICENSE)。 由 [ThreatChain](https://threatchain.io) 构建 | 由 Arbitrum 上的 $THREAT 提供支持
标签:AES-256-GCM, AI安全, Arbitrum, CEF, Chat Copilot, Claude, Cloudflare, CVE, CVE检测, Jira, LDAP, LEEF, LLM, LLM评估, Merkle树, MITRE ATT&CK, mTLS, OISF, Ollama, OpenAI, PagerDuty, Python, QRadar, RBAC, SAML, Sigma规则, Slack, SQLite, SSO, Syslog, Unmanaged PE, Web3, x64dbg, 代币经济, 企业级安全, 全文检索, 内存规避, 加密存储, 区块链安全, 去中心化, 双向认证, 告警研判, 幻觉缓解, 开源安全工具, 数字签名, 无后门, 日志管理, 日志锚定, 权限控制, 检测规则, 目标导入, 系统资产盘点, 网络资产发现, 逆向工具, 逆向工程平台, 防篡改, 集成