簡體   English   中英

HttpOnly cookies 如何與 Javascript 和身份驗證代理一起使用?

[英]How do HttpOnly cookies work with Javascript and authentication proxies?

我在 OIDC 反向代理后面有一個 web 應用程序 - 換句話說,當我訪問此應用程序時,我被重定向到我的身份提供者,我登錄並且我的瀏覽器設置了一個 cookie,用於后續請求以證明我已經登錄在。

這個 cookie 設置了HttpOnly標志,我認為這是防止惡意網站利用 XSS 漏洞的最佳實踐。

但是,正如預期的那樣,我的應用程序中的 Javascript 無權訪問登錄 cookie,因此在我的瀏覽器控制台中,我看到了對應用程序的請求(嘗試通過 HTTP 請求和 ZBF56D570E622CDB2973C8ZB185 連接更新動態內容) (並被 CORS 策略阻止),因為他們無權訪問登錄 cookie。

  • 這是否意味着這樣的架構不能使用 Javascript 來回調應用程序?
  • 禁用 HTTPOnly 標志以允許 Javascript 在這種情況下工作是否常見?
  • 我的理解是,來自不同來源的惡意網站試圖訪問我的應用程序的 Javascript 無論如何都會被 CORS 阻止,所以保留 HTTPOnly 標志只會有助於抵御攻擊者設法將 Z9E13B69D1D2DA927102ACAAAF7154 注入我的應用程序的攻擊嗎?

這是否意味着這樣的架構不能使用Javascript?

不,這意味着 JS 無法從 cookie 中讀取數據。

我看到返回應用程序的請求(嘗試通過 HTTP 請求和 websocket 連接更新動態內容)被重定向到我的身份提供者(並被 CORS 阻止,因為他們無法訪問登錄 cookie 策略。)

CORS 策略不應阻止請求,因為缺少 cookies。

如果缺少 cookie,則可能是因為 (a) 混淆了您的來源並且該來源沒有 cookie,或者 (b) 您沒有為跨域請求啟用credentials 選項

禁用 HTTPOnly 標志以允許 Javascript 工作是否常見?

不。

我的理解是,來自不同來源的惡意網站試圖訪問我的應用程序的 Javascript 無論如何都會被 CORS 阻止,所以保留 HTTPOnly 標志只會有助於抵御攻擊者設法將 Z9E13B69D1D2DA927102ACAAAF7154 注入我的應用程序的攻擊嗎?

是的。 XSS 攻擊如此普遍,以至於有許多工具可以緩解它們。 這是其中之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM