千家信息网

怎么对已损坏的SQLite数据库取证分析

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍了怎么对已损坏的SQLite数据库取证分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。SQLite是当今最流行的数据
千家信息网最后更新 2026年10月31日怎么对已损坏的SQLite数据库取证分析

这篇文章主要介绍了怎么对已损坏的SQLite数据库取证分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

SQLite是当今最流行的数据库之一,许多移动应用台式计算机以及便携式笔记本上都用它来存储数据(例如桌面工具、浏览器以及社交媒体软件等),因此SQLite在电子取证当中也扮演着举足轻重的角色。取证网络浏览器,信使和其他数字证据来源。

市面上有许多支持对SQLite数据库分析取证的工具,例如Magnet AXIOM,Belkasoft Evidence Center和BlackBag BlackLight等等。这些工具可以自动解析这些数据库,甚至可以从空闲列表和未分配空间中分割数据。此外,它们还提供了SQLite查看器,取证人员可以手动来分析数据库的类型。

那么对于那些已被损坏或破坏的数据库,我们又该如何取证呢?

我们在DFIR上收到了一个无法用任何工具打开的SQLite数据库。在此之前该数据库还曾被发送给供应商解决,但得到的答案是 - 并未在数据库中发现任何表格。

话不多说让我们直奔主题,该数据库名为:"contacts2.db"。如果你有足够的移动取证经验,那么你应该能猜到这是一个典型的Android数据库,其中包含了有关用户的联系人信息。

在我们手头有许多专业的取证工具包,因此我们决定使用最流行的取证工具来尝试打开它,其中包括有Belkasoft Evidence Center,BlackBag BlackLight,Cellebrite UFED Physical Analyser,SQLite数据库浏览器,Magnet AXIOM和Oxygen Forensic Detective。但让我们感到惊讶的是,该数据库正如发布者所述,没有任何工具能打开它。如下截图所示:


Belkasoft Evidence Center


BlackBag BlackLight


Cellebrite UFED Physical Analyzer


SQLite数据库浏览器


Magnet AXIOM


Oxygen Forensic Detective

正如你所看到的没有任何工具可以打开它。那么接下来我们该怎么做呢?让我们回到最开始!

首先,我们进入到SQLite的官方网站,并下载用于管理数据库文件的命令行工具。

接着我们提取存档内容并将数据库放到相同的文件夹下(可选)。

启动Windows命令提示符并将目录更改为提取SQLite命令行工具的目录。

运行以下命令序列:

sqlite3.exe database_name.db.mode insert.output database_dump.sql.dump.exit

现在你有一个包含dump数据库表的SQL文件。如果运气好的话,你则可以删除事务语句,比如BEGIN TRANSACTION和ROLLBACK,并将文件导入到一个新的SQLite数据库中,例如,使用SQLite数据库浏览器。但由于该数据库受损严重,所以我们必须手动检查文件并将感兴趣的表保存在单独的SQL文件中。

例如,我们找到'accounts'表,它看起来像下面这样:

CREATE TABLE accounts (_id INTEGER PRIMARY KEY AUTOINCREMENT,account_name TEXT, account_type TEXT, data_set TEXT);INSERT INTO accounts VALUES(1,'vnd.sec.contact.phone','vnd.sec.contact.phone',NULL);INSERT INTO accounts VALUES(2,'primary.sim.account_name','vnd.sec.contact.sim',NULL);INSERT INTO accounts VALUES(4,'vnd.sec.contact.agg.account_name','vnd.sec.contact.agg.account_type',NULL);INSERT INTO accounts VALUES(506,'test@gmail.com','com.google',NULL);INSERT INTO accounts VALUES(538,'WhatsApp','com.whatsapp',NULL);INSERT INTO accounts VALUES(655,'test','com.yandex.passport',NULL);INSERT INTO accounts VALUES(656,'+7 903 000-00-00′,'com.yandex.passport',NULL);INSERT INTO accounts VALUES(657,'+7 925 000-00-00′,'com.yandex.passport',NULL);INSERT INTO accounts VALUES(658,'+7 978 000-00-00′,'com.yandex.passport',NULL);INSERT INTO accounts VALUES(672,'test','com.vkontakte.account',NULL);INSERT INTO accounts VALUES(677,'+7 968 000-00-00′,'com.yandex.passport',NULL);INSERT INTO accounts VALUES(687,'Youla account','com.allgotitm.youla',NULL);INSERT INTO accounts VALUES(792,'+7 968 000-00-00′,'com.viber.voip',NULL);

我们将它保存到一个单独的SQL文件中,并使用SQLite数据库浏览器创建数据库。

创建过程如下:

  • 打开SQLite数据库浏览器。

  • 从SQL文件转到文件 - 导入 - 数据库...

  • 选择SQL文件中你感兴趣的表。

  • 选择要创建的数据库的名称。

  • 现在你可以浏览数据并使用简单的SQL查询来导出数据。


恢复的表格

如果你想查看所有表格只需重复以上步骤即可。这个例子也向我们证明了,数字取证分析不能只依赖于取证工具,应该根据情况结合手动检查的方式,这样才能更准确的获取和分析数据。

感谢你能够认真阅读完这篇文章,希望小编分享的"怎么对已损坏的SQLite数据库取证分析"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

数据 数据库 取证 工具 文件 浏览 浏览器 分析 命令 篇文章 并将 兴趣 手动 表格 数字 正如 目录 支持 检查 移动 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 江苏根荣互联网科技 互联网金融 科技 美国互联网科技 互联网科技革命 狮子座互联网科技有限公司 广州凡科互联网科技 火传媒上海互联网科技 互联网 科技服务平台 盛创互联网科技有限公司 互联网巨头投资的硬核科技 互联网 科技馆 互联网科技产品 中科明德北京互联网科技 深圳无忧互联网科技 广州富喜互联网络科技 济南小医互联网科技有限公司招聘 吉林省码上互联网科技电话 互联网科技和医药行业 知域互联网科技有限公司官网 百单网互联网科技有限公司怎么样 广州大一互联网络科技有限公司 上海互联网科技有限公司 猪兼强互联网科技 合肥互联网科技公司公章图片 美国五大互联网科技公司市值多少 三亚科技创新互联网基地 陕西彩京云互联网科技有限公司 安徽九吞吴互联网科技有限公司 互联网科技创新方面的资料
0