
이미지: Hacker News (200↑)
요약
- Wiz의 자율 보안 에이전트 'Red Agent'가 스노우플레이크(Snowflake) 공개 저장소에서 스크립트 인젝션 취약점을 발견했다
- 이 취약점은 깃허브 코파일럿 오토픽스가 공동 작성한 커밋이 도입한 지 닷새 만에 발견됐고, 스노우플레이크는 신고 당일 패치했다
- 탈취된 토큰으로 엔지니어링·보안 컴플라이언스·버그바운티 관련 지라 프로젝트에 읽기 접근이 가능했던 것으로 확인됐다
- 취약점 도입일
- 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-connector-net에서 깃허브 액션 워크플로 취약점을 찾아냈다. 이 취약점은 이슈 제목에 임의의 셸 명령을 끼워 넣어 실행할 수 있는 스크립트 인젝션이었고, 인증 없이 깃허브 이슈를 여는 것만으로 공격이 가능했다.
문제는 2026년 6월 18일 병합된 PR #1218에서 시작됐다. 깃허브 코파일럿의 오토픽스 기능이 공동 작성한 이 커밋은 기존에 안전하게 값을 다루던 env 변수·jq 파싱 방식을 걷어내고, 이슈 제목을 셸 스크립트에 직접 문자열로 끼워 넣는 방식으로 바꿔놓았다. 닷새 뒤인 6월 23일, Red Agent가 이 워크플로를 스캔해 취약점을 확인했고 첫 시도가 문법 오류로 실패하자 페이로드를 스스로 수정해 결국 지라(Jira) 인증 토큰을 외부로 빼내는 데 성공했다. 이 토큰으로는 스노우플레이크 엔지니어링·보안 컴플라이언스·버그바운티 관련 지라 프로젝트를 읽을 수 있었다. Wiz는 같은 날 HackerOne을 통해 신고했고, 스노우플레이크는 당일 워크플로를 패치하고 토큰을 폐기했다. 감사 로그 분석 결과 5일간의 노출 기간 동안 Wiz 외 제3자 접근은 없었던 것으로 확인됐다.
이게 무슨 얘긴가
깃허브 코파일럿은 코드를 대신 써주는 도구이지 특정 모델의 이름이 아니다. '오토픽스'는 취약점으로 지목된 코드를 AI가 자동으로 고쳐주는 기능인데, 이번 사례는 그 수정 자체가 새 취약점을 만든 경우다. AI 코드 어시스턴트는 확률적으로 가장 그럴듯한 패턴을 예측할 뿐, 특정 코드가 왜 그렇게 짜였는지 맥락은 모른다. 여기서도 셸 인젝션을 막으려고 일부러 넣어둔 env 변수 파싱을 지우고, 더 단순하지만 위험한 문자열 삽입 방식으로 되돌렸다.
같은 흐름의 사건이 최근 잇따르고 있다. PDF에 숨긴 흰 글씨로 Atlassian AI 에이전트 뚫렸다에서는 숨겨진 텍스트만으로 사내 데이터가 유출됐고, 줌 화면공유 취약점도 프롬프트 20개 미만으로 찾아낸 바 있다. 이번 건이 다른 점은 취약점을 만든 것도, 찾은 것도 모두 AI라는 점이다. 사람이 코드를 심고 사람이 뚫는 구도에서, AI가 심고 AI가 뚫는 구도로 넘어가고 있다.
그래서 뭐가 달라지나
Wiz는 이번 사례를 근거로 AI가 작성한 PR도 사람 코드와 동일한 정적 분석·보안 검토를 거쳐야 한다고 지적했다. 취약점이 도입된 지 닷새 만에 자동화된 에이전트가 발견했다는 점은, 보안팀이 대응해야 할 시간 단위가 몇 주가 아니라 며칠, 나아가 시간 단위로 좁혀지고 있다는 뜻이다. 스노우플레이크가 같은 날 패치를 끝낼 수 있었던 것도 반대로 방어 쪽 자동화 수준이 뒷받침됐기 때문으로 볼 수 있다.



