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

admin 2022年7月23日02:14:09评论83 views字数 2455阅读8分11秒阅读模式


其他

案例

知识

随笔

声音

编者按

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


好久不见,甚是想念大家。距离先森上次发文估计已经过去快一年了,当初许下的承诺一直没能实现,实在抱歉。目前每天忙得不亦乐乎、忙得不可开交,甚至晚上做梦也是在研判,以至于造就现在生活就是工作、工作就是生活的状态;另外一个原因则是,公开课应该怎么讲才能在保证原则的情况下既能讲清楚又能把握好分寸……
这是先森去年参加的一次小型比武竞赛,虽然未能斩获想要的名次,但是也借此机会从中学习和实践了很多有用的技术知识,小记一番,分享给大家自己的心得~如有错误或者更好的思路,欢迎大家留言,感谢支持!本次比武竞赛主要以考察电子取证为主,涉及安卓取证与逆向、流量分析与黑客攻击、PC取证与逆向、服务器取证与Docker容器分析及网站复建等多个方面知识点,本文主要以手工取证为主、旨在分享思路和原理,同时赛后跟大佬杰酱、豪哥一番技术交流,使我在相关方面的思路更加风骚,感谢二位~

第一部分:安卓取证与逆向

1.通过对镜像文件的分析,请刷选出与涉案的泡泡APP,并获取其APP包装包的md5校验值(答案格式填写大写字母与数字组合 如:ABC123DEF) (10分)
提供分析的安卓镜像主要有三个,分别是data.vmdk、sdcard.vmdk和system.vmdk,对应的是安卓系统数据区、外置存储区和系统区,我们主要分析data和sdcard区。APP安装包一般在/Data/app/下,根据拼音推测包名为
com.paopaotalk.im。 

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

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

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

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

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

百度地图:

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

华为推送:

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

答案:80780.00。

原文始发于微信公众号(信息时代的犯罪侦查):如解剖麻雀般地回忆一场小型电子数据取证竞赛(1)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月23日02:14:09
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   如解剖麻雀般地回忆一场小型电子数据取证竞赛(1)https://cn-sec.com/archives/1194193.html

发表评论

匿名网友 填写信息