【问题标题】:Not able to disassemble iOS Banking app无法反汇编 iOS 银行应用程序
【发布时间】:2017-06-04 13:06:27
【问题描述】:

我使用 hopper disassembler 来反汇编 iOS 应用。它适用于大多数应用程序。

然而,今天我只是好奇地想了解一个银行应用程序,所以我试图拆解它。因此,我将应用程序从我的越狱设备移到了我的 mac,当我试图用 hopper 拆卸它时,它只会给我一些无用的东西。

为什么会这样?这个银行应用程序的二进制文件是否加密?如果是,那我该如何解密呢?

他们究竟做了什么来混淆代码?他们的代码与其他应用程序代码有何不同?

我使用 iFunbox 将应用程序的可执行文件从我的 iPhone 下载到我的 mac。以这种方式导出的所有应用程序在拆卸时都没有问题。所以我认为 iFunbox 会删除 DRM。只有这个特定的银行应用程序不起作用。

我什至尝试了类转储,它只给了我一个名为 CDStructures.h 的文件,其中没有任何内容。

【问题讨论】:

  • 鉴于它是一个银行应用程序,代码可能会以某种方式被混淆。
  • 他们究竟做了什么来混淆代码?有没有办法查看实际的组装说明?他们的代码与其他应用程序代码有何不同?我什至尝试了类转储,它只给了我一个名为 CDStructures.h 的文件。
  • 有一些工具可以混淆方法名,例如使用宏。他们也可以只使用 C。没有看到应用程序就很难说。

标签: ios disassembly ida hopper


【解决方案1】:

您需要移除 iOS 应用加密(称为FairPlay)。由于您有越狱设备,您可以执行此操作。至少有one tool 可以做到这一点。

如果您对加密的 IPA 有疑问,可以使用以下命令:

otool -l BINARY | grep -A 4 LC_ENCRYPTION_INFO

另外请记住,在某些国家/地区拆卸可能是非法的。

【讨论】:

  • 我的回答有什么问题?在原始问题中,我没有看到有关已删除 FairPlay 的任何信息。
  • 我使用 iFunbox 将应用程序的可执行文件从我的 iPhone 下载到我的 mac。以这种方式导出的所有应用程序在拆卸时都没有问题。所以我认为 iFunbox 会删除 DRM。只有这个特定的银行应用程序不起作用。
  • FairPlay 似乎用于加密音频文件 (MP4) 而不是应用程序。
  • @JackG。您从 AppStore 安装的所有 IPA 文件均已加密。如果不删除 FairPlay,您将无法反汇编应用程序。
  • @JohnTracid 你是对的,我跑了 otool -l BINARY | grep -A 4 LC_ENCRYPTION_INFO 在二进制文件上,它给了我 cmd LC_ENCRYPTION_INFO_64 cmdsize 24 cryptooff 16384 cryptsize 5619712 cryptid 1。请注意,cryptid 是非正数,因此应用程序已加密,我必须解密可执行文件。欲了解更多信息iphonedevwiki.net/index.php/Crack_prevention
【解决方案2】:

在 SF(2017 年)的 RSA 展会上,我遇到了一家公司,该公司的产品可用于混淆 iOS 和 Android 代码。他们演示了一个场景,网页可以在用户不知情的情况下越狱手机,并修补应用程序以将银行凭证发送给第三方,同时似乎主要为用户工作。这代表了足够的弱点,以至于市场上至少有 2 种工具可以处理它(Arxan 和 Preemptive,就 Google 的快速收益而言)。我对它的复杂程度感到惊讶,但显然,对于具有高价值和高敏感性的公司来说,这是一个值得缓解的攻击媒介……比如银行应用程序。如果他们这样做,我一点也不惊讶。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-04
    • 2010-09-08
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多