#安全
12 篇
Base64:它不是加密,也不是压缩
Base64 把 3 字节编码成 4 个可打印字符,体积涨三分之一。它解决的是「二进制不能安全穿过文本通道」,不是保密。
幂等键:让重试变得安全的那一次写入
网络超时不代表服务端没执行。幂等键把「同一个请求」标识出来,服务端据此返回首次结果而不是再执行一遍。
JSON 规范化:为什么同样的对象算出了两个哈希
键的顺序、数字写法、转义方式都会改变字节流。要让哈希稳定,必须在序列化这一层定死规则,而不是指望 JSON.stringify 每次都给你同一串。
灾难性回溯:正则为什么会让 CPU 打满
嵌套量词让匹配尝试数指数增长,(a+)+b 在一条长的不匹配输入上就能拖死进程。修法是去掉嵌套量词或给正则加超时。
iframe sandbox:它收窄能力,不是加固
sandbox 属性默认剥夺一切能力,靠 allow-* 逐项放回。弄反方向是常见错误:加上 sandbox 之后脚本全不能跑了,因为那是默认值。
Unicode 规范化:看起来一样的两个字符串为什么不相等
é 可以是一个码点,也可以是 e 加组合重音。比较、存储、索引之前先统一成 NFC,否则同形异码会让查重和登录全部失效。
URL 编码的三个陷阱:空格、加号与双重编码
查询串里的 + 是空格,路径里的 + 是加号;同一个字符在路径与查询里的编码规则不同;编码两次会得到看似正常却永远匹配不上的值。
SharePoint 反序列化 RCE:CVE-2026-45659 分析
一个普通 Site Member 账户就足以在 SharePoint 服务器上执行任意代码。微软最初判定「利用可能性较低」,CISA 依据在野证据把它拉进了 KEV,并要求三天内完成修复。
n8n 未授权 RCE(Ni8mare):CVE-2026-21858 分析
表单节点跳过了对 Content-Type 的验证,于是一个 application/json 请求就能让它去读任意文件。读出配置里的密钥后可伪造管理员 JWT,再借沙箱绕过完成 RCE。
Cisco FMC 未授权 Java 反序列化 RCE:CVE-2026-20131 分析
CVSS 10.0、无需认证、以 root 权限执行代码,而且已经被勒索组织当作零日用了 36 天。防火墙管理中枢本身被攻破,等于把所有策略与日志一起交出去。
Next.js 增量缓存路径遍历 RCE:CVE-2026-75604 分析
一个没被转义的反斜杠,在 Windows 上把增量缓存变成任意文件读写;再用泄露的 Server Action 加密密钥伪造请求,借 React Flight 的属性链走到 Function。
React Router 原型污染链式 RCE:CVE-2026-42211 分析
turbo-stream v2 在 TYPE_ERROR 分支里动态调用构造函数却不校验来源。只要应用里已存在一个原型污染,这条路径就能被接上 Function,把两步中危拼成 RCE。
