支持本站 — 捐款将帮助我们持续运营

目标:1000 元,已筹:570

57.0%
一、 漏洞 CVE-2025-64764 基础信息
漏洞信息
                                        # Astro 服务器岛屿反射型XSS漏洞

## 概述

Astro 是一个 Web 开发框架。在版本 5.15.8 之前,当使用“server islands”功能时,存在一个反射型 XSS(跨站脚本攻击)漏洞。

## 影响版本

所有使用了 server islands 功能且版本低于 5.15.8 的 Astro 应用。

## 细节

该漏洞存在于 server islands 特性中,即使组件模板未显式设计为可交互,攻击者仍可通过构造恶意请求触发反射型 XSS,执行恶意脚本。

## 影响

攻击者可能利用该漏洞在用户浏览器中执行任意脚本,窃取敏感信息、劫持会话或发起其他恶意操作。
                                        
神龙判断

是否为 Web 类漏洞: 未知

判断理由:

N/A
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
Astro is vulnerable to Reflected XSS via the server islands feature
来源:美国国家漏洞数据库 NVD
漏洞描述信息
Astro is a web framework. Prior to version 5.15.8, a reflected XSS vulnerability is present when the server islands feature is used in the targeted application, regardless of what was intended by the component template(s). This issue has been patched in version 5.15.8.
来源:美国国家漏洞数据库 NVD
CVSS信息
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:H/A:N
来源:美国国家漏洞数据库 NVD
漏洞类别
Web页面中脚本相关HTML标签转义处理不恰当(基本跨站脚本)
来源:美国国家漏洞数据库 NVD
漏洞标题
Astro 安全漏洞
来源:中国国家信息安全漏洞库 CNNVD
漏洞描述信息
Astro是Astro开源的一个内容驱动网站的 web 框架。 Astro 5.15.8之前版本存在安全漏洞,该漏洞源于服务器岛屿功能存在反射型跨站脚本漏洞,可能导致恶意代码执行。
来源:中国国家信息安全漏洞库 CNNVD
CVSS信息
N/A
来源:中国国家信息安全漏洞库 CNNVD
漏洞类别
其他
来源:中国国家信息安全漏洞库 CNNVD
二、漏洞 CVE-2025-64764 的公开POC
#POC 描述源链接神龙链接
1Astro 5.15.8 contains a reflected XSS caused by improper handling of server islands feature, letting remote attackers execute scripts, exploit requires use of server islands in the application. https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2025/CVE-2025-64764.yamlPOC详情
三、漏洞 CVE-2025-64764 的情报信息
  • 标题: Reflected XSS via the server islands feature · Advisory · withastro/astro · GitHub -- 🔗来源链接

    标签:x_refsource_CONFIRM

    神龙速读:
                                            ### 漏洞关键信息
    
    - **漏洞类型**: Reflected XSS
    - **漏洞名称**: Reflected XSS via the server islands feature
    - **受影响版本**: <= 5.15.6
    - **已修复版本**: 5.15.8
    - **CVE ID**: CVE-2025-64764
    - **严重性**: High (7.1/10)
    - **CVSS v3 基础指标**
        - **攻击向量**: Network
        - **攻击复杂性**: Low
        - **所需权限**: None
        - **用户交互**: Required
        - **影响范围**: Unchanged
        - **机密性影响**: Low
        - **完整性影响**: High
        - **可用性影响**: None
    - **弱点**: CWE-80
    - ** credits**: cold-try
    - **报告者**:冷试图
    
    ### 漏洞描述
    
    - **漏洞总结**: 针对目标应用程序,即使在组件模板中没有预期的情况下,使用服务器岛功能时也可能会出现反射型XSS漏洞。
    - **漏洞细节**: 服务器岛在其独立隔离的上下文环境中运行,使用 `/server-islands/[name]` 路径填充页面。该路径可通过GET或POST调用,需要3个参数:
        - `e`: 要导出的组件
        - `p`: 传输的属性,加密
        - `s`: 用于插槽的值
    - **插槽机制**: 插槽是外部HTML内容的占位符,默认情况下,如果组件模板支持它,插槽允许代码注入。问题在于:独立于组件模板使用,即使模板完全为空,也能够注入包含XSS的有效负载。
    - **漏洞原理**: 通过`_server-islands/[name]` 端点的`e`参数默认值,或者通过`file`和`src`类型参数,可以将字符串值设置为岛屿文件的绝对路径,进而允许执行XSS。
    - **原因分析**: 使用了`markHTMLString`,这使得即使组件模板原始是空的或未提供使用插槽的方式,也允许任意XSS载荷的注入。
    
    ### 概念证明
    
    - 使用最小的存储库演示PoC,包含最新版本的Astro(5.15.6)与无内容的组件和服务器岛。
    - 访问特定URL(如示例中的`http://localhost:4321/_server-islands/ServerTime? e=file&p=&s=%7B%22`以触发弹出窗口,证明反射型XSS漏洞的存在。
    - 关键在于参数`e` 被设置为 `file` 值和`childSlots`被作为子元素注入。
                                            
    Reflected XSS via the server islands feature · Advisory · withastro/astro · GitHub
  • 标题: Merge commit from fork · withastro/astro@790d942 · GitHub -- 🔗来源链接

    标签:x_refsource_MISC

    神龙速读:
                                            从这个GitHub页面截图中,我们可以获取到以下关于漏洞的关键信息:
    
    - **项目仓库**:此截图显示的是withastro/astro仓库下的一个提交,该仓库与astro有关,是公开的。
    - **提交ID与时间**:提交ID为790d942,提交时间是昨日(相对时间,具体截图时间未知)。
    - **提交作者与验证状态**:提交作者是delucis,并且该提交通过了GitHub的验证,表示提交者身份可信。
    - **提交摘要**:这是一个merge commit,来自fork,表示这个提交内容合并了从另一个分支或仓库中的更改。
    - **代码变更**:此提交中修改了1个文件,即packages/astro/src/template/4xx.ts,共添加了3行,删除了2行。特别地,它是关于trailingSlashMismatchTemplate函数的修改,其中对`corrected`变量的初始化进行了变更,原逻辑基于`trailingSlash`的值直接返回`pathname`或处理后的`pathname`,而修改后加入了`escape`函数,并对条件判断做了微小的调整。
    - **文件变更详情**:从截图中的代码比较视图可以看出具体的代码变动行及内容,包括对函数内部某个逻辑分支的调整,可能与url的逃生、路径规范相关。
    - **版本信息**:提到了与版本比较相关的信息,如astro@5.15.7和astro@5.15.6,这可能表示该修改与特定版本的兼容性有关。
    - **安全性关注点**:涉及url处理和路径操作的代码通常需要特别注意安全性问题,例如路径穿越、跨站脚本(XSS)等。当前修改虽然对`pathname`使用了`escape`函数,但需要查看`escape`函数的具体实现以确认其是否足够安全。
    - **影响范围**:鉴于修改在4xx错误处理模板中,此变更可能影响所有在4xx状态码下使用该模板的页面,意味着这是一个公共服务代码,修改需要小心,确保没有引入新的安全漏洞。
    
    请注意,以上信息基于提供的截图分析得出,关于漏洞的具体判断需要对上下文和完整代码进行更详细的审查。
                                            
    Merge commit from fork · withastro/astro@790d942 · GitHub
  • https://nvd.nist.gov/vuln/detail/CVE-2025-64764
四、漏洞 CVE-2025-64764 的评论

暂无评论


发表评论