攻防世界mobile easy-apk

做的第一次apk题
题目来源:攻防世界
拿到apk文件后解压,没有lib,就分析Java源码

攻防世界mobile easy-apk_第1张图片
找到MainActivity,看起来像是base64,但这个new又让人觉得看起来不太对劲,拿去试了之后发现是乱码,果然不是原来的base64算法了。
攻防世界mobile easy-apk_第2张图片
再去分析一波base64new的代码,不是很懂Java,看了一会之后,好像是把base64的表改了一下,接着就自己去写了代码,解密得到flag
攻防世界mobile easy-apk_第3张图片

table2=[118, 119, 120, 114, 115, 116, 117, 111, 112, 113, 51, 52, 53, 54, 55, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 121, 122, 48, 49, 50, 80, 81, 82, 83, 84, 75, 76, 77, 78, 79, 90, 97, 98, 99, 100, 85, 86, 87, 88, 89, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 56, 57, 43, 47]
table1='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
b='5rFf7E2K6rqN7Hpiyush7E6S5fJg6rsi5NBf6NGT5rs'
j=0
base_str=''
while j<=42:
    i=0
    while i<=63:
        if table2[i]==ord(b[j]):
            base_str+=table1[i]
            break
        i=i+1
    j=j+1
print(base_str)

攻防世界mobile easy-apk_第4张图片

你可能感兴趣的:(攻防世界mobile easy-apk)