Astro Cloudflare适配器漏洞CVE-2025-58179
Astro是用于内容驱动网站web框架,作为内容驱动型网站的最佳框架用于构建内容驱动型网站(包括博客、营销和电子商务)网络框架。
一、基本情况
Astro是一个静态网站生成器的前端框架,提供一种新的开发方式和更好的性能体验,帮助开发者更快速地构建现代化的网站和应用程序。
Astro 页面由多个独立组件组成,作为开源JavaScript框架,用于在流行UI框架(如React、Preact、Vue 或 Svelte)之上生成 Web 应用。
栋科技漏洞库关注到Astro项目披露了其Cloudflare适配器中存在一个高危漏洞,漏洞现已被追踪为CVE-2025-58179,CVSS 3.x评分7.2。
二、漏洞分析
CVE-2025-58179漏洞是Astro Cloudflare适配器存在的可导致服务器端请求伪造(SSRF)的安全漏洞,可能引发跨站脚本攻击(XSS)。
该漏洞影响使用默认图像服务部署在Cloudflare Pages或Workers上的Astro构建网站,影响11.0.3至12.6.5在使用Astro的Cloudflare适配器。
使用默认的imageService:“compile”配置output:“server”时生成的图像优化端点不检查接收到的URL,允许提供来自未经授权第三方域内容。
使用Astro构建的按需渲染站点包括一个/_image端点,该端点返回图像的优化版本。
/_image端点仅限于处理与站点捆绑在一起的本地映像,
还支持来自站点开发人员手动授权的域的远程映像(使用image.domains或image.remotePatterns选项)。
cloudflare基础设施上部署受影响版本的@astrojs/cloudflare适配器的漏洞允许攻击者绕过第三方域限制,提供来自易受攻击来源任何内容。
三、POC概念验证
1、创建一个新的最小化Astro项目(astro@5.13.3)
2、配置它以使用Cloudflare适配器(@astrojs/cloudflare@12.6.5)服务器输出:

3、部署到Cloudflare页面或Workers
4、部署后,将如下附加构造的请求即可从未授权域名加载内容

5、这将提供来自未经授权的placehold.co域的占位符图像。
四、影响范围
Astro >= 11.0.3
五、修复建议
Astro >= 12.6.6
六、参考链接
