阿摩線上測驗 登入

申論題資訊

試卷:104年 - 104 身心障礙特種考試_三等_資訊處理:程式語言#24069
科目:程式語言
年份:104年
排序:0

申論題內容

二、網頁應用程式常見的安全漏洞有跨站請求偽造(cross-site request forgery),請說明 造成此安全漏洞的原因,以及如何避免此問題之措施。(20 分)

詳解 (共 2 筆)

詳解 提供者:114年高考上榜

跨站請求偽造(Cross-Site Request Forgery,CSRF)是一種常見的網頁應用程式安全漏洞,它是指攻擊者利用受害者在網站上的身份驗證,向網站發送伪造的請求,以實現攻擊目的的一種攻擊手段。

 
導致此安全漏洞的原因是網站沒有適當的驗證機制來確認來自用戶端的請求是否是有效的。攻擊者利用此漏洞通常會在受害者不知情的情況下,以受害者的身份來執行惡意操作,比如在受害者的帳戶上進行不當的交易、更改密碼等。
 
為了避免CSRF攻擊,可以採取以下措施:
 
驗證請求的來源:網站可以通過檢查請求的來源是否為預期的網站來確保請求的有效性。比如,可以使用同源策略、Referrer檢查等方式來驗證請求的來源是否是合法的。
 
使用CSRF Token:網站可以在用戶發送請求時,在表單中添加一個隨機的token值,並在後端驗證該token值是否合法。攻擊者通常無法知道有效的CSRF Token,因此無法通過伪造的請求進行攻擊。
 
縮短Cookie的有效期:攻擊者利用CSRF攻擊時通常需要利用受害者的Cookie,因此,網站可以通過縮短Cookie的有效期來限制攻擊者的攻擊時間。
 
增強身份驗證:網站可以增強身份驗證機制,比如要求用戶輸入密碼或使用多因素身份驗證,進一步提高網站的安全性。
詳解 提供者:hchungw

跨站請求偽造(Cross-Site Request Forgery,CSRF)是一種網頁應用程式的安全漏洞,攻擊者可以通過受害者的身份向應用程式發送未經授權的請求,這些請求通常會在受害者不知情的情況下執行。這種攻擊的目的是利用受害者的身份驗證權限來執行不應該由攻擊者授權的操作。

原因

CSRF 攻擊的主要原因在於:

  1. 會話維護機制:現代的網頁應用程式通常使用 cookies 來維護使用者的會話狀態。當使用者已經通過身份驗證並在瀏覽器中保留了會話 cookie,攻擊者可以利用這一點,發送請求並讓瀏覽器自動附帶這些會話 cookie。
  2. 缺乏請求來源驗證:應用程式通常不會檢查請求是否來自可信任的來源,只要請求攜帶了合法的身份驗證信息(例如會話 cookie),應用程式就會處理該請求。

避免措施

避免 CSRF 攻擊的方法主要有以下幾種:

  1. CSRF Token

    • 原理:每次發送表單請求時,應用程式會生成一個唯一的、不可預測的 token 並將其嵌入到表單中。當表單提交時,該 token 會被一同發送到伺服器。伺服器驗證這個 token 是否有效,如果無效則拒絕該請求。
    • 實現:在伺服器端生成 CSRF token,將其包含在每個表單中。伺服器端驗證請求中包含的 token 是否正確。