攻防世界mobile新手入门第一题 app1

攻防世界mobile新手入门第一题 app1_第1张图片

最重要的一步:下载app,安装然后认真的去运行:

攻防世界mobile新手入门第一题 app1_第2张图片

  1. 随意输入会收到提示“再接再厉,加油~”,不输入的话提示“年轻人不要耍小聪明噢”。除了被调戏没有可获取信息的了,所以只能靠逆向扒了她:
  2. 使用(1)jeb直接打开apk 或者 (2)dex2jar反编译apk,使用jd-gui打开jar文件,搜索上述提到的关键字:可以看到主要逻辑了,我们要闯关成功,所以要做到下面这个条件才可以:

    攻防世界mobile新手入门第一题 app1_第3张图片

 

但首先我们要完成这个条件:

 

(有过代码基础的同学可以轻易看出来,没有基础的同学可以把代码复制到百度上,有相关的解释)

其实就是一个异或运算,而异或比较的两个值就是 str1 和 I , 将关键词在代码中查询,可找到:

        然后继续====》

攻防世界mobile新手入门第一题 app1_第4张图片

 

所以到这就很清晰了, 将 15和 X

异或过程把字符串转为ascii码, 15转成16进制,将每个字符转成的ascii码与 “15的16进制”进行异或:

C代码:

攻防世界mobile新手入门第一题 app1_第5张图片

Python代码:

a 和 b 的16进制自己去填

a= 
b=[]
flag=''
for j in b:
    flag +=(a^j)
    print(flag)

 

最后结果为:W3l_T0_GAM3_0ne

你可能感兴趣的:(安卓安全)