2019Sctf中的android题

SCTF中的奇怪的android题,可能对经验丰富的师傅们并不认为很难,但对于我android逆向初级选手来讲还是有点难度的。题目运行的时候并没有什么异常,和大多数题目一样。

所以第一步:用JEB反汇编,看看代码

看了一下配置文件,发现主活动在反编译中并没有找到。这就有点超乎想象了。后来发现是经过反调试处理了的。把主活动文件给隐藏起来了。接着往下面分析,看是怎样进行反调试的。

这里是重写了attachBaseContext这个方法,从而要在data中提取数据。但是在提取data前,就经过了函数的处理

找到这两个函数,分析一下功能’

分析一下,这是对文件进行了异或加密。在这个题中降低了难度,就是data文件可以直接复制出来。这样我们写一个文件,然后我们就对data进行解密操作。

Python脚本如下:

转化后我们的到解密后的文件

因为我们是转换成为16进制数据,英雌我们需要用winhex转换成apk文件

将这些数据用winhex填充,保存成新文件 得到一个android文件,然后依然用jeb进行分析

总共的输入字符是30,然后s1是输入的前12,然后调用函数进行base64加密。

上面的加密函数是对后面部分进行处理,C的长度的32,

对syclover进行MD5加密处理分析一下就是将key的第0位进行插入。第0位是8。因此进行就是直接奇数位。两段拼接在一起:sctf{W3lc0me~t0_An4r0id-w0rld}

THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发
  • 管埋员

    昵称

  • 取消
    昵称