Loading

某app涉及腾讯开源数据库wcdb逆向

背景:分析某app的数据库采用了加密,经分析底层采用wcdb进行加密。主要是参数确定比较麻烦,采用了hook进行获取验证。

1.搜素关键字,定位涉及的打开数据库流程

 

 

 

 

 

 

2.跟踪调用流程

 

password调用函数

 

 

 

 

 

 

 

 

 

 

 

 

底层设置key函数

 

 

 

查找so的绑定的函数

 

 

 

3.  分析底层跟wcdb源码的流程

 

 

 

 

 

 

 源码:

 

 核心参数为回调函数sqlite3Codec涉及我们需要的页大小,轮询次数

 

 

 

 

 

Hook sqlite3_key获取key,Hook sqlite3Code进行页大小,轮询次数获取。(注意hook地址如果跟ida一样时hook不到 地址+1)

 

 

 

0x1000 = 4096  0xfa00=64000

 进行数据库打开验证

 

 

 

 

posted @ 2020-05-19 16:13  loz2015  阅读(612)  评论(0编辑  收藏  举报