【问题标题】:How to protect the iOS application in case of any OS attack(On jail broken devices)如何在任何操作系统攻击的情况下保护 iOS 应用程序(在越狱设备上)
【发布时间】:2012-01-23 11:07:23
【问题描述】:

我想保护我的应用程序数据,以防在越狱的 iOS 设备上遭到任何操作系统攻击或未经授权的访问。在这种情况下,有什么方法可以检测此类威胁并保护应用数据。

【问题讨论】:

  • 保护用户的数据,或应用中包含的您自己的数据?
  • 需要保护用户的数据。我打算在 SQLite DB 文件中保持相同

标签: ios cocoa-touch jailbreak unauthorized


【解决方案1】:

越狱对问题没有任何影响,您必须假设有人可以获取文件。

您可以设置文件保护以保护数据,例如

NSDictionary*   attr = [NSDictionary dictionaryWithObjectsAndKeys:
    NSFileProtectionComplete, NSFileProtectionKey, nil];
[[NSFileManager defaultManager] setAttributes: attr ofItemAtPath: path error: &error];

【讨论】:

    【解决方案2】:

    虽然我同意 jrturton 的说法,但如果您有想要保护的关键数据免受流氓应用(而不是用户)的侵害,您可以尝试以下操作:

    1) 检测您的应用是否已在越狱设备上启动。关上 应用程序,删除敏感数据。请参阅此this 线程。

    2) 使用第三方解决方案,例如来自EnsureIT 的解决方案。他们是 在保存应用程序存储的关键数据方面有些帮助,从 越狱设备上的流氓用户/应用程序。

    3) 尝试混淆您的代码。有关this 链接的更多信息。

    您还可以从this 线程的讨论中找到有用的东西

    【讨论】:

      【解决方案3】:

      如果用户已经越狱了他们的设备,那么他们就放弃了保护他们数据的任何期望。这不是你的问题。你想处理那些做过这件事的人的支持请求吗?

      【讨论】:

        【解决方案4】:

        不,无论如何,您都无法阻止操作系统(无论是否受到攻击)读取应用程序的内存。甚至不要被愚弄去思考,混淆/“加密”任何将被解密以在同一受感染设备上使用的东西是一种红鲱鱼,并且根据定义是可以规避的。

        根据您的应用到底应该做什么,您也许可以实现一些功能,但在此过程中不必知道任何敏感数据。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-10-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多