背景与价值压缩扩展可能引入侧信道与资源风险。禁用permessage-deflate可提升安全与稳定性。统一规范握手拒绝:检测`Sec-WebSocket-Extensions`包含permessage-deflate时拒绝。白名单例外:仅针对受控内网或专用通道考虑启用。审计:记录拒绝与例外使用。核心实现门禁type Req = { headers: Record<string, string | undefined> } type Res = { status: (n: number) => Res; end: (b?: string) => void } function hasDeflate(req: Req): boolean { return (req.headers['sec-websocket-extensions'] || '').toLowerCase().includes('permessage-deflate') } function wsCompressionGate(req: Req, res: Res): boolean { if (hasDeflate(req)) { res.status(400).end('compression_disabled'); return false } return true } 落地建议在网关与应用层统一禁用压缩扩展,必要时仅在受控环境下例外并限流。验证清单是否拒绝permessage-deflate扩展;例外是否受控并审计。

发表评论 取消回复