2011-07-07 37 views

回答

1

Connect中的latest Not Yet Released csrf.js似乎正常工作。這只是一對夫婦改變線,所以你可以手動修補它。該修補程序包含在Connect 1.6.2中。

我還沒有使用過「hanssonlarsson」模塊,但看起來這個模塊中的實現選擇是在每次請求檢查時清除csrf標記,這對於簡單的表單/服務器交互來說可以。但是,它不適用於運行來自同一頁面的多個請求的AJAX請求。 當前以前發佈連接代碼(1.6.0)重置會話上的每個http請求上的令牌,這也會中斷除最簡單的交互以外的所有操作。

您可能想要了解CSRF的所有內容都在OWASP cheat sheet上。它建議堅持每個會話固定的csrf令牌,這是新的Connect代碼的作用。

請注意,Connect CSRF中間件檢查所有POST請求上的csrf標記,但不檢查GET。所以你應該包含任何AJAX POST請求的令牌,但不包括GET請求。這也符合備忘單的建議。

+0

偉大的信息mj,你能建議如何安裝csrf.js(最新的連接版本)?所以它可以與需求?我嘗試npm和搜索,但沒有運氣。 –

+0

昨天1.6.2 Connect發佈。這應該包含修復程序並可從npm獲得。 – mjhm