美文网首页
查找苹果审核2.3.1混淆代码

查找苹果审核2.3.1混淆代码

作者: iLeooooo | 来源:发表于2019-12-04 15:21 被阅读0次

    提审应用到App Store,苹果回复2.3.1,说我们使用了代码混淆,然后给出代码示例:[UndesignedDogSleigh blownWelshBlack:orderId:amount:currencyType:payType:order:],要我们删除这个或者详细解释这个代码。那么我们怎么在自己的项目里面找到这个呢?

    如果源代码里面找不到这些代码,那么一般就在使用的第三方库里面了。

    1. 拿到我们打包得到的IPA文件
    1. 改后缀为zip,解压拿到xxx.app文件,在查看包内容,拿到项目的可执行文件(Mac-O)
    2. 复制到桌面,打开iterm2
    3. 使用命令:$ nm /Users/xxx/xx/刚才得到的(Mac-O)文件
    4. 在结果中搜索苹果给的代码示例即可。
    5. 找到方法之后,可以看到方法是属于哪个类的,得到类名
    6. 查看使用到的三方库有哪些类,方法如下。
    

    2. 扩展:可以用此方法来查看静态库,动态库,.a文件

    • 拿到库的可执行文件(Mac-O)进行上面的步骤即可

    3. 查看使用到的三方库有哪些类

      1. 拿到可执行文件Mac-O或者.a
      1. 打开iterm2,使用命令:$ ar - t /Users/xxx/xx/xx.a文件
      1. 报错:
    r: /Users/xxx/Desktop/XXSDK is a fat file (use libtool(1) or lipo(1) and ar(1) on it)
    ar: /Users/xxx/Desktop/XXSDK: Inappropriate file type or format
    
      1. 查看该Fat Mac-O文件包含哪些架构 $ otool -Vf /Users/xxx/Desktop/XXSDK
    Fat headers
    fat_magic FAT_MAGIC
    nfat_arch 2
    architecture armv7
        cputype CPU_TYPE_ARM
        cpusubtype CPU_SUBTYPE_ARM_V7
        capabilities 0x0
        offset 48
        size 1614872
        align 2^2 (4)
    architecture arm64
        cputype CPU_TYPE_ARM64
        cpusubtype CPU_SUBTYPE_ARM64_ALL
        capabilities 0x0
        offset 1614920
        size 2016512
        align 2^3 (8)
    Archive : /Users/xxx/Desktop/XXSDK (architecture armv7)
    Archive : /Users/xxx/Desktop/XXSDK (architecture arm64)
    
      1. 得到arm64的瘦可执行文件 lipo /Users/xxx/XXSDK -thin arm64 -output /Users/xxx/XXSDK_64
    • 6.再使用第2步的方法查看类名,即可得到结果。
      1. 比对类名就可以知道示例代码属于哪一个三方库了。
    或者可以直接使用class-dump来直接导出头文件

    class-dump官网

    $ mkdir ~/.bin
    $ mv /Users/xx/Desktop/class-dump ~/.bin
    $ chmod 777 ~/.bin/class-dump
    

    .bash_profile或者.zshrc中加入环境变量的路径:
    export PATH=$HOME/.bin/:$PATH

    相关文章

      网友评论

          本文标题:查找苹果审核2.3.1混淆代码

          本文链接:https://www.haomeiwen.com/subject/lkclgctx.html