我試圖使用表單密鑰方法csrf protection
這裏http://net.tutsplus.com/tutorials/php/secure-your-forms-with-form-keys/。但它僅適用於頁面上的一個表格。我的問題是csrf的保護
假設我有一個形式
<form action="action.php" method="post">
<!-- code here -->
</form>
和我的PHP我使用
<?php
if(isset($_POST['submit']) && isset($_SESSION['user']))
{
//do something
}
我已經使用session user
確認他是否已登錄並和形式由我的網站提交,因爲會議已在我的網站上進行。我是否也必須使用csrf保護方法?
假設我使用會話方法,其中我生成一個表單鍵,並將密鑰發送到PHP驗證的地方。現在的問題是,如果在兩個選項卡中打開同一頁面,並且我刷新新頁面並關閉它。 '會話變量改變'。現在,當我提交第一個選項卡上的表單。它總是會出錯。有時候用戶會這樣'在2個選項卡中打開相同的頁面'。是否還有其他安全的csrf保護方法? – Ace
@ user2894116 - 創建會話時生成令牌,而不是每次加載表單時都生成令牌。 – Quentin
@Jack道歉! 。這個ajax方法需要很多代碼,因爲我的頁面上有很多表單。這裏用其他方式代碼少,安全性相同嗎? – Ace