1. 程式人生 > >【36】WEB安全學習----CSRF攻擊

【36】WEB安全學習----CSRF攻擊

CSRF攻擊

關於CSRF攻擊,網上也有很多講解,這裡就不重複造輪子了。

簡單介紹下,CSRF攻擊也叫跨站點請求偽造攻擊,其核心攻擊原理是:在傳送請求時,瀏覽器會自動附帶使用者的cookie資料進行提交,那麼通過這個原理,攻擊者通過JS構造某些功能請求,如發帖,轉發、修改密碼等等,受害者一旦點選攻擊者構造的功能請求連結,由於瀏覽器會自動附帶使用者身份標識,那麼認證過程就省略了,就會成功執行使用者構造的功能請求。

但是,一般使用者不會點選陌生的地址,那麼CSRF和XSS就完美結合了。

CSRF漏洞查詢

找CSRF漏洞一般找網站的重點操作功能,如:密碼修改(不驗證原密碼)、轉賬、留言、發帖等等(涉及資料庫的增、刪、改)。

CSRF防禦

1、表單加入偽隨機值,如DZ論壇採用fromhash值,這個值攻擊者無法事先知道,故成功防禦了CSRF攻擊,但這個值通過XSS可以讀取到(或有些論壇fromhash值固定),故不能保證百分百安全。

2、在表單里加入驗證碼機制,這個能有效的防止XSS漏洞,但還是不能百分百安全,因為攻擊者可以把驗證碼發給遠端進行識別,只是較麻煩。

3、表單加入token欄位,這個能有效的防止XSS攻擊,因為token欄位值與session或cookie進行了繫結,攻擊者無法預測token值,就算token值被XSS讀取到了,但cookie裡的token值也不一樣。

4、驗證referer欄位,我們知道referer欄位就是記錄請求的來源地址,如果是外域則表示是CSRF攻擊,但結合XSS攻擊則突破這個限制。

關於例項演示,以後做CTF題會補充上,大家先了解其原理和防禦。