第33天:攻防世界-Mobile—app3
临近考试依然不忘刷题,CTF保佑不挂科。
给了一个ab文件,我以为我下错文件了。。。。
查了一下,这是Android备份文件,给个链接,https://blog.****.net/qq_33356474/article/details/92188491
看完讲解ab格式的这篇文章,先下载一个Android backup extractor,然后对文件进行转换。
经过一系列操作,我们会拿到一个base.apk和db文件。
使用jeb进行分析源码。
主要就是对数据库的操作,俺也不是很懂,Android开发还没入门,,,,哭了。
直接找关键代码吧。
判断这里就是关键代码,但是这个函数名也太反人类了。(这里可以结合jadx的反混淆功能进行分析,会很容易的)
这样的函数名,简直不要太爽,哈哈。
然后调用了两个类,
就这两个,就是用来加密的。。。
不知道这个getWritableDatabase是干啥的,也不知道他的参数有啥用。深入学了Android开发应该就懂了。
然后我们看看我们的数据库文件,使用DB Browser for SQLite打开。(要用SQLCiper)
要密码,我们把刚才getWritableDatabase的参数解出来看看,直接把代码复制到IDEA,简单修改,运行就能拿到密码。(SQLCiper 3)
总结
真是太菜了。。。从这道题中,了解了ab文件,学到了几种工具的使用,(SQLite、abe、jadx)革命仍在继续,俺还要努力。