呂育道Lyuu, Yuh-Dauh臺灣大學:資訊網路與多媒體研究所張詩郁Chang, Shih-YuShih-YuChang2010-05-052018-07-052010-05-052018-07-052008U0001-0707200811254400http://ntur.lib.ntu.edu.tw//handle/246246/180586跨站偽造請求Cross site request forgery (CSRF 或 XSRF)又稱作session riding,名列OWASP於2007年所公佈的年度十大web安全威脅之內,是一個極需要被重視與解決的威脅。跨站偽造請求攻擊是一種利用使用者在信任網站登入認證後以及尚未登出前,誘使受害使用者開啟一個惡意網頁,此惡意網頁會導使用者向信任網站發出非使用者自願且惡意的HTTP請求 (例如:發表文章、寄發信件、甚至是修改使用者的密碼)。如果該信任網站並沒有主動對於跨站偽造請求攻擊作驗證辨識,則該網站會自動認為這個HTTP請求是合法由使用者發出,並且執行該指令,則使用者的私人資料安全就出現了危機。因為跨站偽造請求攻擊不如SQL injection 以及跨站腳本攻擊(XSS attacks) 熱門,目前少數對抗跨站偽造請求攻擊的方法僅能提供部分的保護,且通常需要大幅修改既有的架構,以及幾乎都是以網頁伺服器的角度著手。這代表使用者私密資料的安全程度必須受限於伺服器端,換句話說,倘若伺服器端若沒有針對跨站偽造請求攻擊做防範,則該網站使用者的私人資料安全就會處於危險的地步。這篇論文裡面,我們實作一個程式,架設於Linux作業系統上,這個程式主要針對某台代理伺服器的網頁封包,針對網頁封包做一些修改以及判別的機制,以達到預防跨站網頁偽造請求攻擊的目的,這是一個簡便的方法。一旦使用者使用含有此程式的代理人伺服器瀏覽網頁,便可以有效防範跨站請求偽造攻擊。口試委員審定書 i謝 ii文摘要 iii文摘要 iv一章 緒論 1.1 動機 1.2 背景 2.3 簡介 4二章 相關研究 6.1 跨站請求偽造攻擊 6.2 相關解決方案 8.2.1 基本解決方式 8.2.2 Proxy-based 解決方案 10.3 認證方式 14.3.1 IP authentication 14.3.2 SSL (Secure Socket Layer) authentication 14.3.3 cookie authentication 14.3.4 session authentication 14.3.5 HTTP Authentication 15三章 客戶端解決方法改進 16.1 代理人伺服器 16.2 設計 17.2.1 加入檢查碼的時機 18.2.2 檢查碼的對應機制 19.2.3 檢查碼表格的擴充 19.2.4 程式運作地點 21.2.5 發現疑似跨站偽造請求攻擊的處理 22.3 程式架構 23.4 網頁原始碼之相對路徑以及絕對路徑的比例 24四章 實驗 26.1 功能測試 26.2 效能測試 26.2.1 相對路徑位址與絕對路徑位址的比例 26.2.2 系統效能 27.2.3 效能分析 28五章 總結 29 .1 實驗結論 29.2 未來工作 29.3 討論總結 29六章 參考文獻 30application/pdf319629 bytesapplication/pdfen-US網頁安全跨站攻擊跨站腳本攻擊網頁相對路徑網頁絕對路徑代理伺服器跨站偽造請求攻擊Web securityCross site request forgeryClient-side proxySession ridingCross site reference forgeryRelative URL跨站偽造請求攻擊之客戶端方法改進Enhanced Client-Side Protection for Cross-site Request Forgeriesthesishttp://ntur.lib.ntu.edu.tw/bitstream/246246/180586/1/ntu-97-R95944025-1.pdf