
이미지: Hacker News (200↑)
摘要
- Wiz的自主安全代理"Red Agent"在Snowflake公开代码仓库中发现了一个脚本注入漏洞
- 该漏洞由GitHub Copilot自动修复功能共同编写的提交引入,五天后被发现,Snowflake在接到报告当天即完成修补
- 被窃取的令牌被证实可读取工程、安全合规、漏洞赏金相关的Jira项目
- 취약점 도입일
- 2026년 6월 18일, PR #1218 (Copilot Autofix 공동 작성)
- 발견·신고
- 2026년 6월 23일, Wiz Research가 HackerOne으로 스노우플레이크에 신고
- 패치
- 같은 날 PR #1402로 env: + jq --arg 방식 복원
- 탈취 권한 범위
- qa@snowflake.net 계정으로 엔지니어링·보안 컴플라이언스·버그바운티 지라 프로젝트 읽기 접근
- 노출 기간
- 5일, 감사 로그상 제3자 접근 없음 확인
发生了什么
安全公司Wiz运营的自主安全研究工具"Red Agent",在Snowflake的公开代码仓库snowflake-connector-net中发现了一个GitHub Actions工作流漏洞。这是一个脚本注入漏洞,攻击者只需在issue标题中插入任意shell命令即可执行,甚至无需身份验证,仅打开一个GitHub issue就能发起攻击。
问题始于2026年6月18日合并的PR #1218。GitHub Copilot的自动修复功能共同编写的这次提交,移除了原本以安全方式处理数值的env变量与jq解析方式,改为直接将issue标题以字符串形式插入shell脚本中。五天后的6月23日,Red Agent扫描该工作流时确认了这一漏洞,第一次尝试因语法错误失败后,它自行修改了攻击载荷,最终成功窃取了Jira身份验证令牌。该令牌可用于读取Snowflake工程、安全合规、漏洞赏金相关的Jira项目。Wiz当天通过HackerOne提交了报告,Snowflake在当天完成了工作流修补并作废了该令牌。审计日志分析显示,在长达5天的暴露期内,除Wiz外没有第三方进行过访问。
这意味着什么
GitHub Copilot是代替人编写代码的工具,而非某个特定模型的名称。"自动修复"是指AI自动修改被标记为存在漏洞的代码的功能,而本案例中,这次修复本身却制造了新的漏洞。AI代码助手只是按概率预测最可能出现的模式,并不了解某段代码为何会那样编写。在这个案例中,原本为防止shell注入而特意加入的env变量解析被删除,又倒退回了更简单但更危险的字符串插入方式。
近期同类事件接连出现。在藏在PDF中的白色文字攻破了Atlassian AI代理一文中,仅凭隐藏文本就导致了公司内部数据泄露,此前还有人用不到20条提示词就发现了Zoom屏幕共享漏洞。而这次事件的不同之处在于,制造漏洞和发现漏洞的都是AI。局面正从"人埋漏洞、人来攻破",转变为"AI埋漏洞、AI来攻破"。
那么会带来什么变化
Wiz以此案例为依据指出,AI编写的PR也应该像人工编写的代码一样,接受同等的静态分析和安全审查。漏洞被引入仅五天后就被自动化代理发现,这意味着安全团队需要应对的时间单位,已经从数周缩短到数天,乃至以小时计。反过来看,Snowflake之所以能在接到报告当天就完成修补,也是因为防御端的自动化水平同样有所支撑。



