)
企业级Web系统安全纵深防御完整设计方案防御XSS/CSRF/重放/篡改/凭证劫持一、方案整体概述1. 设计目标彻底解决 Web 系统最核心四大安全风险XSS 跨站脚本攻击存储型、反射型、DOM型CSRF 跨站请求伪造全站彻底免疫请求重放攻击、中间人篡改、抓包伪造Token 窃取、会话劫持、长期凭证泄露实现无架构级安全漏洞、纵深防御、多层兜底、高危业务零风险满足企业生产环境、等保规范安全标准。2. 核心架构思想鉴权分层短期业务令牌 长期刷新令牌分离风险隔离存储分层业务令牌内存存储防XSS窃取刷新令牌HttpOnly Cookie防泄露、防CSRF传输加密AESRSA混合加密 时间戳防重放页面防御CSP强制策略 全局输入输出转义根治XSS业务兜底高危操作二次真人校验彻底杜绝业务损失二、双Token认证体系整体设计核心防CSRF、防XSS劫持1. Token结构与时效设计令牌类型作用过期时间存储位置AccessToken业务令牌所有业务接口鉴权携带用户ID、权限、设备指纹10~30分钟短时效前端运行内存变量不存Cookie、不存LocalStorageRefreshToken刷新令牌仅用于无感刷新AccessToken不参与任何业务鉴权1~7天长时效HttpOnly Secure SameSiteStrict Cookie2. 关键安全设计详解1AccessToken 内存存储核心价值完全免疫XSS窃取恶意JS只能读取Storage、Cookie无法读取页面内存JS变量完全免疫CSRF攻击业务鉴权必须前端手动在 Header 携带Authorization: Bearer {token}跨域请求浏览器不会自动携带内存Token传统CSRF彻底失效页面刷新/标签关闭/路由重载自动销毁泄露面极小2RefreshToken Cookie 完整安全属性强制落地服务端下发 Cookie 完整配置refreshTokenxxx; HttpOnly; Secure; SameSiteStrict; Path/api/auth/refresh; Max-Age604800HttpOnly禁止JS读取XSS无法窃取刷新凭证Secure仅HTTPS环境传输杜绝HTTP明文劫持SameSiteStrict所有第三方跨站请求一律不带Cookie刷新接口无CSRF风险Path限制仅刷新接口可读取该Cookie极大缩小攻击面3JWT载荷加固规则所有JWT强制包含字段sub用户唯一IDexp过期时间nbf生效时间禁止超前使用fingerprint设备指纹UA设备特征哈希Token绑定设备跨设备窃取无效3. RefreshToken 服务端管控机制关键兜底服务端维护RefreshToken 黑名单表触发场景立即拉黑失效用户主动登出修改密码、绑定信息变更异地登录、设备下线账号冻结/注销黑名单数据定时清理过期数据保证性能4. 无感刷新逻辑AccessToken 过期前/过期后前端自动调用刷新接口浏览器自动携带 RefreshToken Cookie服务端校验Cookie合法 未拉黑 设备指纹一致下发新AccessToken全程无感知用户无需重新登录三、全站接口 AESRSA 混合加密 时间戳防重放方案1. 加密架构设计行业标准安全组合RSA非对称加密加密随机生成的AES密钥解决密钥传输安全AES对称加密加密所有业务请求/响应报文高效防篡改、防窃听时间戳设备指纹杜绝重放攻击、数据包复用2. 完整请求加密流程客户端生成一次性随机AES密钥每次请求不同使用服务端公钥RSA加密AES密钥放入请求头使用AES密钥加密全部业务请求参数请求携带加密报文 RSA加密后的AES密钥 服务端时间戳 设备指纹服务端私钥解密得到AES密钥 → 解密报文校验时间戳、设备指纹、请求合法性3. 时间戳防重放强制规则以服务端时间为准拒绝前端本地时间有效时间窗口±60秒同一设备指纹时间戳禁止重复请求拦截批量重放超时、篡改、重复请求直接拦截并记录安全日志4. 密钥运维策略RSA公私钥定期轮换月度更新AES密钥单次请求有效不复用四、高危业务二次校验兜底方案1. 强制二次校验接口列表所有涉及资金、账号权限、核心数据的接口必须二次验证密码修改、手机号/邮箱换绑提现、转账、支付确认账号注销、权限变更、设备解绑核心隐私数据导出2. 校验规则验证方式短信验证码 / 邮箱验证码 / 人脸识别三选一可配置验证码有效期5分钟单次有效验证后立即失效接口限流单账号1分钟最多1次验证码请求防轰炸核心价值即使前面所有防御被极端绕过攻击者也无法完成高危业务操作彻底杜绝业务损失。五、全站XSS终极防御体系根治所有类型XSS1. 前端代码规范杜绝DOM型XSS禁止使用innerHTML、document.write、eval、动态字符串执行函数强制使用textContent、createElement 原生安全API自动转义特殊字符2. 后端输入输出双防护输入层白名单校验禁止黑名单严格限制输入格式、长度、字符范围输出层分上下文精准转义HTML上下文转义 ’JS上下文转义 \ ’ URL上下文禁止 javascript:/data: 危险协议富文本场景统一使用 DOMPurify 安全过滤库禁止手动过滤3. 浏览器安全响应头强制开启全站统一返回HTTP头X-XSS-Protection: 1; modeblock浏览器内置XSS拦截Content-Security-Policy严格策略禁止内联JS、禁止eval、仅允许自有域名和可信CDN资源4. 文件上传专项防护防存储型XSS校验文件后缀、文件MIME类型、文件头部真实二进制禁止上传 html、js、svg、xml 等可执行脚本文件上传文件独立域名存储、禁止脚本执行权限六、辅助安全加固策略全局兜底1. 接口限流与风控全局接口限流单IP、单账号单位时间请求上限异常请求高频、非法报文、篡改参数自动拉黑、日志告警2. 跨域辅助校验服务端校验 Origin / Referer 请求头仅放行本域名合法请求作为CSRF辅助兜底。3. 安全日志与审计所有加密失败、Token非法、时间戳过期、二次校验失败、异常登录全部记录日志支持安全溯源、攻防审计。七、方案攻防结论完整风险闭环证明1. 本方案如何彻底消灭 CSRF业务接口凭证为内存AccessToken浏览器不会自动携带无任何伪造可能刷新接口凭证为 Strict 模式Cookie第三方跨域请求不带Cookie加密时间戳杜绝伪造合法请求报文结论全站 0 CSRF 风险2. 本方案如何彻底防御 XSSAccessToken 内存存储XSS无法窃取核心业务凭证RefreshToken HttpOnlyJS无法读取刷新凭证CSP 输入输出转义 阻止恶意脚本执行短时Token 设备绑定即使极端泄露也快速失效、无法复用结论XSS 无法盗号、无法劫持会话、无法操控用户账号3. 防御其他攻击防中间人窃听篡改AESRSA全站加密防重放攻击时间戳单次请求校验防账号被盗核心操作高危接口二次真人校验八、最终落地极简清单可直接交付开发AccessToken 内存存储、短时效10-30minHeader手动携带RefreshToken 长时效1-7天Cookie配置HttpOnlySecureSameSiteStrictPath限制服务端实现RefreshToken黑名单、设备指纹绑定JWT全站AESRSA混合加密服务端时间戳防重放高危业务短信/邮箱/人脸二次校验全站CSP、X-XSS-Protection响应头、前后端XSS过滤规范接口限流、跨域校验、安全日志审计注部分内容可能由 AI 生成