首页
社区
课程
招聘
[原创]香港中文大学 蒸米 解题报告
2015-1-26 16:02 8189

[原创]香港中文大学 蒸米 解题报告

2015-1-26 16:02
8189
解题报告

郑旻 香港中文大学

www.cse.cuhk.edu.hk/~mzheng/

1. Java层反编译后发现是简单的异或加密。 Logcat里已经把密码和异或表log出来了,写一个简单的程序爆破即可。

2. 程序会检测tracerpid,如果不为0就会kill掉自己。为了在so加载之前挂载上,先用jdb调试,再用ida挂载上去,hook fopen函数,然后执行。程序会停在fopen所在的函数,找到那个检测函数以后,用hex editor把跳转到检测函数的指令换成nop,打包安装。然后hook on click后的jni函数,随便输入一个密码,ida会停到那个jni函数处,然后查看内存,发现密码:"哎呦不错哦".

3. 用了各种内存dump方法,最后dump出来的dex不是不完整就是有错误。。。但是第一名很快就做出来第三题了,于是google了一下第一名发现有github,里面有个indroid,是一个基于dvm的万能脱壳器。赶紧编译了一个4.2.2,刷到galaxy nexus上,然后运行程序。瞬间就把dex 用 dexdump的形式 dump出来了。。。随后分析dump出来的dex,前两个字节是hashcode的值等于一个整数,后面四个字节可以通过hook String函数得到。最后转换成摩斯编码,就是最后的答案。

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞0
打赏
分享
最新回复 (9)
雪    币: 25
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hahads 2015-2-2 10:24
2
0
第三题的方法。。人才啊
雪    币: 178
活跃值: (297)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jiych 2015-2-2 10:43
3
0
indroid的使用能否说明一下,文档很少啊
雪    币: 163
活跃值: (1233)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
学编程 1 2015-2-2 14:20
4
0
2,3题要是能出个详细报告就更好了。
雪    币: 1013
活跃值: (1397)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
aihacker 2015-2-2 16:43
5
0
蒸米有侦查兵的潜质,可以升级为特种兵了
雪    币: 693
活跃值: (108)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
zyqqyz 1 2015-2-2 20:53
6
0
第三题解法是亮点
雪    币: 693
活跃值: (108)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
zyqqyz 1 2015-2-2 20:54
7
0
问下楼主,是在中文大学读本科吗?
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
蒸米 2015-2-7 15:29
8
0
博士...http://appsrv.cse.cuhk.edu.hk/~mzheng/
雪    币: 135
活跃值: (64)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
fatecaster 1 2015-2-7 15:39
9
0
香港是用繁体吧,我玩的游戏有个港版中文的,看着蛋疼。楼主会用简体。
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
colenming 2015-3-4 23:47
10
0
楼主,第一名的github是什么啊
游客
登录 | 注册 方可回帖
返回