V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yeelooyeeuu
V2EX  ›  信息安全

nextjs 漏洞 CVE-2025-66478 官方修复方案,一键修复,个人经验分享!

  •  
  •   yeelooyeeuu · 1 天前 · 1078 次点击

    这是 nextjs 官方开源的修复工具,无需担心! 具体地址: https://github.com/vercel-labs/fix-react2shell-next

    使用方面,一条命令就行了 npx fix-react2shell-next --fix

    我大概讲下这次漏洞的修复原理,其实就是把 next.js 版本和 React RSC Packages 的版本升级到对应的 Patched 版本就可以。

    运行上面的命令之后,我们可以看到在我们项目包管理里,nextjs 版本升级到对应版本了,但是里面 react 还是有漏洞的版本,所以挺多人会有这个疑惑:这个工具是不是不行?是不是还得手动改下 react 的版本?

    下面这个 issues 里就有人担心: https://github.com/vercel-labs/fix-react2shell-next/issues/13

    实际上 github 里讲清楚了: Recursively scans all package.json files (handles monorepos) Checks for vulnerable versions of:

    • next
    • react-server-dom-webpack
    • react-server-dom-parcel
    • react-server-dom-turbopack

    nextjs 会将 react-server 的服务端的这些包(也就是上面的 react-server 的 3 个包)打包到 nextjs 里,而升级了的 nextjs 里包含的 react-server 是 Patched 的版本,也就是修复了这个 bug 的版本。

    至于我们项目的包管理里的 react 是前端的框架,没有这个漏洞。

    我们也可以在全局代码里搜索react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack这三个包确认下,在我们自己的代码里应该找不到这三个包。

    1 条回复    2025-12-08 17:08:40 +08:00
    kasusa
        1
    kasusa  
       23 小时 49 分钟前
    emm 不就是升级嘛。 升级之后还要重新部署啊。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5230 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 08:58 · PVG 16:58 · LAX 00:58 · JFK 03:58
    ♥ Do have faith in what you're doing.