[SCTF2019]Strange apk (2).zip

一个apk 直接用 jeb 看看程序的逻辑

发现 程序会先对 一个 data 文件进行异或操作,解压apk 在 assets 文件夹下找到 data 文件 然后利用 python 脚本将 文件还原。

key = "syclover"
file_data = open("data", "rb").read()
new_file = open("./mydata","wb")
decode = ''
cout=0  
for d in file_data:
    decode += chr(ord(d)^ord(key[cout % 8]))
    cout+=1

with open('./mydata', 'wb') as f:
    f.write(decode)

得到mydata 文件 发现文件问 apk ,改后缀为 apk ,在逆向分析这个 文件。

看到Mainfest 下主要Activity 的活动是 t 和 s

分析 t 和 s 中的代码

S 函数

发现对 v1 进行了 sctf 函数处理后 比较是否等于 “c2N0ZntXM2xjMG1l

sctf 函数

发现是 base64 加密

t 函数

发现 f 经过 encode 函数后等于 “~8t808_8A8n848r808i8d8-8w808r8l8d8}8”