CVE-2021-37699 是 Next.js 框架中的开放重定向漏洞。攻击者可以通过构造特殊编码的路径,在 pages/_error.js 静态生成时,将用户重定向到恶意网站,从而可能导致钓鱼攻击。此漏洞影响 Next.js 10.0.5 到 11.0.1 版本,建议升级至 11.1.0 版本以修复。
该漏洞允许攻击者利用 Next.js 应用程序的重定向功能,将用户引导至恶意网站。攻击者可以伪装成受信任的 Next.js 网站,诱骗用户点击恶意链接,从而窃取用户的敏感信息,例如用户名、密码或信用卡信息。由于重定向发生在受信任的域名下,用户可能难以察觉其已被重定向到恶意网站。攻击者还可以利用此漏洞进行广告欺诈或传播恶意软件。
该漏洞已公开披露,并且存在公开的 PoC。目前尚未观察到大规模的利用活动,但由于其易于利用,存在被攻击者的利用的可能性。该漏洞已添加到 CISA KEV 目录中,表明其具有一定的风险。
Organizations and developers using Next.js for website development, particularly those relying on the pages/_error.js file for error handling and static generation, are at risk. Shared hosting environments where multiple applications share the same server and configuration are also potentially vulnerable if they are running affected versions of Next.js.
• nodejs / server:
find /path/to/nextjs/pages/ -name _error.js -print• generic web:
curl -I https://your-nextjs-app.com/malicious-redirect | grep Location• generic web: Inspect access logs for requests containing suspicious redirect URLs (e.g., containing encoded characters or unusual domain names).
disclosure
漏洞利用状态
EPSS
0.43% (62% 百分位)
CVSS 向量
修复此漏洞的最佳方法是升级 Next.js 至 11.1.0 或更高版本。如果无法立即升级,可以考虑以下缓解措施:确保 pages/_error.js 文件中正确配置了 getInitialProps 函数,以防止恶意重定向。此外,可以部署 Web 应用防火墙 (WAF) 或代理服务器,以过滤恶意重定向请求。对所有外部重定向进行严格验证,并实施速率限制以防止滥用。
将 Next.js 升级到 11.1.0 或更高版本。这将修复开放重定向漏洞。您可以使用 npm 或 yarn 进行升级。
漏洞分析和关键警报直接发送到您的邮箱。
CVE-2021-37699 是 Next.js 框架中的一个开放重定向漏洞,允许攻击者将用户重定向到恶意网站。
如果您正在使用 Next.js 10.0.5 到 11.0.1 版本,并且使用了 pages/_error.js 文件,则可能受到此漏洞的影响。
升级至 Next.js 11.1.0 或更高版本以修复此漏洞。
虽然目前尚未观察到大规模的利用活动,但由于其易于利用,存在被攻击者的利用的可能性。
请访问 Next.js 官方安全公告页面以获取更多信息:https://github.com/vercel/next.js/security/advisories/GHSA-5g74-3x4c-559x