按框架的安全防护
针对 WordPress、Laravel、Next.js、Spring 等每一种框架的安全指南——危险的默认配置、最常被利用的弱点,以及加固步骤。
覆盖的框架
PHP
WordPress 拥有最大份额,因此在统计上是最大的目标。入口与其说是核心,不如说是插件/主题漏洞、疏于更新、弱/复用的管理员,以及暴露的管理面(wp-admin/xmlrpc/REST 枚举)。防御:自动化核心+插件更新、删除不用的插件/主题、给管理员配强密码+2FA、限制管理面暴露与登录尝试、篡改检测加离线备份。
LaravelLaravel 默认值相当安全,但事故大多来自运营。三大陷阱:(1) .env 或密钥文件从公开目录可通过 URL 读取;(2) 生产环境 APP_DEBUG=true,把环境变量与连接信息暴露在错误页上;(3) 缺失授权(有登录=认证,但没有按所有者划分的授权 / Mass Assignment 覆盖了预期外的字段)。防御:密钥放到 public 之外并设权限 600、生产环境关调试 + 配置缓存、用 Policy/Gate 做授权、声明 $fillable。
JavaScript / Node
Next.js 默认值偏安全,但事故发生在『服务端/客户端的边界』。三大问题:(1) 环境变量泄露(误用 NEXT_PUBLIC_ 或把服务端专用密钥传给客户端)、(2) Server Actions / Route Handlers 缺失授权(有认证但没有所有者范围)、(3) 依赖包的已知 CVE(含框架核心 RCE,按实际运行版本判定并快速打补丁)。防御:密钥限定在服务端、留意边界、每个 action 都做授权、用机器监控依赖 CVE。
ExpressExpress 是极简框架——默认几乎不内置任何安全功能,因此守护是由开发者自己添加的。要点:(1) 安全响应头(helmet 类);(2) 输入的校验与净化;(3) 以所有者为范围的授权,而不只是认证;(4) 限流(暴力破解 / DoS);(5) 依赖(npm)CVE 监控与快速打补丁。此外,对外部 URL 请求做 SSRF 防护,密钥放进环境变量、不混入代码。极简框架带来自由,同时也把防御的责任交给了你。