
在电子数据取证工作中,数据库往往是案件关键信息的集中载体。无论是电商平台的交易订单、社交应用的用户信息,还是企业内部管理系统的业务记录,大量关键数据都存储在数据库中。
但实际数据库取证工作经常面临一个问题:数据库中的数据可能已经被删除、修改或覆盖,当前能够查询到的数据,并不一定能够完整反映案件发生时的真实情况。
此时,MySQL的二进制日志:Binlog,就可能成为重要的线索。
Binlog是MySQL用于记录数据库变更操作的二进制日志,关注的是数据库发生了哪些变化。
Binlog常见三种记录模式:ROW、STATEMENT、MIXED。
目前常见MySQL版本默认采用ROW模式,主要记录具体的行数据变化;STATEMENT模式记录执行的SQL语句;MIXED模式则根据实际情况在两种方式之间进行选择。
例如,用户在前端注册一个账号后,数据库中的用户表会新增一条记录。在ROW模式下,Binlog日志解析后可以看到类似下面的内容:
其中INSERT INTO表示新增操作,@1、@2等对应本次新增记录中的字段值。
在Binlog已开启且相关日志尚未被清理的情况下,即使后续这条用户数据被删除,仍可以尝试通过解析Binlog查找到此前记录的数据内容。
查找被删除的数据
当数据库中的订单、用户、交易记录等数据被删除,数据库当前表中可能已经无法查询。
但通过分析Binlog,就可以尝试查找删除前的数据内容及相关字段信息。
对比数据修改前后内容
案件中可能出现订单金额、账户余额、用户权限、业务状态等数据被人为修改的情况。
而通过Binlog中的更新记录,也可以查看相关字段修改前后的值,辅助判断数据库中的数据发生了哪些变化。
梳理数据库操作时间线
通过Binlog中的新增、修改、删除等事件,可以按照时间顺序梳理数据库操作过程。
例如某条数据何时创建、何时修改、何时被删除,为还原相关业务过程提供依据。
Binlog文件一般保存在MySQL数据目录中,可以通过查看MySQL配置文件,或查询log_bin_basename参数,确认Binlog文件的实际保存路径;通过SHOW BINARY LOGS,还可以查看当前服务器已经生成的Binlog文件列表。
常见的Binlog文件名称如binlog.**1、binlog.**2,并随着日志生成按照编号持续递增。
由于Binlog采用二进制格式保存,无法像普通文本日志一样直接查看,通常需要借助相应工具进行解析。
为方便用户实战解析Binlog文件,平航Link+上线全新的MySQL Binlog日志解析工具,可自动识别Binlog文件对应的MySQL版本,将原始二进制日志转换为可直接查看的内容,梳理其中新增、删除、修改等数据变更记录。
如何使用?
固定关键数据文件
通过规范操作,获取涉案数据库中的Binlog日志文件。
下载安装工具
通过平航Link+工具箱 -> 选择“平航PTU工具” -> 下载安装“平航MySQL Binlog日志解析工具”
导入Binlog数据解析工具
根据指引选择Binlog日志文件导入(支持单文件及文件夹批量解析),解析完成后,即可直接查看其数据变更记录。
可查看日志版本、解析状态等信息,并提供原始视图、梳理视图、关键词搜索及结果导出等功能。可快速筛选新增、修改、删除类型。
变更记录
删除记录
从“数据库中现在有什么”到“数据库中曾经发生过什么”,通过Binlog,可以把已经删除、修改过的数据重新串起来,为后续案件分析提供更多线索。
* 详询平航官方技术团队
申请“平航Link+取证管家”使用权限
可联系区域销售申请。
Link+工具箱 -> PTU工具
下载安装即可
产品试用与技术支持
联系平航区域销售或技术
*本文含AI生成内容

















