Helloword+findit


这两道题是安卓逆向的题目~
第一次接触安卓逆向的题目~
工具下载: https://down.52pojie.cn/Tools/

Helloword

“apk APK是Android Package的缩写,即Android安装包(anapk)。

BUUCTF-Reverse:helloword + findit(安卓逆向)

测试文件:https://buuoj.cn/files/c8f1972d61784f14dc7f86eea83a791f/6176cfc5-d473-4453-a000-29e480ace634.apk?token=eyJ0ZWFtX2lkIjpudWxsLCJ1c2VyX2lkIjoxOTAzLCJmaWxlX2lkIjoxOTd9.XYmSTQ.-7o2s6Vz649VEwuJOcpO2BE15Gw

我这里在模拟器中安装这个APK文件
BUUCTF-Reverse:helloword + findit(安卓逆向)
对于APK文件的处理,通常是先将它反编译成smali的虚拟机可执行文件,再去对他进行处理(工具用的是APKIDE,自动拖进去就可以进行反编译)
BUUCTF-Reverse:helloword + findit(安卓逆向)
得到:flag{7631a988259a00816deda84afb29430a}

findit

BUUCTF-Reverse:helloword + findit(安卓逆向)
下载用APKIDE打开,(打开smoli找到主函数)发现两串奇怪的16进制数?
BUUCTF-Reverse:helloword + findit(安卓逆向)
BUUCTF-Reverse:helloword + findit(安卓逆向)
右键转ASCII也转不了~
直接扣下来(放word里面,变成不换行的)
BUUCTF-Reverse:helloword + findit(安卓逆向)
BUUCTF-Reverse:helloword + findit(安卓逆向)
,用python脚本编译,

第一串没有什么是个提示~说flag就在这里:
BUUCTF-Reverse:helloword + findit(安卓逆向)

chr()函数的参数args在【0,256】,意思就是只能把【0,256】的数字转化为字符串
——》
chr()函数与str函数的区别:

  1. chr()函数是把一个小整数作为参数,并返回对应于ASCII单字符的字符串
  2. str()函数是把任何整数作为参数,返回一个该整数的文本形式的字符串

同理把第二串十六进制数转成对应于ASCII单字符的字符串:
BUUCTF-Reverse:helloword + findit(安卓逆向)
pvkq{m164675262033l4m49lnp7p9mnk28k75}——》flag{m164675262033l4m49lnp7p9mnk28k75}发现没有提交成功!

p—>f : 相差10
v---->l
想到凯撒密码:
BUUCTF-Reverse:helloword + findit(安卓逆向)
flag{c164675262033b4c49bdf7f9cda28a75}

相关文章:

  • 2021-11-04
  • 2021-06-25
  • 2022-12-23
  • 2021-08-14
  • 2022-01-05
  • 2021-11-15
  • 2021-12-02
  • 2021-05-23
猜你喜欢
  • 2022-12-23
  • 2021-07-09
  • 2021-10-15
  • 2021-06-04
  • 2021-06-19
  • 2021-05-22
  • 2021-09-23
相关资源
相似解决方案