OpenCode 콘솔 침해로 사용자 API 키가 유출돼 AI 요금이 청구됐다
오픈소스 AI 코딩 에이전트 OpenCode가 자사 온라인 플랫폼인 OpenCode Console 침해 사고를 공개했다. Console은 일부 사용자가 AI 서비스 접근용 API 키를 작업 공간에 보관해 두는 곳이다. 공격자들은 하룻밤 사이 노출된 구형 시스템에 침입했고, 전체 Console 사용자의 1.4%가 영향을 받은 것으로 집계됐다. 회사는 영향을 받은 사용자 전원에게 이메일로 통보했으며, 메일을 받지 못한 사용자는 피해 대상이 아니라고 설명했다.
피해는 실제 요금 청구로 이어졌다. 개발자들은 Reddit과 X에 OpenAI, Anthropic, 구글에서 잇달아 지출 경고가 울렸다고 올렸고, 개별 계정에서 수백 달러, 일부는 1,000달러를 넘는 금액이 청구됐다는 사례도 나왔다. Anthropic과 구글은 노출된 것으로 판단한 키를 차단했고, OpenAI는 OpenCode와 협력해 접근 권한을 복구하는 한편 공격에 쓰인 크레딧을 API 고객에게 환불했다. OpenCode도 부당 청구 건에 대한 환불 절차를 진행 중이다.
노출 범위는 Console로 한정된다. 공동 창업자 Dax Raad는 오픈소스 앱과 커맨드라인 도구는 영향을 받지 않았으며 해당 키가 회사 쪽으로 전달되는 구조가 아니라고 밝혔다. 로컬에서 OpenCode를 돌리는 사용자는 이번 사고와 무관하다는 뜻이다.
대응 과정에서 드러난 문제는 따로 있다. Raad에 따르면 공격자들은 48시간 동안 쉬지 않고 시스템 침입을 시도했고, 팀은 AI 방어 에이전트를 24시간 가동해야 했다. 분석을 위해 투입한 AI 모델은 어느 시점까지는 쓸모가 있었지만, 검사 대상 악성 코드가 안전 필터를 건드리면서 작업을 거부하기 시작했다. 이후 OpenCode는 방어 목적 보안 작업에서 요청 거부 가능성이 낮은 모델을 제공하는 OpenAI의 Daybreak Blue 프로그램에 접근 권한을 얻었고, 조사 역량이 개선됐다고 전했다.
같은 벽에 부딪힌 사례는 이전에도 있었다. 지난 7월 허깅페이스는 자율 AI 에이전트의 침입 흔적을 분석하려 했지만 상용 모델들이 로그 분석 요청을 막았다고 밝혔고, 이는 OpenAI가 안전장치를 낮춘 자사 모델을 시험하던 중 벌어진 일로 드러났다. 허깅페이스는 이 현상을 '비대칭 문제'라 부르며, 가드레일이 사고 대응자와 공격자를 구분하지 못한다고 지적했다. 백악관 과학기술자문위원회 공동의장인 David Sacks도 방어에 필요한 익스플로잇 분석을 프런티어 모델이 거부했다며 가드레일이 역효과를 냈다고 비판했다.
사고 시점도 눈여겨볼 만하다. 침해가 발생한 밤은 OpenCode가 GLM-5.3-Flash를 무료로 푼 날이었다. GLM-5.3 계열은 사이버보안 역량이 Anthropic의 Claude Mythos Preview처럼 제한적으로 공개된 모델 수준에 근접했다는 평가를 받아 연구자들의 관심을 모으고 있다. 회사는 이번 사건을 대규모 증류(distillation) 공격과 연관 지었지만, 단순 침해일 뿐 증류에 쓰였다는 증거는 없다는 반론도 나온다.
개발자 입장에서 가장 먼저 할 일은 키 정리다. OpenCode는 영향을 받은 사용자에게 각 제공사에서 직접 키를 폐기하고 재발급하라고 안내했다. 서드파티 콘솔에 장기 유효 키를 그대로 두기보다 제공사별로 권한과 사용 한도를 좁힌 키를 발급하고, 지출 알림과 예산 상한을 걸어두는 편이 안전하다. 사고가 진행 중이라고 회사가 밝힌 만큼 추가 피해 가능성도 열어둬야 한다.
다만 침입 경로와 키 저장 방식, 오용의 전체 규모는 아직 공개되지 않았다. OpenCode는 구형 시스템에 공격자가 어떻게 접근했는지 설명하지 않았고, 사건이 현재진행형이라고만 밝혔다. 이번 사고는 AI를 활용한 사이버 공격이 잇따르는 흐름 속에 있다. 이달 초 크라우드스트라이크는 중국 기반 해커가 AI 모의해킹 에이전트와 Claude를 동원해 한국 은행들을 공격했을 가능성을 제기했고, 인도 사이버보안 당국도 AI 에이전트가 승인 없이 자국 조직 시스템에 도달한 사례를 경고한 바 있다.