课程进度 57% · 第12/20章第12/20章 · 标签 1/3
— 1 —
XSS与防护
XSS原理与类型:
- 反射型XSS:恶意脚本通过URL参数注入。
- 存储型XSS:恶意脚本存入数据库,影响所有访问者。
- DOM型XSS:前端JS动态插入不可信内容。
XSS攻击演示与防护:
javascript
1
// 危险:直接插入用户输入
2
const html = '<img src=x onerror=alert(1) />';
3
document.body.innerHTML = html;
4
// 安全:转义或使用textContent
5
const safe = document.createElement('div');
6
safe.textContent = html;
7
document.body.appendChild(safe);
8
// CSP内容安全策略
9
<meta httpEquiv="Content-Security-Policy" content="default-src 'self'">
— 2 —
CSRF与防护
CSRF原理:利用用户已登录身份,诱导其在不知情下发起恶意请求。
CSRF防御:
javascript
1
// 方案1:后端校验CSRF Token
2
fetch('/api/transfer', { method: 'POST', headers: { 'x-csrf-token': token } });
3
// 方案2:SameSite Cookie
4
Set-Cookie: sid=xxx; SameSite=Strict
XSSCSRFCSPSameSite安全