如何找到SQLite数据库的密钥

时间:2019-02-08 10:28:14

标签: sqlite reverse-engineering

我正在使用Instant Messaging软件,但我怀疑该软件会保留有关我的计算机的许多信息(例如我的MAC地址),并且可能会泄漏它。我决定要检查该软件的本地数据库,并查看它在本地保存的内容。

我已经能够使用软件自己的日志转储和Procmon找到有趣的数据库。但是,它们是受密钥保护的SQLite数据库。

  1. 我有什么办法知道密钥的格式和大小?是十六进制吗?
  2. 我如何有效地继续研究?我使用procmon进行了查看,并且能够从第一次打开该软件开始就检测到该软件第一次使用受密钥保护的数据库。但是,除了正在使用的多个Windows注册表值之外,我无法检测到该软件使用的任何“有趣”本地文件,并且无法暗示该密钥的位置,但我不确定如何实现。

对不起,如果我英语有误,请提前致谢。

1 个答案:

答案 0 :(得分:0)

  
      
  1. 我有什么办法知道密钥的格式和大小?是十六进制吗?
  2.   

密钥只是纯文本形式(就像普通密码一样),大小是(也像密码一样)由数据库创建者定义。

  
      
  1. 我如何有效地继续研究?
  2.   

我建议对应用程序进行反向工程,然后寻找与数据库的连接已启动的部分。为此,您可以使用动态分析(使用调试器)或静态分析(使用反汇编器分析二进制文件)。