GH GambleHub

审核和不变日志

审核和不变日志

1)为什么需要它

审计的目的是以可证明的完整性记录"谁,哪里,何时和为什么",以保持安全,调查,财务报告和合规性。
不可变日志是一种格式和存储,其中事件仅通过添加(仅附录)编写,并且无法通过加密工具和存储策略进行后续更改/删除。

2)威胁模式和控制目标

风险:
  • 内部人员故意编辑/删除事件。
  • 更改时间/源(replay/backdating)。
  • "安静"关闭节点上的拼写。
  • 在事故/迁移中丢失日志的一部分。
  • PII收费过多,隐私不和谐。
目标是:

1.完整性:经修改/删除保护证明。

2.完整性:关闭关键流(控制平面、数据平面、可用性、金钱)。

3.时间精度:可播放的同步时间。

4.可用性:在SLO中读取和搜索。

5.隐私:最低PII,令牌/加密,使用合法性。

3)分类学和事件优先级

将事件分成层,优先考虑要求和不变性:
  • 控制平面:身份验证/授权、配置更改、密钥操作(KMS)、秘密管理、策略更改。
  • 数据平面:访问对象/记录/支票/付款;读/创建/删除。
  • Admin和DevOps:SSH/控制台,CI/CD,基础设施/IaC更改,权利升级。
  • 杂货:交易,计费,客户运营。
  • 系统/网络:内核/代理人/代理人/资产负债表、经纪人、DB。
  • 安全性:IDS/IPS/EDR,WAF,抗DDoS,抗氟化物,DLP。

对于每个类别,我们提交以下内容:关键性,方案,强制性字段,保留期,不变性要求。

4)必填字段和格式

相关标识符是:'trace_id','span_id','request_id','actor_id'(用户/服务),'tenant_id','resource_id'。
A&A上下文:操作时验证方式、角色/策略。
时间:RFC3339/UTC,毫秒/纳秒;同步源。
动作和结果:操作类型、目标、状态、受影响的对象数量。
完整性:本地HMAC记录,序号(序号),hash-prev。
电路:具有稳定模型的JSON(例如,与通用事件词典兼容)。

禁止:秘密,钥匙,代币,完整PAN,密码,私人钥匙。PII-仅在需要时使用,带有伪装/令牌化功能。

5)时间与同步

时间来源:至少两个独立来源(NTP/PTP)+位移监测。
关键时间签名:使用可信时间标记服务(TSA) 或内部时间sealing服务进行事件包。
规则:没有本地时区,只有UTC;构造和偏移/时间质量。

6) Logo Stream体系结构

代理商→缓冲区→运输→兰丁→哈希链/签名→寒冷/存档→搜索索引。

节点收集:带有磁盘缓冲区的轻型代理(daemonset/sidecar)(后压)。
运输:安全通道(TLS/mTLS),有保证的交付(on-least-once),idempotent-ingest。
Landing zone:以"原始"视图(按日期/tenant/类型分期)提供的对象存储。
索引:用于在线查询的搜索/分析引擎(热层)。
归档(WORM):带有保留策略和法律保留的不变垃圾箱/磁带。
Anchor/Seal:偶尔的"zapaika"哈希链包(见下文)。

7)密码不可变性

7.1哈希链(仅限附录)

每个条目都包含:"hash_curr=H(记录)",先前条目中的"hash_prev","seq"。任何编辑都会打破链条。

链的伪代码:

prev = GENESIS for record in stream:
payload = canonical_json(record_without_integrity_fields)
h = H(payload          prev.hash          record.seq)
store(record + {hash_prev: prev.hash, hash_curr: h})
prev = {hash: h}

7.2签名包和时间印章

每N 秒/MB形成一个块:所有"hash_curr"的Merkle根。
我们用审计键(在KMS/HSM中持续存储)签名块。
我们添加TSA时间戳并发布"块目录"(Transparency Log)。
可选:定期将根哈希锚定到外部可证明空间(例如,独立日志或公共不可变存储)。

7.3审计密钥管理

签名键-在KMS/HSM中,按计划轮换,多因素访问,用于导出的双控制。
召回钥匙→新的信任分支;旧签名仍可验证。

8)存储策略和WORM

WORM/immutability:包括不变容器/垃圾箱,以及针对P0/P1类的Retention和Legal Hold策略。
转化:包括在内;删除-仅通过延迟程序(禁止即时购买)。
Retentia:热(7-30天),温暖(3-6个月),冷/存档(1-7年或更长-取决于监管机构/合同)。
多租户性:每个租户的单独名称/帐户空间/加密密钥;期刊访问报告。

9)私有化和最小化

根据必要性原则收集:我们不要再计算了。
敏感字段的标记/化名,标识符的盐哈希。
存储在共享对象存储中时,prodewser端字段(AEAD)加密。
删除权(如适用):通过加密擦除字段/批次密钥而不破坏容器不可变性来实现(在设计时计划)。

