如解剖麻雀般地回忆一场小型电子数据取证竞赛(1)

其他

案例

知识

随笔

声音

编者按

近几年来,电子数据取证这个小行业也卷的不行,甚至“逼”的先森现身说法。编者读来,觉得非常有亲历感。文章共分为四个部分:安卓取证与逆向流量分析与黑客攻击PC取证与逆向服务器取证与Docker容器分析及网站复建,送给即将和正在进入这个行业的童鞋。祝你们快乐!此为第一部分:安卓取证与逆向

好久不见,甚是想念大家。距离先森上次发文估计已经过去快一年了,当初许下的承诺一直没能实现,实在抱歉。目前每天忙得不亦乐乎、忙得不可开交,甚至晚上做梦也是在研判,以至于造就现在生活就是工作、工作就是生活的状态;另外一个原因则是,公开课应该怎么讲才能在保证原则的情况下既能讲清楚又能把握好分寸……
这是先森去年参加的一次小型比武竞赛,虽然未能斩获想要的名次,但是也借此机会从中学习和实践了很多有用的技术知识,小记一番,分享给大家自己的心得~如有错误或者更好的思路,欢迎大家留言,感谢支持!本次比武竞赛主要以考察电子取证为主,涉及安卓取证与逆向、流量分析与黑客攻击、PC取证与逆向、服务器取证与Docker容器分析及网站复建等多个方面知识点,本文主要以手工取证为主、旨在分享思路和原理,同时赛后跟大佬杰酱、豪哥一番技术交流,使我在相关方面的思路更加风骚,感谢二位~
第一部分:安卓取证与逆向
1.通过对镜像文件的分析,请刷选出与涉案的泡泡APP,并获取其APP包装包的md5校验值(答案格式填写大写字母与数字组合 如:ABC123DEF) (10分)
提供分析的安卓镜像主要有三个,分别是data.vmdk、sdcard.vmdk和system.vmdk,对应的是安卓系统数据区、外置存储区和系统区,我们主要分析data和sdcard区。APP安装包一般在/Data/app/下,根据拼音推测包名为
com.paopaotalk.im。

答案:
8205a15437d5df15fcff75cc03fd903e。
2.接上题,给出app的包名(答案格式填写小写字母、. 组合 如:android.permission.read_sms) (10分)
将提取出来的APP安装包拖进jadx-gui中,通过查看AndroidManifest.xml中的package对应的值获取包名。

答案:com.paopaotalk.im。
3.app不包含以下哪种第三方SDK信息? (10分)
SDK信息仍然存在于AndroidManifest.xml中,查找SDK过程不再赘述。
极光推送:

百度地图:

华为推送:

4.通过对APP安装包进行分析,该APP是否加固?(答案格式填写:是/否) (10分)

答案:是。
5.通过对APP安装包进行分析,分析该APP的主程序名?(格式填写数字和大小写字母组合 如:AB12.4aaB.COM) (10分)
众所周知每个android程序都有一个主的activity,它是程序启动的第一个activity,每个activity都需要在AndroidManifest.xml文件中声明。

答案:
com.vvchat.vcapp.activity.MainActivity。
6.通过对APP安装包进行分析,该APP签名类型为?(格式填写数字和大小写字母组合 如:ABC12cde) (10分)
APP签名可以通过jadx_gui中的“APK signature”模块查看,除了应付比赛以外,这里往往也是案件侦破中的意外之处。

答案:X.509。
7.app加密数据库文件所使用的私钥(答案格式填写小写字母与数字组合 如:abc123def) (10分)
通过分析
/Data/data/com.paopaotalk.im/databases
下的sqlite文件,发现其主要存放数据的数据库分别是new_zc.db和new_qyx.db。

使用工具对该APK进行脱壳处理。APK脱壳过程就不多说了(某取证工具自带脱壳功能,或者通过Frida一类的工具自动化脱壳),接着使用jadx-gui打开脱壳后的APK并全局搜索关键字”new_qyx”和”new_zc”,发现函数”convertSQLCipheredDB”和”convertZCSQLCipheredDB”分别对这两个数据库进行操作,通过分析可知第二行的encode变量就是连接sqlite数据库的密码。

经过分析可知,数据库私钥的内容其实际上是将getCustId()获取到的值进行MD5加密后的结果。由于本人不是很熟悉安卓开发,懒得追溯相关函数了,该函数第二行写明了这个数值其实也跟数据库名有关系,那么这个问题就迎刃而解了。

答案:
60f93706ff40f56a785861960ffe1237。
8.app记录用户聊天记录的数据库表名(答案格式填写小写字母 如:abc) (5分)

答案:msg。
9.app中聊天记录中接收文件名为”拼一拼平台_xlsx_Sheet1_0001.zip”文件的md5(128bit)校验值。(答案格式填写小写字母与数字组合 如:abc123) (5分)
翻一翻sdcard文件系统即可。

答案:
2CF59CAB8A0B8E01643A3F3B59640153。
10.请获取上题压缩包中文件,压缩包的压缩密码是什么?(答案格式填写大小字母、数字组合 如:abc123DEF) (10分)
这道题可以利用模拟器对镜像进行仿真,本身APP的登录凭证并没有过期,可以打开泡泡APP查看聊天内容来查找解压密码。由于已打开了数据库,就不进行仿真操作了,感兴趣的朋友可以查查相关资料(将镜像直接替换至模拟器的相关文件夹)。

答案:pinyipin。
11.对压缩包中文件分析,文件中的转账数据有多少条。(答案格式填写数字 如:123) (5分)

答案:79。
12.对压缩包中文件分析,请给出文件中用户”李淼”的转入交易金额数值。(答案格式填写数字 保留小数点后二位 如:1234.00) (5分)

答案:80780.00。

暂无评论

发表评论

您的电子邮件地址不会被公开,必填项已用*标注。

相关推荐

Linux系统账户后门及排查

系统账户后门是一种最为简单有效的权限维持方式。攻击者在获取目标系统权限的前提下,通过创建一个系统账户作为持久化的据 …

微信扫一扫,分享到朋友圈

如解剖麻雀般地回忆一场小型电子数据取证竞赛(1)