2014-04-10 110 views
-2

首先,我没有任何代码在我的问题中显示,因为我仍在设计应用程序结构,因为我只开发了设计。我的应用程序是否安全?

我正在构建一个手机应用程序,我试图尽可能保证安全,我知道这对我的应用程序来说并不是那么必要,但仍然是一种很好的做法。

我的应用程序在Angular上有phonegap,服务器端可以通过https访问,并且是具有mongoDB的nodejs,是一个无状态的服务器,restful api。

一旦用户登录(使用用户和密码或Facebook),会话ID就存储在客户端(角度cookie),并且在每次访问服务器时都需要(检查是否有用户登录与该会话ID)。

我也听说过表单令牌,所以我实现了这一点 - 在每个最终会向服务器发送请求的表单上(例如,更改用户信息并保存),它还需要一个表单令牌,随机值为会话生成的表单 - onLoad函数调用服务器以生成特定的表单令牌。

看起来很酷,但仍不确定它是否有任何好处。通过考虑它,有人可以调用我的宁静方法,通过使用他发现的会话ID(通过暴力破解或其他方式)来生成他想要的任何表单标记,然后调用任何其他宁静的方法来为该用户更改任何内容。另外,我的服务器应限制为只能从应用程序访问...不能限制源,因为IP从电话更改为电话...我的服务器应具有哪些限制?

我是网络应用安全和任何建议的首发,解释和帮助将真的帮助!我的应用程序足够安全吗?

+0

的现实的答案是 “可能不会。”这不是因为你所说的任何事情 - 这只是普遍的答案。第一次尝试没有人获得安全。这样一个简短的功能清单是不够的,因为攻击者不仅限于您的清单或仅限于您认为应用清单的应用程序部分。例如,您的密码哈希可能容易受到旁路攻击,或者您可能有XSS漏洞,或者您的会话ID可能是可以猜测的。最好是尽可能偏执,并假设你有些脆弱,除非经过审计。 – Chuck

+0

这不是说放弃。只是这样,实际上,安全是很难的。尽你所能,但不要过度自信。 – Chuck

回答

相关问题