第33天:攻防世界-Mobile—app3

临近考试依然不忘刷题,CTF保佑不挂科。

 

给了一个ab文件,我以为我下错文件了。。。。

查了一下,这是Android备份文件,给个链接,https://blog.****.net/qq_33356474/article/details/92188491

看完讲解ab格式的这篇文章,先下载一个Android backup extractor,然后对文件进行转换。

经过一系列操作,我们会拿到一个base.apk和db文件。

使用jeb进行分析源码。

主要就是对数据库的操作,俺也不是很懂,Android开发还没入门,,,,哭了。

直接找关键代码吧。

第33天:攻防世界-Mobile—app3

判断这里就是关键代码,但是这个函数名也太反人类了。(这里可以结合jadx的反混淆功能进行分析,会很容易的)

第33天:攻防世界-Mobile—app3

这样的函数名,简直不要太爽,哈哈。

然后调用了两个类,

第33天:攻防世界-Mobile—app3

就这两个,就是用来加密的。。。

第33天:攻防世界-Mobile—app3

不知道这个getWritableDatabase是干啥的,也不知道他的参数有啥用。深入学了Android开发应该就懂了。

然后我们看看我们的数据库文件,使用DB Browser for SQLite打开。(要用SQLCiper)

第33天:攻防世界-Mobile—app3

要密码,我们把刚才getWritableDatabase的参数解出来看看,直接把代码复制到IDEA,简单修改,运行就能拿到密码。(SQLCiper 3)

第33天:攻防世界-Mobile—app3

总结

     真是太菜了。。。从这道题中,了解了ab文件,学到了几种工具的使用,(SQLite、abe、jadx)革命仍在继续,俺还要努力。