网站重构(网站重构案例)怎么可以错过
RDS MySQL数据库重构案例简析
在服务器取证过程中,有时得到的数据库检材难以满足取证分析的要求,此时就需要对提取的数据库文件进行重构本期小拓将基于服务器取证的实际案例,阐述RDS MySQL数据库重构过程中需要解决的操作系统版本不一、数据库压缩格式多样、数据表内容缺失和表字段加密等问题,希望对相关人员的电子取证分析工作有所帮助。
01数据库检材说明在电子数据取证案件中,经常需要对服务器进行固定取证具体而言,通常可以分为两种情况:一是网站源码和数据库在同一台服务器上的情况,二是网站源码和数据库不在同一台服务器上的情况(也就是常说的站库分离)。
本案例中的检材为从腾讯RDS MySQL云数据库服务器备份下来的压缩文件RDS MySQL是一种云关系型数据库,可以提供稳定可靠、弹性可伸缩的在线数据库服务,支持 MySQL引擎,并且提供了包括容灾、备份、恢复、监控、迁移等功能在内的全套解决方案。
目前,国内外主要云服务商均提供云数据库RDS MySQL版服务,RDS将常用的数据库操作集成为一个面板,以便使用者查看与操作RDS MySQL备份文件主要有四种格式:.tar压缩包、XtraBackup压缩包、XtraBackup文件包和XtraBackup qpress压缩包。
本案例中的检材格式为XtraBackup压缩包,以.xb结尾本案例中RDS的备份情况如图1所示
图1 本案例中RDS的备份情况02数据库重构环境在开始进行数据库重构之前,需要搭建必要的重构环境,其中包含了操作系统环境与重构工具基于本案例中的检材, 重构环境配置简要说明如下:主机采用Windows系统,安装了MySQL5.7/5.6和Navicat工具;使用CentOS 8虚拟机,搭载XtraBackup、qpress和dbsake工具。
2.1 环境配置 1. CentOS 8配置CentOS 8为常用的Linux版本,CentOS 8虚拟机的具体安装搭建过程在此不再赘述由于CentOS官方源问题,CentOS 8系统安装后自带的源并不含XtraBackup包。
因此,需提前换源并配置DNS,具体操作如下:
在安装XtraBackup之前,需要先安装XtraBackup存储库、工具存储库及XtraBackup的相关依赖,从而保证使用XtraBackup时不会报错。具体按照步骤说明如下:
2. Windows主机环境配置① 在Windows下安装MySQL:下载最新的PHP小皮面版进行安装,自带MySQL数据库,如图2所示。
图2 MySQL数据库安装界面② 使用Navicat连接MySQL:点击“连接”->“MySQL”,弹出如图3所示的数据库连接界面,填入账号密码即可连接成功。
图3 MySQL数据库连接界面2.2 将检材放入Linux虚拟机中 在Windows下打开cmd,执行如下代码(参看图4):
图4 CMD下的操作命令情况03数据库重构过程3.1 解压.xb文件
图5 加载数据库后点击数据表最常见的MySQL引擎包括MyISAM和InnoDB,MyISAM是MySQL 5.5.8版本之前的默认引擎, 在MySQL 5.5.8以后的默认存储引擎是InnoDB在对数据库进行重构时,MyISAM是可以直接复制使用的,但InnoDB不行,需要进行表结构与表数据的修复。
InnoDB存储文件有frm、ibd,而MyISAM包括frm、MYD、MYI对于InnoDB,frm是表定义文件,ibd是数据文件;对于MyISAM,frm是表定义文件,MYD是数据文件,MYI是索引文件。
根据.ibd和.frm后缀,得知.xb备份压缩文件的原数据库为InnoDB引擎由于InnoDB引擎的特殊性,数据表不可直接复制粘贴,而是需要修复才能查看数据表的结构与内容 3.2 修复数据表 。
在此以单个数据库的修复操作为例。图6中,test1、mysql、zp分别代表数据库文件夹,下面以修复test1数据库为例进行说明。
图6 数据库文件显示情况1. 修复表结构返回到CentOS虚拟机中,将.frm转换为.sql执行文件:./dbsake frmdump ./*.frm >> 12.sql,得到12.sql文件,结果如图7所示。
图7 文件转换操作结果拷贝CentOS虚拟机中的test1文件夹到Windows桌面:scp -r root@192.168.3.170:/root/data/test1/ C:\Users\0101\Desktop\。
使用navicat执行12.sql文件生成数据表结构:右击“127.0.0.1(数据库服务器)”->“新建查询”,将12.sql内容复制过来,选择要恢复到test2数据库中,最后点击运行表结构恢复成功,如图8所示。
图8 恢复成功的表结构2修复表数据需要清理表创建时的产生的.ibd文件,再将源.ibd复制到对应目录下,进行加载,即可完成修复。具体操作步骤如下:
相关代码如图9所示。
图9 修复表数据的相关代码修复表数据之后,可以查看数据表内容,如图10所示。至此,数据库修复成功。
图10 查看修复的表数据内容04数据库解密 获取重构的数据库后,发现表中的phone列是加密的,如图11所示。
图11 数据库中加密的phone列从获得的检材中,发现还有一份关于加密方式的代码文件,从而获悉phone字段的加密方式由于加密代码涉及隐私,不便展示因此仅对加密方式进行简要说明:加密代码使用一串特定的字符(以下称为密钥),在网站用户输入一串手机号码后,该代码进行格式转化,然后与密钥进行异或运算,最后得到加密字符串。
由此可知,只需将加密后的字符串与密钥进行异或操作,再进行格式转化即可得到解密后的手机号码,具体运算过程如图12所示
图12 数据库解密运算过程 结 语 本期小拓基于电子取证分析的实际案例,较为详细说明了RDS MySQL数据库文件的重构过程归纳而言,数据库重构过程的一般步骤如下:首先,要充分了解数据库检材文件;然后,分析处理该类型数据库文件应采用的方法及所需工具;接下来,对检材重构所需环境及工具进行安装部署;再对检材进行解压和修复;最后,对数据库中的加密字段进行解密。
- 标签:
- 编辑:李松一
- 相关文章
-
鹰犬将军(鹰犬将军级别)万万没想到
围剿与反围剿是红军和国军的斗法,虽然国军实力强大、具有兵力和武器优势,但在前四次围剿中大败而归。第五次反围剿的失败是长征的直…
-
鹰犬将军(鹰犬将军级别)这样也行?
宋希濂自述一书于1985年出版,书名为《鹰犬将军》,书中提到鹰犬将军的名称来自于中国台湾著名学者李敖先生于1984年发表的一篇名为《…
- 微观动机与宏观行为(微观动机与宏观行为TXT)原创
- 张爱玲的小说(张爱玲的小说心经)没想到
- 张爱玲的小说(张爱玲的小说心经)深度揭秘
- 出梁庄记(出梁庄记 小说)硬核推荐
- 搜商(搜商包括什么)真没想到