数据库审计与敏感数据访问监测
数据库为何是关键环节
尽管应用系统对数据访问做了控制,但数据库层面往往存在旁路通道。运维人员可以通过客户端直连数据库,开发人员可能持有生产库的只读账号,备份文件可以被下载,测试人员可能需要从生产环境取数据。这些访问路径不经过应用系统的权限校验,如果没有独立的审计能力,数据访问行为就缺少记录。
审计能力建设
第一,开启数据库自身的审计功能,记录连接、查询、变更和权限操作。需要注意审计日志本身的存储与保护,避免被有权限的账号修改或删除,建议写入独立的存储位置。
第二,通过流量镜像方式采集数据库通信内容,这种方式不依赖数据库自身配置,也能覆盖通过中间件访问的场景。对于加密通信,需要具备相应的解密能力并评估合规边界。
第三,记录足够的上下文。仅有语句内容不足以研判,还需要关联发起访问的应用、账号、来源地址和终端信息,才能判断行为是否异常。
第四,对敏感表与字段做重点标记。把分级为敏感的数据对象纳入重点审计范围,提高相关操作的记录粒度与告警级别。
异常访问监测
第一,访问量与时间偏离。某个账号在非工作时段访问数据库,或者单次查询返回的记录数远超日常水平,都是值得关注的信号。
第二,行为模式偏离。例如原本只做查询的账号开始执行数据定义或权限变更操作,或者访问了与其职责无关的数据库与表。
第三,来源偏离。来自非预期网段或非预期工具的访问,尤其是绕过应用直连数据库的行为。
第四,批量导出特征。短时间内大量查询并伴随数据量异常增长,可能是在准备外传数据。
运营与协同
审计能力的价值在于形成闭环。需要把告警指派到具体责任人,对确认为违规访问的行为进行处理,并根据处置结果优化规则。同时明确数据库访问的合规渠道与审批流程,为业务提供正当访问的途径,避免因为流程繁琐而产生更多旁路访问。
结语
数据库审计解决的是数据访问的可追溯问题。当每一次访问都能被记录并能被解释,敏感数据的安全才有基础保障。