在SQLite数据库中解码BLOB

问题描述 投票:3回答:2

我正在从第三方应用程序中探索数据库,我想知道如果你不知道BLOB中存储了什么,是否有可能推断如何解码SQLite数据库中的BLOB?

有什么方法或有工具来解决这个问题吗?

sqlite blob
2个回答
3
投票

有什么方法或有工具来解决这个问题吗?

BLOB是二进制数据。有一些方法可以重建数据格式(这些逆向工程方法与您用于解密未知文件格式的方法有关),但如果没有进一步的信息,存储在二进制BLOB中的内容相当困难,所以我只能给出一些模糊的提示:

  • 想一想:如果你是程序员来编码存储在BLOB中的数据 - 你会怎么做?通常使用的方式类似
  • 查看数据的第一个字节 - 通常它会告诉它可能是什么文件格式(有许多文件格式可用的文档“魔术数字”);也不要忘记查看数据是否可以压缩(即查找zlib头,因为zlib经常用于压缩)
  • 如果合法(取决于您所在的国家/地区),那么应用IDA Pro等逆向工程工具或者如果没有一个好的调试器来查看程序在读取后对BLOB数据执行的操作通常会很有帮助

3
投票

如果将BLOB保存到文件中,则可以使用Unix file命令确定其中存储的数据类型。

© www.soinside.com 2019 - 2024. All rights reserved.