理解Rails的真實性令牌我在Rails中遇到了一些關于真實性令牌的問題,因為我現在已經有很多次了。但我真的不想只解決這個問題繼續下去。我真的很想了解真偽標記。好吧,我的問題是,你是否有關于這個問題的完整的信息來源,或者你是否會花時間在這里詳細解釋?
3 回答

蝴蝶刀刀
TA貢獻1801條經驗 獲得超8個贊
什么是CSRF?
假想:
訪問你銀行的網站,登錄。 然后訪問攻擊者的站點(例如,來自不受信任組織的贊助廣告)。 攻擊者的頁面包括與銀行“轉移資金”表單相同字段的表單。 攻擊者知道您的帳戶信息,并有預先填寫的表單字段,以將資金從您的帳戶轉移到攻擊者的帳戶。 攻擊者的頁面包括向銀行提交表單的Javascript。 當表單提交時,瀏覽器將包含銀行站點的cookie,包括會話令牌。 銀行把錢轉到攻擊者的賬戶上。 表單可以是不可見的iframe,所以您永遠不知道攻擊發生了。 這被稱為跨站點請求偽造(CSRF)。
CSRF溶液:
服務器可以標記來自服務器本身的表單。 每個表單必須包含一個附加的身份驗證令牌作為隱藏字段。 令牌必須不可預測(攻擊者無法猜測)。 服務器在其頁面中的窗體中提供有效的令牌。 當表單發布時,服務器檢查令牌,拒絕沒有正確令牌的表單。 示例令牌:使用服務器密鑰加密的會話標識符。 Rails會自動生成這樣的令牌:請參見每種形式中的RETURY_TOKEN輸入字段。
- 3 回答
- 0 關注
- 606 瀏覽
添加回答
舉報
0/150
提交
取消