PHP 中的跨站请求伪造(CSRF)保护是一种网站防御方法,可以防止未经用户同意代表用户执行不必要操作。这是安全的关键方面,因为它保护用户免受潜在有害活动的影响。例如:如果用户已登录网站并被诱骗点击欺诈性链接,可能会触发 CSRF 攻击。要保护 PHP 应用免受此类攻击,可以为每个会话生成唯一令牌,并将其作为隐藏字段包含在所有表单提交中。之后,在执行任何操作之前,需要在服务器端验证此令牌。
<?php // 生成 CSRF 令牌 if(empty($_SESSION['csrf'])) { $_SESSION['csrf'] = bin2hex(random_bytes(32)); }
// 验证 CSRF 令牌 if(isset($_POST['csrf']) && $_POST['csrf'] === $_SESSION['csrf']) { // 有效的 CSRF 令牌,执行操作 } ?>
用自己的话写下这一站的结论。