首页
社区
课程
招聘
[原创]题目3解题思路
发表于: 2015-1-25 13:54 2468

[原创]题目3解题思路

2015-1-25 13:54
2468
1.app 安装到手机端,启动gdbserver,attach到主进程,程序崩溃,猜测有antidebug。
2.通过ls proc/pid/task,查看引用相关线程信息,程序崩溃。
3.根据系统运行特性,线程tid信息一般为pid+n,使用gdbserver attach到一个tid上,发现成功连上。
4.使用gcore dump出内存信息。
5.在内存dump中查找关键字Lcrackme,dex.035,ENDIANTAG等信息,确定dex位置及大小,并将数据导出。



6.对dex进行修复,重打包成一个新的apk。
7.提交到我们开发的分析平台上,查看分析结果:e79K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3q4C8j5h3&6S2i4K6u0W2L8h3!0T1K9i4y4W2j5$3I4S2j5W2)9J5k6h3!0J5k6#2)9J5c8X3W2F1k6r3g2^5i4K6u0W2K9Y4y4H3i4K6y4r3N6s2W2H3k6g2)9K6c8s2u0W2M7%4g2D9N6q4)9J5y4X3#2V1y4g2)9K6c8o6t1%4z5o6M7&6k6e0x3^5x3U0m8S2x3$3y4S2y4e0b7^5y4$3f1$3y4X3f1%4j5U0x3@1x3e0N6X3y4X3p5I4y4K6m8X3x3r3c8U0j5U0g2V1z5h3y4U0k6U0c8S2y4r3x3$3x3e0W2T1x3U0c8T1j5X3x3$3k6e0y4S2j5U0l9^5x3r3c8S2k6o6x3H3k6U0u0U0x3$3u0X3k6X3f1I4k6r3g2X3x3X3u0V1y4K6b7%4y4o6W2U0k6e0t1K6j5R3`.`.


8.根据交叉索引信息,可以看出在b.java的run方法是关键代码所在,根据代码逻辑,可以看出密码共需要6个字母(由输入的莫斯密码转换获得),前两位的hashcode必须为3618,且ascii码和为168,后面4为则为e.java和a.java中annotation的拼接,为字符串“7e1p”。


9.前两位通过穷举可以得知前两位是s5,即最终密码为s57e1p,根据e.java中的编码进行转化即可得到正确答案。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回