结论先行:日志的价值在于出事之后能拿出来当依据。如果这段记录可以被改、可以被删,而且改完看不出来,它在监管询问、内部追责与对外沟通里的分量都会打折。要让日志立得住,需要三个条件:写进去就改不了、改动看得见、留存链路说得清。
日志被动的三种方式
“日志被篡改”本身是被公开列为需要检测的高危行为之一,它通常有三种形态:直接修改内容、删掉整段时间的记录、改动时间字段。第三种隐蔽性更强——内容一个字没动,但顺序与因果关系乱了,事后无法还原先发生什么、后发生什么。
企业侧的问题往往不在某一项技术上,而在于这些记录分散在不同系统里:本机日志的修改权限跟着本机管理员账号走,谁有权限谁就能动。
让日志“写进去就改不了”
可行的做法有三层,成本依次上升:
- 写入方式。采用只追加、写入后不可更改的存储形态,避免就地修改。
- 留存位置。把关键系统的日志集中到独立的留存通道,需要改动的面就从“每台机器”缩小到“留存系统本身”。
- 独立副本。对合规要求高的事件类型,再做一份与业务系统解耦的留存副本。公开的日志分析方案资料里,把“留存不可篡改日志用于监管取证”明确列为合规能力,指向的就是这一层。
改动看得见:完整性与时间两条线
完整性靠校验值:对日志分段计算校验值并定期比对,一旦不一致,可以定位到具体时间段,而不是只得到“有问题但不知道在哪”。时间线要靠统一时钟:统一的时间来源、统一的时区与格式,否则跨设备比对时会出现顺序错位,排查会得出相反结论。
两条线之外还要有第三个维度——关联字段。至少要能回答:这件事发生在哪台资产上、用的哪个账号、做了什么操作。缺少任何一项,日志就只能算“有记录”,不能算“可用”。
留存链路要说清四件事
- 采集端。网络或平台中断时,采集端能否本地缓存、恢复后补传,决定这段记录是“缺失”还是“延迟到达”。
- 传输。链路是否需要加密,决定日志在途中是否可能被读取或改写。
- 存储。保留多久、按什么规则分级、冷热如何分布,需要与合规要求对齐后再定。
- 访问。谁能看、谁能导出、调阅是否留痕。值得留意的是,很多“日志被改”的风险其实发生在调阅环节——能看到全部日志的人,也就具备了判断该改哪一段的能力。
边界与前提
技术手段能保证记录的完整性,但不能保证它在任何场合都构成有效证据,取证方式与授权流程仍需单独约定。另外要区分两件事:完整不等于全面,只采集了部分系统时,完整性再高也不能说明整体情况。运维日志与安全日志的口径也不同,混在同一套权限模型里会互相干扰。
可以先做的三件事
把“日志能被谁改”盘一遍;对关键系统先做集中留存;把保留期与调阅权限写成一份可核对的说明。三件事都不需要额外采购,做完之后再评估是否需要加固。奇摩在为客户做日志平台规划时,通常把这三项与采集范围一起确认,避免平台上线后才发现留存链路本身立不住。
需要梳理日志留存与权限口径,欢迎预约咨询。
