如何从App Store下载.ipa文件

概略

这里有三种方式从App Store上下载iOS app的.ipa文件

  1. 使用 Apple Configurator 2 (常规方式)
    • 需要Mac
    • 需要苹果手机
    • 苹果账号
  2. 使用 ipatool (一般方式) 可实现自动化下载
    • 需要电脑
    • 苹果账号
  3. 使用越狱中的 executable dumper (非常规方式)
    • 需要电脑
    • 越狱的手机

方法一:使用 Apple Configurator

  1. 在手机上从app stroe下载目标app
  2. 在MAC上打开 Apple Configurator 2 并登录你的苹果账号
  3. 将手机使用usb连接MAC
  4. 进入Apple Configurator 2选择你的手机
  5. 在顶部点击+按钮,然后下载目标app
  6. 然后会提示app已经存在,此时不要点击任何提示按钮,直接去下方路径即可找到目标app的.ipa
~/Library/Group\ Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps/

具体图解可参考:iOS获取app store中的ipa包及获取ipa包中的图片

方法二:使用 ipatool

此工具可在多个平台使用,可到ipatool项目地址下载对应平台版本

可通过自定义命令实现自动下载app的.ipa,如使用CICD监控app更新后自动下载文件

以下在mac平台上演示

  1. mac上使用brew安装ipatool

    brew tap majd/repo
    brew install ipatool
  2. 登录账户

    ipatool auth login -e <appleId> -p <password>
  3. 下载目标app的.ipa

    ipatool download -b <bundleId>
  4. 记住密码的形式运行命令

    # 增加参数:--keychain-passphrase --non-interactive
    # 使用此种方式即可实现自动化环境
    # 如:
    ipatool auth login -e 'xxx@qq.com' -p 'password' --keychain-passphrase --non-interactive
  5. 简单完整示例

    # 登录 非交互模式
    ipatool auth login -e <苹果账号> -p <密码> --keychain-passphrase --non-interactive
    # 下载 非交互模式,默认授权app,返回格式json
    ipatool download -b <包名> --keychain-passphrase --non-interactive --purchase --format json

Demo

方法三:使用越狱中的 executable dumper

在手机上:

  1. 越狱
  2. 打开 Cydia
  3. 添加源 «https://build.frida.re»
  4. 搜索并安装Frida

电脑上操作:

  1. 安装 frida

    pip3 install frida-tools
  2. 安装 frida-ios-dump

    git clone https://github.com/AloneMonkey/frida-ios-dump.git
    cd frida-ios-dump
    pip3 install -r requirements.txt --upgrade
  3. 安装 usbmuxd

    brew install usbmuxd
  4. 使用ssh连接手机

    iproxy 2222 44 & sleep 3
    ssh -p 2222 root@localhost # default password: alpine
  5. 获取.ipa

    cd frida-ios-dump
    python3 dump.py "<your_bundle>" # default password: alpine

总结

如果有大量需求建议使用ipatool的防晒,可以方便的写脚本实现自动化

来源:https://testableapple.com/note-8/


发表评论 登录

目前评论:0