Skip to content

XSS 防护

XSS(Cross-Site Scripting)是常见的 Web 安全漏洞。

什么是 XSS?

XSS 攻击通过在网页中注入恶意脚本,窃取用户信息或执行恶意操作。

XSS 类型

存储型 XSS

恶意脚本存储在服务器上:

php
<?php
// 危险示例
echo $_GET['comment'];  // 如果包含 <script>alert('XSS')</script>
?>

反射型 XSS

恶意脚本通过 URL 参数反射:

php
<?php
// 危险示例
echo "搜索: " . $_GET['q'];
?>

防护方法

转义输出

php
<?php
// HTML 转义
echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');

// 使用函数
function escape($str) {
    return htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
}
?>

内容安全策略(CSP)

php
<?php
header("Content-Security-Policy: default-src 'self'");
?>

验证输入

php
<?php
$input = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
?>

下一步

学习 CSRF 防护 → CSRF 防护

基于 VitePress 构建