HTTPS 为什么仍然不够:TLS、HSTS 与混合内容

HTTPS 为什么仍然不够:TLS、HSTS 与混合内容

理解 HTTPS 保护传输的边界,再说明 Secure Cookie、HSTS、首次访问风险和混合内容。

Session 登录状态为什么可能被劫持:生命周期与安全管理

理解 Session ID 的生成、轮换、超时、注销和固定攻击,避免只设置 Cookie 却没有管理登录生命周期。

Session 登录状态为什么可能被劫持:生命周期与安全管理
浏览器怎么判断是不是同一个网站:Origin、Site 与同源策略

浏览器怎么判断是不是同一个网站:Origin、Site 与同源策略

浏览器通过Origin和Site两个标准判断请求归属:Origin由协议、主机和端口组成(如https://api.example.com:443),仅路径不同也算同源;Site则基于协议和可注册域名(如github.com),不同端口或子域名可能同站。同源策略限制脚本跨源读取数据、Cookie、localStorage等敏感资源,但允许跨源图片、表单提交等非敏感请求。SameSite策略通过判断站点边界控制Cookie跨域发送,需结合Public Suffix List识别可注册域名(如www.example.com与example.com同站)。常见误区包括:跨源不一定跨站(如不同端口下同站)、同源策略不阻止跨源请求到达服务器(主要限制脚本读取)、Node.js等后端环境不受同源策略限制。正常逻辑流程:同源需协议、主机、端口一致;同站需协议+可注册域名相同。浏览器核心执行文档中需强调SameSite与同源策略的区分,避免混淆CORS防护边界和同站逻辑设计。

Cookie 为什么会自动携带:Session、HttpOnly、Secure 与 SameSite

浏览器基于域名、路径和Cookie标记决定是否自动携带 Cookie,Session管理核心仍需依赖服务端。安全配置需组合使用Secure(强制HTTPS)、HttpOnly(阻止JS窃取)和SameSite(默认Lax即同源携带,跨源不跟随),其中SameSite=S glBegin不能替代CSRF Token。推荐使用__Host前缀配置,需同时满足Secure+Path=/+无Domain设置,这种模式兼具跨子域名限制和同源容错优势。与localStorage相比,Cookie虽能通过HttpOnly防御XSS直接读取,却仍需配合其他机制防范CSRF和漏洞利用。常见陷阱包括误认为HttpOnly可禁用Cookie发送、SameSite=Lax可替代认证Token、Path即可实现权限隔离,正确配置需严格遵循安全原则与服务端权限验证结合。

Cookie 为什么会自动携带:Session、HttpOnly、Secure 与 SameSite
浏览器 Web 安全基础系列:从同源策略到 XSS 与资源防护

浏览器 Web 安全基础系列:从同源策略到 XSS 与资源防护

本系列系统讲解浏览器安全机制,按依赖关系设计学习路径,先从同源策略、网站指纹识别基础,逐步深入Cookie存储规则、跨源资源共享(CORS)限制原理,解析XSS攻击路径与防御方法,最后拓展至内容安全策略(CSP)、第三方资源完整性验证及防盗链机制。内容围绕单次HTTP请求展开,完整解析浏览器安全防护流程:同源判断→Cookie携带→CORS拦截→服务端登录状态校验→XSS过滤→安全策略执行。适合具备HTML/JavaScript基础但未系统学习Web安全的前端开发者,每篇通过真实场景问题引入,搭配核心代码解析与可运行实验验证,特别标注常见误区(如同源策略≠CORS限制)。系列边界聚焦浏览器安全层,不延伸SQL注入等服务端漏洞。建议按01-08建立基础模型,09-11深入防御,最后12篇综合策略应用,概念混淆时可回溯特定篇目对照练习。

KMS与HSM:从密钥管理原理到企业选型方案

KMS(密钥管理服务)与 HSM(硬件安全模块)共同解决密钥全生命周期管控,但分工明确:KMS 负责密钥权限、审计、轮换及短期存储管理;HSM 提供硬件级密钥生成、加密运算及不可导出特性,确保密钥物理隔离。密钥采用分层结构,主密钥(如 CMK)加密数据密钥(DEK),业务数据通过信封加密实现高效处理与最小化 KMS 负载。选型需综合威胁模型(如防范内部泄露或物理攻击)、合规要求(国密算法认证、独立灾备及双人操作)、性能(低延迟调用、批量接口)、集成能力(兼容 API/SDK/HSM)及成本(专属 resources 对高价值场景必要)。核心风险防范包括:避免密钥硬编码在代码/镜像,禁止一种密钥完成所有操作(如加密+签名),及时记录密钥版本与 Nonce,轮换后保留旧密钥恢复历史数据,杜绝 HSM 仅依赖硬件安全。落地前需验证密钥隔离边界、审计深度、灾备恢复演练及权限精确到密钥粒度,确保系统通过必要认证(如 FIPS 140-3),并避免中断业务连续性的操作。

KMS与HSM:从密钥管理原理到企业选型方案

Token 如何绑定设备:防止泄漏后跨设备使用


防止 sensitive token 跨设备使用需结合设备绑定与分层验证。核心方法是将 token 绑定设备安全区生成的不可导出私钥,要求客户端对每请求生成签名(包含 HTTP 方法、URI、token哈希、时间戳及唯一 nonce)。服务端验证签名公钥与 token 绑定的一致性,且需检测 token有效期、设备指纹是否伪造、nonce是否重复。第二层辅助验证包括App版本完整性、设备安全状态( Root/越狱)及地理位置异常。推荐标准化方案:DPoP 适用于 OAuth 客户端,mTLS 证书绑定适合服务间调用。具体实施需短效 token(存5-30分钟)、 Refresh token 强制绑定设备指纹、动态更新公钥,并集成设备厂商安全能力(Android Keystore/Secure Enclave)。该方案不能防范已入侵设备的环境,需配合终端安全防护、实时风控与 token 生命周期管理。

OWASP Web Application Top 10:Web 应用十大安全风险


OWASP Top 10是开发者与应用安全人员识别和处理优先级高的Web应用安全风险的指导框架,2025版新增异常处理不当风险,整合SSRF逻辑至访问控制,并将依赖漏洞扩展为供应链失效问题。前五项重大风险包括:通过默认拒绝策略和服务器端统一鉴权防控访问控制失效;需通过配置基线与自动化检查规避安全配置错误;软件供应链需加强SBOM管理、依赖版本锁定及构建制品签名校验;加密机制应采用成熟算法与独立密钥系统,避免硬编码和明文传输;注入防护需彻底实现代码与数据的分离,如使用参数化查询与上下文编码。 核心防护建议:默认权限拒绝优于白名单判断,供应链需持续扫描高危CVE并实施最小化权限,加密应建立独立管理的密钥生命周期。常见误区包括依赖WAF覆盖业务控制或通过单次扫描完成安全建设,实际需将安全要求融入需求设计、代码编码、测试验证和运维监控全流程。总结强调访问控制、身份认证、输入安全等需贯穿应用生命周期,且异常状态下的安全失败比容错更可靠,最终通过统一鉴权框架、自动化测试及持续供应链治理实现立体防护。

OWASP 是什么?一文看懂 API Security Top 10


OWASP API安全Top10揭示API面临的核心风险:身份认证失效(Token不可信)、过度暴露字段(BOLA/BOPLA失效)、功能调用越权(BFLA)、资源滥用(如分页拖垮)、敏感流程被自动化滥用(刷券/注册)、SSRF漏洞、配置错误(如CORS过宽)及API清单管理疏漏。防护需做到:服务端校验身份与权限(不信任客户端输入)、查询后强制归属校验、DTO字段白名单控制、综合限流(IP+用户Behavior)、外部数据校验与熔断、API资产全生命周期监控。常见误区包括认为WAF可替代业务授权、忽略注入类基础漏洞防护。重点应围绕用户/权限/数据/接口/频率/依赖六个维度,将授权验证、字段过滤、限流、清单治理融入设计编码测试全流程。

密码应该使用什么哈希算法存储?


密码存储需采用不可逆哈希算法,推荐Argon2id为首选,无法支持时选用scrypt或遗留的bcrypt,合规场景可选PBKDF2-HMAC-SHA-256。核心要求包括:采用随机Salt增强安全性,成本参数需通过基准测试确定以平衡防护强度与系统性能。建议实施上线时保持兼容旧算法验证,成功登录后逐步迁移,旧系统需及时升级。严禁使用MD5、SHA-1或单次SHA-256加密,避免明文存储或加密密钥泄露。数据库应完整记录算法版本、内存、迭代次数等参数,.client密钥 pepper分置管理。迁移时需避免自行设计算法或组合存储,重点防范离线暴力破解风险。同时需配合HTTPS、登录限流、密码重置等综合防护措施,多维提升系统安全性。