2011-08-30 88 views
4

我已經閱讀了一些博客(抱歉沒有提及參考,但我找不到它了),如果您將用戶從https頁面重定向到http頁面,您將失去保護網站安全的所有工作。安全問題關於從HTTPS重定向到HTTP?

所以,可能有人請向我解釋,如果我是對還是錯在這裏以下情形:

  • 是正確的做法是使用HTTPS登錄頁面上,然後重定向他管理頁面以http ,或者這是否會造成安全問題,如Session Fixation劫持,竊取會話等?

  • 或者我還必須保持管理頁面在https?

問題的另一面是:https會允許緩存靜態文件嗎?

我已經閱讀了其他文章,但我仍然感到困惑,因爲有人說'是',有人說'不'。也有人說這取決於瀏覽器。

回答

1

所有內容必須與https一起使用。如果切換到http,每個人都可以看到正在發送的內容,這意味着您提到的安全問題將會出現。

原因是,您必須識別您的客戶端,才能在您的管理站點中分配訪問權限。這樣做的一種可能性是發回一個令牌(一些散列或其他)。根據您認識的令牌,如果它是經過身份驗證的客戶端。但是其他人確實看到這個令牌=>安全問題。

當然,您可以使用之前的https會話來交換私鑰。並以某種方式使用它來加密你的http內容。但這是一個糟糕的主意,因爲https更方便。

5

在您的實例中(僅在使用HTTPS保護login頁面時),登錄詳細信息將受到保護(例如用戶名/密碼),您的用戶將容易受到會話劫持的影響。

無論您使用HTTP/HTTPS還是全HTTPS混合,都取決於您的情況。例如,亞馬遜將使用HTTPS進行登錄,但您將使用HTTP瀏覽該網站,但只要您進入敏感區域(訂單詳細信息屏幕,更改賬戶/密碼的詳細信息等),就會切換到HTTPS並詢問你重新進行身份驗證。 從HTTP切換到HTTPS後重新驗證用戶是停止會話劫持的關鍵,因爲您正在有效地發佈新的會話令牌。因此,如果用戶竊取會話令牌,他們仍然沒有您的用戶名/密碼,並且無法訪問您的帳戶部分。

如果管理員區域特別敏感,那麼只需HTTPS整個事情。 Google發現,使用完整HTTPS的開銷在CPU上佔用1-5%的開銷,基本上幾乎沒有什麼。

至於對HTTPS我不知道緩存靜態文件,但這個SO後表明,它會緩存正常Will web browsers cache content over https

+0

人真正偉大的答案,像亞馬遜的例子提示,你能告訴我怎麼當他回到像亞馬遜這樣的HTTPS領域時可以遣返用戶? – DevMania