【问题标题】:How to extract ipa file from jail broken device如何从越狱设备中提取 ipa 文件
【发布时间】:2021-07-18 13:25:10
【问题描述】:

我有一部越狱的 iPhone 5s,我想提取我在该设备上安装的一个应用程序的 .ipa 文件。这可能吗?如果可以,怎么做?

是否可以在不越狱的情况下从 iPhone 中提取 .ipa 文件?我的目的是对应用程序进行静态分析。

【问题讨论】:

  • 无需越狱:如果是 App Store 应用,请与 iTunes 同步以将它们放入 iTunes 的资料库文件夹中。越狱:IPA 在安装过程中被提取并删除,但您可以在 iOS 8 上的 /var/mobile/Containers/Bundle/Application/SOME-LONG-UUID/ 和 iOS 9 上的 /var/containers/Bundle/Application/SOME-LONG-UUID/ 中找到 .app 包。要轻松找到应用程序的文件夹,请使用 on-设备文件浏览器(例如 Filza)或在 Bundle/Applications 文件夹中运行 find . -name '*.app'。然后使用 SSH 和 SFTP 或 scp 复制文件。
  • 哪个越狱和iOS版本?这决定了答案。 FilzaAppCakeiPAInstaller、一些 Frida 脚本等。

标签: testing jailbreak ipa


【解决方案1】:

由于您有越狱的 iOS 设备,请尝试从Cydia 安装ipainstaller,然后使用ipainstaller 将应用程序解压缩到.ipa 文件。

我使用ipainstaller -l 列出我越狱设备上安装的所有应用程序,并获取您要提取的该应用程序的捆绑ID。使用ipainstaller -b <app_bundle>提取它。

【讨论】:

    【解决方案2】:

    Cydia 的IPA Installer 似乎自 2016 年 7 月以来没有更新。最后一个版本 3.4.1-1 仅支持 iOS 9。

    但是,使用iMazing,您可以获得更接近的结果。如果您之前从 Appstore“购买”/下载了一个应用程序,然后使用同一个 Apple ID 登录 Appstore,您可以再次下载。看起来 iMazing 可能正在使用相同的 Appstore API,因此一旦您登录到相同的 Apple ID,您就可以再次下载 ipa。除了这一次,它将作为 ipa 而不是 iOS 设备下载到您的 Mac。因此,从技术上讲,它不是从 iOS 设备中检索 ipa(无论如何它不再作为 ipa 存在于设备中),而是从 Appstore 获取它。然后您可以继续进行静态分析。

    【讨论】:

    • 虽然 IPA 安装程序的应用程序不再打开,但我能够使用它的 CLI,因为 warfreak92 指示在 iOS 14.8 上成功创建 ipa。我使用 repo.chariz.com 的 NewTerm 2 来完成。
    • 感谢您的评论!我刚试过,事实上,ipainstaller 的 CLI 甚至可以在 iOS 14 上运行。但是,你能安装 IPA 吗?在这样的 IPA 中似乎会破坏签名或其他一些完整性检查?即使重新签名后,我也无法安装 IPA。但我认为它对于执行应用的静态分析可能会很方便和有帮助。
    • 不确定;我的设备上有 AppSync Unified,因此它不需要正确签署 IPA。我支持他们,希望将来用 github.com/maciekish/iReSign 重新签署他们就足够了。顺便说一句,如果您只是想获得仍在应用商店中的旧版本应用,您可以使用 AppStore++ 来做到这一点。
    猜你喜欢
    • 2011-03-31
    • 2019-04-16
    • 2014-06-05
    • 1970-01-01
    • 1970-01-01
    • 2019-01-24
    • 1970-01-01
    • 2016-09-19
    • 2020-10-23
    相关资源
    最近更新 更多