CSRF(跨站請(qǐng)求偽造)介紹及防范方法Origami 發(fā)表于 2008-02-22 – 12:53 amCSRF(跨站請(qǐng)求偽造)全稱:Cross Site Request Forgery. CSRF利用方式比較類似XSS(跨站腳本 Cross Site Scripting) ,不過不同的是CSRF是構(gòu)造一個(gè)提交來讓其他人訪問后,利用站點(diǎn)對(duì)這些人的信任來進(jìn)行一些所期望的操作. 比如:A和B在同一個(gè)有XSS漏洞的站點(diǎn)C,B登錄過D站點(diǎn),并且有這個(gè)D站點(diǎn)的Cookies,這時(shí)候如果A構(gòu)造一個(gè)CSRF,內(nèi)容為給 A在D站點(diǎn)的賬戶轉(zhuǎn)移一些虛擬幣,如果這時(shí)候在C站點(diǎn)瀏覽的B用戶打開了A構(gòu)造的含有CSRF的頁面,這時(shí)候B的D站點(diǎn)用戶會(huì)因?yàn)閷?duì)B用戶的信任而進(jìn)行給 A轉(zhuǎn)賬的操作. 防范CSRF只有從程序員本身入手, Origami的方法是用戶登錄后產(chǎn)生隨機(jī)Session并賦值給頁面中的某個(gè)Hidden標(biāo)簽,提交表單時(shí)候同時(shí)提交這個(gè)Hidden標(biāo)簽并驗(yàn)證,驗(yàn)證后銷毀標(biāo)簽,只要用戶不離開頁面就不停產(chǎn)生隨機(jī)Session賦值給Hidden標(biāo)簽< /p> |
|
|