10)审计本身的访问、角色和审计

拆分:生产商≠读者≠管理员。
仅从WORM读取;更改回避策略-通过单独的角色和批准程序。
所有阅读/导出操作都会记录在辅助日志中(元审核)。
Export for Respon/Compliance-使用哈希块目录和信任链进行加密。

11)可观察性和SLO

度量标准:注射率、到指数的差、丢失/重复的百分比、不同步时间的比例、签名/锚定错误、缓冲区填充。
SLO: ≥99.9%的事件≤ X秒传递到热索引;序列中有0个无法解释的"漏洞";100%的块由时间签名和标记。
Alerts:无花果暂停>N分钟,无花果哈希上升,链条发散,签名/时间戳失败,时间偏移阈值。

12)测试和验证

红色/蓝色测试:尝试在不同阶段编辑/删除记录;检测验证。
溷沌:禁用主机上的座席、网络中断、缓冲区溢出、"时间替换"。
加密检查:定期验证链条,验证默克尔根和模具。
Forenzika:复制来自端到端日志的调查脚本。

13)操作和程序

Runbook"完整性检查"(按需和按计划)。
合法持有和临时批次"冻结"的程序。
保持信任链的发现和导出过程。
审核密钥轮换计划和对损害的反应(新的信任分支,块的笔签名,通知)。

14)迷你食谱

块签名(mercisation+TSA,示意图):

records = read_partition(ts_window)
leaves = [H(canonical_json(r)) for r in records]
root  = merkle_root(leaves)
sig   = KMS.sign(root          ts_now)
tsa   = TSA.timestamp(sig)
store_block({root, sig, tsa, count=len(leaves), window})
append_transparency_log(H(root          sig          tsa))
链完整性检查(片段):

for i in 1..N:
assert rec[i].hash_prev == rec[i-1].hash_curr assert rec[i].hash_curr == H(canonical_json(rec[i]_no_hash)          rec[i].hash_prev          rec[i].seq)
回避政策(想法):
  • Control/Data plane P0:热30天→温暖6个月→存档7年(WORM)。
  • DevOps:热14天→温暖3个月→存档1年。
  • Security信号:热90天(用于调查),然后是1-3年。

15)经常出错

"徽标是没有模式的文本。"没有电路,就没有确定性的完整性和搜索。规范的JSON和固定字段是必需的。
没有相关性。缺乏"trace_id"破坏了调查。
本地时间。仅UTC和位移控制。
写入要更改的卷。没有WORM,任何不变性都是虚构的。
读数不合乎逻辑。读取敏感数据的重要性不亚于写入。
博客中的秘密。在发送前打开消毒剂,"红色列表"模式。
一把钥匙全部。签名和加密密钥是分开的,具有角色和轮换。

16)合规和监管

保留时间/不变性要求取决于域(财务,支付,电信等)。
可证明性:存在WORM/反应协议,链验证报告,日志访问日志,法律保留程序和导出。

17)支票单

出售前

  • 已批准事件分类法和方桉(必填字段)。
  • 已配置代理、缓冲区、安全传输、后压。
  • 包括:哈希链、块签名、时间戳、透明日志。
  • WORM/Retence存储库已启用;无法覆盖/删除测试。
  • 敏感字段的掩蔽/标记化。
  • 时间同步和位移监控。
  • 在KMS/HSM中轮换计划和存储审计密钥。

运营活动

  • 每周电路和块验证(+报告)。
  • Alerta的电路断裂/签名错误/时间偏移。
  • Red Team定期进行替换/删除测试。
  • 定期复习和成本审查。

18) FAQ

问:DB级别的"仅加法"是否足够?
哦不需要加密保证(哈希链、块签名、时间戳)和WORM策略。

问: 如何处理数据删除权?

答:为字段/批次设计加密擦除(删除密钥),同时保持介质不可变性和日志的可证明性。

问: 是否需要单独的密钥来签名块?

是的。块签名密钥与存储加密密钥分离;存储在KMS/HSM中,并进行轮换和审核。

问:是否可以"锚定"公共空间?
答:可选。这将增强可验证性,并切断轮廓内的"历史重写"。


相关材料:
  • "At Rest加密"
  • "In Transit加密"
  • "秘密管理"
  • "密钥管理和旋转"
  • ";请求的签字和核实";
Contact

联系我们

如需任何咨询或支持,请随时联系我们。我们随时准备提供帮助!

开始集成

Email — 必填。Telegram 或 WhatsApp — 可选

您的姓名 可选
Email 可选
主题 可选
消息内容 可选
Telegram 可选
@
如果填写 Telegram,我们也会在 Telegram 回复您。
WhatsApp 可选
格式:+国家代码 + 号码(例如:+86XXXXXXXXX)。

点击按钮即表示您同意数据处理。