-
-
[原创]2019看雪CTF总决赛第七题:东北奇闻WP
-
发表于: 2019-12-19 23:56 5477
-
此题是安卓题。Jeb反编后,发现有native层,调用函数为showAssist
,不知道为什么不直接加载native:
静态大致看了下native层的代码,发现控制结构比较难看,都是通过表来跳转的(这种描述或许并不准确),里面的所有数据均进行了异或编码,showAssist
函数在动态注册的,注册用的数据在偏移0x2B668处,函数偏移为0x19F80。showAssist
函数读取输入后,调用函数sub_1823C
。函数sub_1823C
为算法函数,似乎是魔改的cast-128。
加密函数先申请堆计算扩展密钥(密钥在异或解码后为明文--findViewById(I)L
),然后8字节一组进行25组加密,最后hex后与异或后的明文进行校验。分组加密伪代码如下:
在分组加密的返回前有一个逐字节的编码函数,且此编码函数使用了OLLVM。
逐字节的编码函数由于输入输出是单字节一一映射的关系,所以直接跑个表出来查表就OK了。扩展密钥也可以直接dump出来,那后就直接反解就好了。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2019-12-20 00:05
被poyoten编辑
,原因:
赞赏
他的文章
看原图
赞赏
雪币:
留言: