關於 HTTP Request 的漏洞│鼠年全馬鐵人挑戰 #23
網站主要是以 HTTP來進行資料存取
客戶端透過 HTTP Request 請求向 Server 端取得網站資料(客戶端 → Server 端)
HTTP Verb (動詞)
HTTP 定義中有 5 種 HTTP Verb 來做請求,若沒有正確使用,會造成一些漏洞。
五種 HTTP Verb 對應的網站行為:
GET: 查詢資料
POST: 新增資料
DELETE: 刪除資料
PUT、PATCH: 修改資料
HTTP GET
HTTP GET 對應的網站行為是「查詢資料」
使用 HTTP GET 很容易在網址上被駭客猜出意圖,所以做網站時要留意敏感資訊。
HTTP POST
HTTP POST 對應的網站行為是「新增資料」
駭客可以在開發者工具中的 Network > Headers 複製 cURL 程式碼到電腦終端機做資料上傳動作,達到攻擊目的。
HTTP PUT/PATCH
HTTP POST 對應的網站行為是「修改資料」
駭客可以在開發者工具中的 Network > Headers 複製 cURL 程式碼到電腦終端機做資料修改動作,達到攻擊目的。
HTTP DELETE
HTTP POST 對應的網站行為是「刪除資料」
駭客可以在開發者工具中的 Network > Headers 複製 cURL 程式碼到電腦終端機做資料刪除動作,達到攻擊目的。
所以一旦駭客了解對應欄位資料 (cookie、id…) 怎麼填,就能正確發送 HTTP Request,改動網站上的資料,造成威脅。