2012-03-07 74 views
0

我打算構建我的第一個移動web應用程序,並且我發現Android 2.3的瀏覽器並未實現httponly。有什麼方法可以防止沒有httpOnly支持的會話劫持?

什麼是一些技術來緩解這個問題?這是失敗的原因嗎?

+0

除了XSS之外,還有很多攻擊媒介需要防範,以確保會話不受劫持。請參閱https://www.owasp.org/index.php/Session_hijacking_attack – Cheekysoft 2012-03-07 15:55:14

+0

我特別擔心在受到攻擊的Android瀏覽器中嗅探。 – avgvstvs 2012-03-08 00:44:18

+1

如果您擔心嗅探,那麼最重要的事情之一就是通過HTTPS運行您的服務(確保HTTP始終重定向到HTTPS *並退出*),並確保cookie上設置了安全屬性以限制它們僅對HTTPS(當然也對XSS進行防禦,也考慮CSRF保護)。請注意,對HttpOnly的支持不利於嗅探攻擊。 – Cheekysoft 2012-03-08 12:51:23

回答

1

HttpOnly標誌的用途是通過禁止JavaScript訪問會話cookie來限制Web應用程序中的跨站點腳本(XSS)漏洞。如果您的Web應用程序首先被正確編寫,也就是說,如果它對XSS不易受攻擊,那麼您並不嚴格需要HttpOnly標誌是安全的(基於XSS)會話劫持。 HttpOnly只是第二道防線。

如此有效,如果由於客戶端限制而無法使用HttpOnly標誌,那麼在使用HTML,JS,CSS,JSON或其他格式生成時,應確保將所有動態數據正確地轉義根據上下文適當的轉義規則,以防止XSS。或者使用一個爲你做這個的框架。

+1

請參閱https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting).p_vention_Cheat_Sheet – Cheekysoft 2012-03-07 15:56:20

+0

我的擔憂不是*我的*應用程序。我擔心試圖捍衛在其他人試圖竊取我的cookie的Android瀏覽器上的會話劫持攻擊。 (爲了記錄,我不是一個測試者,我甚至不知道這是否是真正的威脅。) – avgvstvs 2012-03-08 00:42:42

+0

Cookie竊取和會話劫持/注入確實是真正的威脅。但是,它們只能通過重新編碼其cookie希望安全的Web應用程序來解決。除了不使用服務,或者確保您只使用HTTPS版本的服務(但在後者中,您仍然可以通過手動輸入來保存cookie模式中間的問題,如果cookie沒有設置爲HTTPS) – Cheekysoft 2012-03-08 12:58:07