2014-04-10 116 views
-2

首先,我沒有任何代碼在我的問題中顯示,因爲我仍在設計應用程序結構,因爲我只開發了設計。我的應用程序是否安全?

我正在構建一個手機應用程序,我試圖儘可能保證安全,我知道這對我的應用程序來說並不是那麼必要,但仍然是一種很好的做法。

我的應用程序在Angular上有phonegap,服務器端可以通過https訪問,並且是具有mongoDB的nodejs,是一個無狀態的服務器,restful api。

一旦用戶登錄(使用用戶和密碼或Facebook),會話ID就存儲在客戶端(角度cookie),並且在每次訪問服務器時都需要(檢查是否有用戶登錄與該會話ID)。

我也聽說過表單令牌,所以我實現了這一點 - 在每個最終會向服務器發送請求的表單上(例如,更改用戶信息並保存),它還需要一個表單令牌,隨機值爲會話生成的表單 - onLoad函數調用服務器以生成特定的表單令牌。

看起來很酷,但仍不確定它是否有任何好處。通過考慮它,有人可以調用我的寧靜方法,通過使用他發現的會話ID(通過暴力破解或其他方式)來生成他想要的任何表單標記,然後調用任何其他寧靜的方法來爲該用戶更改任何內容。另外,我的服務器應限制爲只能從應用程序訪問...不能限制源,因爲IP從電話更改爲電話...我的服務器應具有哪些限制?

我是網絡應用安全和任何建議的首發,解釋和幫助將真的幫助!我的應用程序足夠安全嗎?

+0

的現實的答案是 「可能不會。」這不是因爲你所說的任何事情 - 這只是普遍的答案。第一次嘗試沒有人獲得安全。這樣一個簡短的功能清單是不夠的,因爲攻擊者不僅限於您的清單或僅限於您認爲應用清單的應用程序部分。例如,您的密碼哈希可能容易受到旁路攻擊,或者您可能有XSS漏洞,或者您的會話ID可能是可以猜測的。最好是儘可能偏執,並假設你有些脆弱,除非經過審計。 – Chuck

+0

這不是說放棄。只是這樣,實際上,安全是很難的。盡你所能,但不要過度自信。 – Chuck

回答

相關問題