2017-02-01 72 views
2

隱式流程被認爲是不安全的。我知道兩個問題:隱式流程的安全隱患是什麼

  1. Confused deputy。但爲了克服它,你只需要檢查access_token是否提供給你的應用程序。沒什麼大不了的。
  2. XSS攻擊。因此,如果我們的access_token通過XSS攻擊被盜,它可以用來發出請求(這是我們最初請求的範圍的一部分)。它很糟糕,但很難竊取access_token,因爲最有可能我們只有在我們的登錄頁面上纔有它,並且沒有存儲在應用程序狀態中,因爲它很短(我猜這就是爲什麼隱式工作流程不支持刷新標記)。

它看起來不錯。是否還有其他安全漏洞,我不知道?

回答

1

正確的說法應該是

隱式流量是不安全相對的代碼(和混合)流動。

如果攻擊者想要使用的代碼(混合動力)流從一個應用程序竊取用戶的訪問令牌,然後攻擊者闖入服務器網絡,要麼發現應用祕密或從服務器竊聽網絡流量谷歌(這是HTTPS)來獲取對訪問令牌的保留。

在隱流動訪問令牌駐留在瀏覽器中。在這種情況下,攻擊者有很多其他的可能性來竊取令牌,而不必妥協網絡。

  • XSS(因爲你已經解釋的)
  • 困惑副手的問題(因爲你已經解釋的)
  • 會話固定問題(使用用戶A在用戶B的會話令牌。https://www.facebook.com/FacebookforDevelopers/videos/10152795636318553/
  • REDIRECT_URL參數操縱
  • (可能)令牌泄漏帶引薦頭
  • 各種網絡釣魚和社會工程的可能性,以欺騙用戶不是要求他們passwo泄露他們的訪問令牌(更容易rd)

但正如您所說,如果您是一位具有安全意識的開發人員,則可以直接減輕所有這些錯誤。但是如果實現隱式流程,仍然有機會發現這些漏洞。因此,如果您不將令牌傳遞給瀏覽器並處理服務器端組件中的令牌(代碼流),那麼這可能是個好主意。

相關問題