RageAgainstThePixel/setup-steamcmd 认证令牌泄露漏洞 (GHSA-c5qx-p38x-qf5w)
漏洞概述
严重程度:高危
受影响版本:< 1.3.0
已修复版本:1.3.0
CVSS v4 评分:8.7(高分)
漏洞详情
摘要
作业后处理操作(post job action)会打印 config/config.vdf 文件的内容,该文件保存了已认证的 Steam 令牌。这个令牌可以被用于在其他机器上登录账户。因此,任何公开使用此 Action 的操作都会使关联 Steam 账户的认证令牌暴露在公开日志中。
此外,userdata/$user_id$/config/localconfig.vdf 文件包含潜在敏感信息,同样不应包含在公开日志中。
漏洞原理分析
该漏洞属于 CWE-532:敏感信息写入日志文件 类型。具体技术细节如下:
-
触发时机:GitHub Actions 工作流执行完成后,
post-job钩子被触发 -
问题代码:Action 在作业结束时直接输出
config/config.vdf文件内容到标准输出 - 令牌用途:该 VDF 文件中的认证令牌相当于会话凭证,攻击者可直接用于模拟合法用户登录 Steam
- 攻击向量:攻击者可通过网络访问 GitHub Actions 的作业运行日志,无需任何认证或特殊权限即可获取令牌
漏洞复现(PoC)
任何使用以下工作流配置的仓库都会受到影响:
steps:
- name: Setup SteamCMD
uses: buildalon/setup-steamcmd@v1.0.4
- name: Sign into steam
shell: bash
run: |
steamcmd +login ${{ secrets.WORKSHOP_USERNAME }} ${{ secrets.WORKSHOP_PASSWORD }} +quit
影响范围
任何使用此 GitHub Action 并关联 Steam 账户的用户均受到影响。特别是公开仓库用户风险最高,因为:
- 任何拥有 GitHub 账户的人都可以访问这些日志
- 令牌一旦泄露,攻击者可获取账户完整控制权
- 令牌有效期内可持续进行未授权访问
技术指标
CVSS v4 评分详情
攻击向量(AV):网络(Network)
攻击复杂度(AC):低(Low)
攻击需求(AT):无(None)
所需权限(PR):无(None)
用户交互(UI):无(None)
受影响系统影响:
- 机密性(VC):高(High)
- 完整性(VI):无(None)
- 可用性(VA):无(None)
修复建议
-
立即升级:将
setup-steamcmd升级至v1.3.0或更高版本 - 令牌轮换:立即更换所有可能泄露的 Steam 认证令牌
- 审查日志:检查历史 CI/CD 日志,确认是否存在令牌泄露
- 私有仓库考虑:敏感操作建议在私有仓库中执行
参考资料
- GHSA-c5qx-p38x-qf5w
-
RageAgainstThePixel/setup-steamcmd@3e4e408
glyoVzOLZA9nMhz/bDHDAWzfRfZ0dSZtQUalpUyOmxcR5M3vDlaSSVrmQVEgpcgYLufvEA0IHDn1sUwyXgnKtg==