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

目标:1000 元,已筹:736

73.6%
一、 漏洞 CVE-2026-23520 基础信息
漏洞信息
                                        # Arcane Updater 命令注入漏洞

## 概述
Arcane 的更新服务存在命令注入漏洞,允许经过身份验证的用户通过特制的生命周期标签执行任意命令。

## 影响版本
1.13.0 之前版本

## 细节
Arcane 的更新服务支持容器标签 `com.getarcaneapp.arcane.lifecycle.pre-update` 和 `com.getarcaneapp.arcane.lifecycle.post-update`,用于在容器更新前后执行指定命令。这些标签的值被直接传递给 `/bin/sh -c` 执行,且未进行任何输入验证或转义处理。由于所有经过身份验证的用户均可通过 API 创建项目并设置此类标签,攻击者可构造恶意命令并绑定到生命周期标签。当管理员触发容器更新时,系统将自动执行该恶意命令。

## 影响
经过身份验证的攻击者可利用此漏洞在容器上下文中执行任意命令,可能导致权限提升、数据泄露或系统被完全控制。
                                        
神龙判断

是否为 Web 类漏洞: 未知

判断理由:

N/A
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
Arcane has a Command Injection in Arcane Updater Lifecycle Labels Enables RCE
来源:美国国家漏洞数据库 NVD
漏洞描述信息
Arcane provides modern docker management. Prior to 1.13.0, Arcane has a command injection in the updater service. Arcane’s updater service supported lifecycle labels com.getarcaneapp.arcane.lifecycle.pre-update and com.getarcaneapp.arcane.lifecycle.post-update that allowed defining a command to run before or after a container update. The label value is passed directly to /bin/sh -c without sanitization or validation. Because any authenticated user (not limited to administrators) can create projects through the API, an attacker can create a project that specifies one of these lifecycle labels with a malicious command. When an administrator later triggers a container update (either manually or via scheduled update checks), Arcane reads the lifecycle label and executes its value as a shell command inside the container. This vulnerability is fixed in 1.13.0.
来源:美国国家漏洞数据库 NVD
CVSS信息
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
来源:美国国家漏洞数据库 NVD
漏洞类别
OS命令中使用的特殊元素转义处理不恰当(OS命令注入)
来源:美国国家漏洞数据库 NVD
漏洞标题
Arcane 操作系统命令注入漏洞
来源:中国国家信息安全漏洞库 CNNVD
漏洞描述信息
arcane是Arcane开源的一个Docker管理软件。 Arcane 1.13.0之前版本存在操作系统命令注入漏洞,该漏洞源于更新程序服务存在命令注入,可能导致执行任意shell命令。
来源:中国国家信息安全漏洞库 CNNVD
CVSS信息
N/A
来源:中国国家信息安全漏洞库 CNNVD
漏洞类别
授权问题
来源:中国国家信息安全漏洞库 CNNVD
二、漏洞 CVE-2026-23520 的公开POC
#POC 描述源链接神龙链接
三、漏洞 CVE-2026-23520 的情报信息
  • 标题: fix: remove updater lifecycle hooks by kmendell · Pull Request #1468 · getarcaneapp/arcane · GitHub -- 🔗来源链接

    标签:x_refsource_MISC

    神龙速读:
                                            ## 关键漏洞信息
    
    ### 修复内容
    - **漏洞描述**: 移除了更新器生命周期挂钩功能(Lifecycle Hooks),以消除在容器更新前后执行自定义命令的能力。
    - **更改细节**:
      - 移除了预更新、后更新、预检查和后检查生命周期钩子的执行。
      - 删除了`lifecycle.go`文件及其相关逻辑。
      - 删除了与生命周期挂钩相关的标签常量、超时配置和允许容器跳过更新的常量。
      - 移除了`GetLifecycleCommand`辅助函数及相关测试覆盖。
    
    ### 安全性与风险
    - **置信度评分**: 5/5,表示此修复安全无风险。
    - **完整性**: 完全清理了相关代码、常量和测试,确保没有遗留或孤儿引用。
    
    ### 细节验证
    - **代码分析确认**:
      - 成功检测到并移除了后端的一个不可达函数。
      - Docker镜像成功构建,包括Manager和Agent版本。
      
    ### 潜在关注点
    - **提及的漏洞**: 存在与后端相关的Go语言潜在漏洞,标记为GHSA-jigq-6r35-w3r8及vulndb#4320,需进一步查阅并确认是否影响当前修复。
                                            
    fix: remove updater lifecycle hooks by kmendell · Pull Request #1468 · getarcaneapp/arcane · GitHub
  • 标题: Release v1.13.0 · getarcaneapp/arcane · GitHub -- 🔗来源链接

    标签:x_refsource_MISC

    神龙速读:
                                            ### 关键漏洞信息
    
    - **漏洞编号**: GHSA-gjqg-6r35-w3r8
    - **发现者**: @DenizParlak
    - **描述**: 本次更新修复了与该漏洞相关的攻击表面。
                                            
    Release v1.13.0 · getarcaneapp/arcane · GitHub
  • 标题: Command Injection in Arcane Updater Lifecycle Labels Enables RCE · Advisory · getarcaneapp/arcane · GitHub -- 🔗来源链接

    标签:x_refsource_CONFIRM

    神龙速读:
                                            ## 关键信息总结
    
    ### 漏洞描述
    - **漏洞类型**: 命令注入
    - **影响范围**: Arcane 更新服务生命周期标签,允许在容器更新前后执行恶意命令
    - **影响版本**: < 1.13.0
    - **修复版本**: 1.13.0
    
    ### 漏洞摘要
    - Arcane 的更新服务支持生命周期标签,允许定义在容器更新前后运行的命令。
    - 标签值直接传递给 `/bin/sh -c`,未进行任何清理或验证。
    - 认证用户(不仅仅是管理员)可以通过 API 创建项目来利用此漏洞。
    
    ### 影响
    - **远程代码执行 (RCE)**: 在更新容器上下文中执行。
    - **主机文件系统访问**: 如果挂载了主机卷。
    - **数据泄露**: 通过网络请求或暴露可读文件。
    - **主机完全控制**: 如果关键路径(如 `/var/run/docker.sock`)挂载。
    
    ### 修复措施
    - 移除了生命周期标签 `com.getarcaneapp.arcane.lifecycle.pre-update` 和 `com.getarcaneapp.arcane.lifecycle.post-update`,消除攻击面。
    
    ### 参考
    - [Issue #1468](#1468)
    
    ### 其他信息
    - **CVE ID**: CVE-2026-23520
    - **报告人**: DenizParlak
    - **严重性评分**: 9.1/10 (CVSS v3 基础度量)
                                            
    Command Injection in Arcane Updater Lifecycle Labels Enables RCE · Advisory · getarcaneapp/arcane · GitHub
  • 标题: fix: remove updater lifecycle hooks (#1468) · getarcaneapp/arcane@5a9c2f9 · GitHub -- 🔗来源链接

    标签:x_refsource_MISC

    神龙速读:
                                            ### 关键信息
    
    #### 漏洞概述
    该提交移除了更新器生命周期钩子(#1468),可能涉及以下漏洞:
    
    1. **潜在的钩子执行安全问题**:如果生命周期钩子(lifecycle hooks)执行未正确处理,可能会导致不当的更新行为或恶意命令执行。
    
    2. **日志记录和错误处理问题**:在移除钩子后,相关的日志记录和错误处理逻辑也需要调整,如果处理不当可能会导致信息遗漏或掩盖漏洞。
    
    3. **依赖与环境检查**:生命周期钩子的移除可能影响依赖和环境检查逻辑,如依赖项存在的检查(`LabelDependsOn`)可能需要调整,以避免未预期的行为或安全问题。
    
    #### 文件变化
    - **主要受影响文件**:
      - `backend/internal/services/updater_service.go`
      - `backend/internal/utils/arcaneupdater/labels.go`
      - `backend/internal/utils/arcaneupdater/labels_test.go`
      - `backend/internal/utils/arcaneupdater/lifecycle.go`(被删除)
      - `backend/internal/utils/arcaneupdater/lifecycle_test.go`(被删除)
    
    #### 版本和标签
    - **相关标签**:v1.13.0, v1.13.2
    - **关联问题**:#1468
    
    #### 安全提示
    - 关注日志记录和错误处理部分,确保所有可能引起安全问题的日志和错误信息都被适当地处理。
                                            
    fix: remove updater lifecycle hooks (#1468) · getarcaneapp/arcane@5a9c2f9 · GitHub
  • https://nvd.nist.gov/vuln/detail/CVE-2026-23520
四、漏洞 CVE-2026-23520 的评论

暂无评论


发表评论