• 攻防世界Mobile6 app1 XCTF详解


    XCTF_app1

    先安装看看

    点击芝麻开门之后会弹出“年轻人不要耍小聪明噢”

    这大概就能看懂是点击之后进行判断,那就直接去看JEB,看看判断条件是什么

      V1是输入的字符串,V2获取包信息(百度的),V3获取版本名(百度的),V4获取版本号(还是百度的)。剩下的就简单明了了,先判断输入的长度跟版本名长度是否相同,若不相同跳出,若相同继续判断。再循环判断输入的字符串V1的每一个字符是否都等于版本名(V3)与版本号(V4)的异或值相等。

      所以我们逆向要的就是输入的flag==版本名与版本号的异或

      百度看看获取版本名与版本号的方法,发现aapt工具,这个工具其实也挺常用的(指我第一次听说,但是用everything搜到了),在APK改之理(APKIDE)中就有集成

    cmd cd到aapt所在路径,使用aapt dump badging 【apk路径】命令就可以获取相关信息了

    versionCode就是版本号,versionName就是版本名,很简单就能获得这个的异或值

    1 str = "X<cP[?PHNB<P?aj'"
    2 for i in str:
    3     sum = ord(i) ^ 15
    4     print(chr(sum), end='')

  • 相关阅读:
    数独游戏 C++ 回溯法
    DirectX 90 3D 网格一
    DirectX 90 3D SetRenderState 设置渲染状态
    DirectX90 3D 字体
    DirectX 90 3D 外接体
    VS2005下配置OGRE
    DirectX 90 3D 网格二
    Java反射机制
    UBUNTU下安装 APACHE+PHP+MYSQL文本服务器!
    关于那个SMTP类及一个例子
  • 原文地址:https://www.cnblogs.com/CimeLi/p/12286821.html
Copyright © 2020-2023  润新知