只是有一個想法,假設有一個表單有一個變量存儲一些數據(基於哪個 - 表單將被相應處理)。HTML - 從外部PHP文件後注入
說用戶得到他們的電子郵件轉診/註冊鏈接遵循註冊,假設URL以加密的GET變量,如:http://www.example.com?a42as231Adab
比如有後者從該ID獲取變量的一種形式:
$usersID = decrypt($_GET['user']);
<form method='POST' action='viewdata.php?userID=$usersID'>
因爲用戶可以點擊查看源代碼,他們將很容易地看到行動領先的位置以及解析的用戶ID。
等什麼會阻止某人: 創建自己的服務器上的一個空白的新PHP文件,複製原始形式到他們的PHP文件,並將其更改爲:
<form method='POST' action='viewdata.php?userID=1'>
我的意思是假定在這種情況下用戶ID是連續的,所以1,2,3可能最終成爲管理員。
讓我們說viewdata.php,如果它通知用戶ID是admin,它將允許用戶管理一些東西。
換句話說:有沒有什麼辦法可以阻止表單從任何東西發佈到特定的域?
我知道這可能被認爲是非常差的安全措施,如果用戶可以根據他們的ID給予訪問,但仍然,我對此很好奇,這只是我得到的一個隨機想法。
我不完全確定你的問題是關於什麼的,但我認爲你正在談論CSRF漏洞? – PeeHaa
所以你說的是,當一個用戶使用加密的用戶ID訪問該頁面時,他實際上是以該用戶的身份登錄的(可以說用戶23)? (編輯:)因此,他可能只發布到viewdata.php?userID = 23 –
簡言之:如果表單操作依賴於特定變量,什麼阻止用戶通過從外部域發送表單來更改該變量,從而可以編寫自己的腳本php表單並對其進行修改 – arleitiss