【问题标题】:Securing files on IPhone保护 iPhone 上的文件
【发布时间】:2010-05-15 21:01:18
【问题描述】:

有没有办法从 iPhone 应用程序中反编译二进制文件。 我越狱了我的 iPhone,并惊讶地发现其他应用程序的 dbs 可以被复制。 所以我导出了我最重要的表并将其硬编码为代码。 我没有将表从数据库加载到数组中,而是生成了填充数组的代码并只保留了最基本的数据库信息,因此关系仍然有效。 花了一段时间,但现在可以正常工作了。

我只是想知道我是否安全,有人可以轻松反编译应用程序的二进制文件并提取数据。在 Java 中,它很容易反编译 *.class 文件,尽管我认为 iphone 应用程序更底层的字节码。

我知道 iPhone sdk 4 可以将文件标记为安全。任何人都知道这可以被越狱覆盖还是这是一个 unix 锁?

【问题讨论】:

  • 我很想知道问题中提到 反编译 二进制文件的部分的答案,到目前为止,任何答案都没有解决这个问题。目前有可用的工具吗?

标签: iphone security jailbreak


【解决方案1】:

没有加密数据,你真的只能受到人们缺乏动力的保护。如果有足够动力的人想要查看数据,他们可以。即使您加密了数据,如果他们的密钥在您的代码中或由您的代码生成,他们也可以找到它。

【讨论】:

    【解决方案2】:

    说实话,Apple 无法获得一块砖头。 iPhone一开始就几乎连续越狱。与开发人员相比,用户(阅读黑客:)对设备的控制更多。您无法真正保护设备上的内容。如果使用加密,则没有什么可以阻止攻击者获取密钥。 (他可以控制所有库,并且可以挂钩任何他想要的函数调用。)

    看到开发人员依赖Security Though Obscurity 是很常见的,我不会接受这些想法。如果设备上有数据,黑客可以并且将会复制它。

    【讨论】:

    • 是的,我重命名了所有表格和字段。一张表有很多我手动发现的 GPS 数据,所以不想复制。我提取了该表中的所有数据并生成了代码来填充存储该表的 NSDictionary 并在应用程序启动时运行它。我填写了 id 字段,因此其他关系仍然有效。如果我需要表格中的一行,我会找到 id,然后在内部 NSDictionary 中查找它。似乎工作正常。我的下一个应用程序肯定会在设计中添加混淆(所以我不确定如何拼写它:))。
    【解决方案3】:

    我越狱了我的 iPhone 并且是 惊讶地发现其他应用程序的数据库范围很广 打开即可复制。

    没有。这并没有错。它必须存储在某个地方。

    所以我导出了我最重要的表 并将其硬编码为代码。

    糟糕的举动。

    从特权域越狱是手机中的漏洞,不是您的问题。您对此无能为力,即使加密您的数据也无法拯救您,因为手机上的所有特权代码都可以访问加密密钥。

    换句话说:

    代码通常不会怀有敌意并窃取您的商品。唯一的原因是用户在手机上下载了错误代码或发生了远程攻击。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-07
      • 1970-01-01
      • 2014-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多