目录
简介
跨站请求伪造(CSRF)是Web安全领域最常见的高危漏洞之一。本文将以DVWA(Damn Vulnerable Web Application)为实验平台,通过代码审计、漏洞利用和防御方案三个维度,全面解析CSRF漏洞的攻防技术。
一、CSRF漏洞原理与技术背景
1.1 CSRF攻击机制
CSRF(Cross-Site Request Forgery)是一种利用受害者已认证状态的非授权操作攻击。其核心攻击流程为:
-
用户登录受信任网站A
-
未注销情况下访问恶意网站B
-
网站B伪造针对网站A的合法请求
-
用户浏览器携带认证信息自动执行该请求
1.2 DVWA CSRF模块分析
DVWA的CSRF模块模拟了密码修改功能,包含四个安全等级:
-
Low:无任何防护
-
Medium:基础Referer检查
-
High:Anti-CSRF Token
-
Impossible:多因素认证
二、Low级别漏洞分析与利用
2.1 关键代码
// dvwa/vulnerabilities/csrf/source/low.php
if( isset( $_GET[ 'Change' ] ) ) {
$pass_new = $_GET[ 'password_new' ];
$pass_conf = $_GET[ 'password_conf' ];
if( $pass_new == $pass_conf ) {
// 直接修改密码
$insert = "UPDATE `users` SET password = '$pass_new' WHERE user = '" . dvwaCurrentUser() . "';";
$result = mysqli_query($GLOBALS["___mysqli_ston"], $insert) or die(...);
}
}


1870

被折叠的 条评论
为什么被折叠?



