- Vercel이 내부 시스템에 대한 무단 접근이 발생한 보안 사고를 공식 확인, 현재 사고 대응 전문가 및 법 집행 기관과 협력 중
- 침해의 원인은 서드파티 AI 도구인 Context.ai의 Google Workspace OAuth 앱이 손상되면서 Vercel 직원 계정이 탈취된 것
- 공격자는 민감하지 않은(non-sensitive) 환경 변수를 열거해 추가 접근 권한을 획득했으며, 해당 변수는 미암호화 상태로 저장되어 있었음
- ShinyHunters를 자처하는 해커가 해킹 포럼에서 접근 키, 소스 코드, 데이터베이스 데이터, API 키 등을 판매한다고 주장하며 200만 달러 몸값을 요구
- Vercel은 Next.js, Turbopack 등 오픈소스 프로젝트의 안전성을 확인했으며, 고객에게 환경 변수 검토와 민감 변수 기능 활성화를 권고
보안 사고 개요
- Vercel은 JavaScript 프레임워크에 특화된 클라우드 호스팅 및 배포 인프라 플랫폼으로, Next.js 개발사이자 서버리스 함수, 엣지 컴퓨팅, CI/CD 파이프라인 서비스 제공
- 보안 공지를 통해 내부 시스템에 대한 무단 접근(unauthorized access) 이 발생했음을 공식 확인
- 일부 고객(limited subset)이 영향을 받았으며, 서비스 자체에는 영향이 없었다고 발표
- 사고 대응 전문가를 고용하고 법 집행 기관에 통보, 조사 진행 중
침해 경로 및 기술적 상세
- 침해의 근본 원인은 서드파티 AI 플랫폼 Context.ai의 Google Workspace OAuth 앱이 손상된 것
- Vercel CEO Guillermo Rauch가 X(구 트위터)에서 추가 상세 정보를 공개
- 공격자는 Vercel 직원의 Google Workspace 계정을 Context.ai 침해를 통해 탈취
- 이후 해당 계정에서 Vercel 환경으로 접근 권한을 상승(escalate)
- 공격자는 "민감하지 않음(non-sensitive)"으로 지정된 환경 변수에 접근, 이 변수들은 암호화되지 않은 상태(not encrypted at rest)로 저장
- Vercel은 모든 고객 환경 변수를 완전 암호화(fully encrypted at rest) 저장하며 다층 방어 메커니즘을 갖추고 있으나, "non-sensitive" 지정 변수가 취약점으로 작용
- Google Workspace 관리자에게 다음 OAuth 앱 확인을 권고:
110671459871-30f1spbu0hptbs60cb4vsmv79i7bbvqj.apps.googleusercontent.com
해커의 데이터 판매 주장
- ShinyHunters를 자처하는 위협 행위자가 해킹 포럼에 Vercel 침해 및 데이터 판매 게시글 작성
- 판매 대상: 접근 키, 소스 코드, 데이터베이스 데이터, 내부 배포 접근 권한, API 키(NPM 토큰, GitHub 토큰 포함)
- Linear 데이터를 증거로 제시하며 다수의 직원 계정 접근 권한 보유 주장
- ShinyHunters 조직과 연관된 기존 위협 행위자들은 BleepingComputer에 이번 사건과 무관하다고 부인
- 공격자가 공유한 텍스트 파일에는 Vercel 직원 정보 580건이 포함되어 있으며, 이름, Vercel 이메일 주소, 계정 상태, 활동 타임스탬프로 구성
- 내부 Vercel Enterprise 대시보드로 보이는 스크린샷도 함께 공유
- BleepingComputer는 해당 데이터와 스크린샷의 진위를 독립적으로 확인하지 못함
- Telegram 메시지에서 위협 행위자는 Vercel과 접촉 중이며, 200만 달러의 몸값(ransom) 을 요구했다고 주장
Vercel의 대응 및 고객 권고
- Next.js, Turbopack 및 기타 오픈소스 프로젝트는 안전함을 확인
- 대시보드에 환경 변수 개요 페이지 및 민감 환경 변수 관리를 위한 개선된 인터페이스 배포
- 고객에게 권고하는 조치:
- 환경 변수(environment variables) 검토
- 민감 환경 변수 기능(sensitive environment variable feature) 활성화로 미사용 시 암호화 보장
- 필요 시 시크릿 로테이션(secret rotation) 수행