从iPhone安全发送数据

时间:2012-09-28 19:52:17

标签: ios iphone security post webserver

我有以下问题: 我已经了解了如何在iPhone应用程序和WebServer(SSL,Https)之间创建安全登录。 我的问题是在创建会话令牌之后,如何确保如果黑客拦截它,在后续的POST请求中我从同一个用户接收数据?

我问这个是因为每次请求正确时我都必须发送会话令牌吗? (以便能够识别用户)。

我想防止多件事:

  • 会话劫持,有人会嗅探用户令牌并发送数据而不是他(如高分或其他东西)
  • 数据注入使用的数据通常不会从我的应用程序发送,如1.000.000.000高分(可能得分但不容易达到)。

我一直在看:

  • UDID
  • 用户代理(如果它不是来自我的应用程序的应用程序名称,它不好,黑客实际上必须猜测我做这个检查或以某种方式下载我的PHP文件吗?)
  • 该应用来自AppStore。如果请求来自未经Apple批准的应用程序,那就不行了。我真的不确定你是否可以测试一下。如果这样做,黑客就必须实际提交AppStore并下载它以将错误数据插入我的数据库,我希望没有人有时间。
  • MAC地址。不确定Apple是否允许。 IP无效,因为有效用户可能会更改IP。

我可以很容易地跟踪我所看到的Cookie并查看其中的数据。

也许我不是在这里问正确的问题所以它实际上是如何确保我收到的数据来自正确的用户和正确的应用程序?

1 个答案:

答案 0 :(得分:1)

围绕POST请求的SSL的目的是防止传输中的第三方拦截。如果黑客可以访问它,则意味着令牌泄露在客户端(root设备),服务器(不安全的应用程序日志记录/调试)或他们破坏了SSL。 (不可能)

您可以通过捕获设备UDID(苹果不喜欢这样)或与源IP进行比较来执行一些高级检查,但是对于可疑的安全性改进来说,这将是一项很大的努力。

确保所有敏感信息都在SSL中,您应该没问题。