iT邦幫忙

2026 iThome 鐵人賽

DAY 23
0

現在要開始來解最後一周的內容啦,原本預計DAY25才要開始,沒想到現在就要做了,目前想法是每一部份2天,DAY29的時候做一個防護整理,DAY30寫心得

甚麼是CSRF?

Cross-site request forgery(跨站請求偽造),是利用網頁對於使用者瀏覽器過於信任的攻擊手法。
許多網頁在使用者登入後會保存使用者的Cookie來讓使用者可以更方便的進行操作,在往後瀏覽時自動帶著這個身分驗證Cookie。
但是若網頁設定不佳,網站認定帶著Cookie的就是使用者本人時,攻擊者就可以透過這種信任關係使用例如釣魚網址,腳本等方法操作使用者瀏覽器後來冒充使用者進行操作

Webgoat A5 Cross-Site Request Forgeries 號碼3(題目1)

https://ithelp.ithome.com.tw/upload/images/20261006/20184109LSgi67Mzs7.png

這關要讓我們體驗一下CSRF大概是甚麼感覺
先點一下Submit Query試試看

https://ithelp.ithome.com.tw/upload/images/20261006/20184109smPqqlrqQA.png

可以看到由於我們沒改過封包,所以使用的是原始HOST,自然而然無法通過
那麼,讓我們來擷取封包試試看

https://ithelp.ithome.com.tw/upload/images/20261006/20184109bhtSeckACv.png

HOST和Referer改過後都能過這關,這關我猜是讓我們體驗使用同個cookie登入不同網頁,所以改的是Host,我原本還以為是想讓我們體驗從不同來源連到網頁所以一直改Origin

https://ithelp.ithome.com.tw/upload/images/20261006/20184109VDgHc6a0Qu.png

https://ithelp.ithome.com.tw/upload/images/20261006/20184109mkOItRdHIs.png

這裡改端口也能過的原因是因為網頁本身有同源協議,要同時滿足同協議(例如都是Https或Http),同網域(例如都是Webgoat),以及這次我們利用的同連接埠(都是後面的8080之類的數字),才會被判斷為同樣來源

Webgoat A5 Cross-Site Request Forgeries 號碼4(題目2)

https://ithelp.ithome.com.tw/upload/images/20261006/201841091efz07kMiE.png

又是我們好久不見的留言板,這題我們要做的事情和上面那題一樣,所以我們先隨便發一個留言然後擷取封包

https://ithelp.ithome.com.tw/upload/images/20261006/201841093jAPK2qwBu.png

可以看到這題依舊要我們傳送封包到不同的Host,讓我們像上一題一樣進行修改

https://ithelp.ithome.com.tw/upload/images/20261006/2018410931ynhUAK3M.png

發送成功,讓我們F5重新刷新看看

https://ithelp.ithome.com.tw/upload/images/20261006/20184109Tl2TS0v9l0.png

一共三個封包,一個是用來擷取時的,一個是在Burp Suite裡面確認擷取到正確封包的,最後一個便是我們剛剛改過的封包了,可以看到身分都相同,都是我的mingming

明日內容: CSRF(下)


上一篇
[DAY22]仿生人是否會夢見網頁山羊? --Broken Access Control 防護方法
系列文
仿生人是否會夢見網頁山羊? 資安小白的30天Webgoat闖關紀錄 共 23 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言