
基本信息 | |
|---|---|
包名 | lycheeverse/lychee-action (GitHub Actions) |
受影响版本 | < 2.0.2 |
修复版本 | 2.0.2 |
漏洞类型 | 代码注入 (CWE-94) |
严重性 | 中等 (CVSS 4.0 评分: 6.9) |
在lycheeverse/lychee-action的复合操作(action.yml)中的lychee-setup步骤发现了一个潜在的任意代码注入漏洞。
该GitHub Action的输入变量inputs.lycheeVersion可以被利用来在Action的上下文中执行任意代码。这是一个典型的代码注入漏洞,其根本原因在于对用户提供的输入未进行充分的净化处理。
以下是一个概念验证示例,展示了如何利用此漏洞:
- uses: lycheeverse/lychee@v2
with:
lycheeVersion: $(printenv >> $GITHUB_STEP_SUMMARY && echo "v0.16.1")在这个例子中,lycheeVersion参数被设置为一个包含命令注入的字符串。当Action执行时,它会执行printenv >> $GITHUB_STEP_SUMMARY命令,将所有环境变量输出到工作流的步骤摘要中。虽然此示例仅为信息泄露,但攻击者完全可以利用此向量来执行更具破坏性的操作,如窃取密钥、修改代码或破坏仓库的CI/CD流程。由于注入的命令被执行的同时,Action本身仍会正常运行(在本例中,echo "v0.16.1"确保后续版本选择逻辑不受影响),这种攻击具有很高的隐蔽性,可能在不被察觉的情况下发生。
该漏洞允许攻击者在受影响的GitHub Actions工作流中注入并执行任意代码。成功利用此漏洞可能导致:
强烈建议所有使用lycheeverse/lychee-action的用户立即将Action版本升级到2.0.2或更高版本,以修复此安全漏洞。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。