2015-09-20 66 views
2

我一直在閱讀有關cookie,本地和會話存儲以及它們如何與認證相關的信息。爲什麼auth cookie對CSRF敏感,而auth令牌不是

我一直在閱讀的一件事是,API通常不必擔心CSRF與網絡應用程序(閃存相關的漏洞除外?),並且原因與基於cookie的身份驗證和基於令牌的身份驗證有關。

我不明白的是爲什麼一個cookie比一個令牌更容易騎。是否因爲cookie是根據請求的域自動發送的,因爲發送令牌需要進行某些手動操作。最後一句話是否正確?

我覺得我很困惑的一個原因是因爲我使用的框架似乎總是自己實現這個東西,所以我從來沒有深入實施它。

回答

0

是的,當您訪問惡意網站時會發生CSRF攻擊,並且該網站會觸發對合法網站的請求,該請求的瀏覽器將爲implicitly authenticate。例如,如果您仍然使用基於cookie的身份驗證機制登錄到您的電子郵件提供商,並且您碰巧訪問了一個惡意網站,該網站執行從其JavaScript的請求至https://www.youremailprovider.com/inbox,那麼瀏覽器將自動附加它擁有的Cookie存儲爲該域的請求。現在,來自惡意網站的JavaScript只能訪問收件箱中的所有電子郵件。

基於令牌的身份驗證不容易受到這種類型的攻擊,因爲攻擊者網站在向合法網站發出AJAX呼叫之前首先需要竊取令牌。