Vercel이 2주간의 공개 HackerOne 프로그램을 운영합니다. Vercel 샌드박스를 탈출하는 데 성공한 보안 연구자에게는 최대 100만 달러의 포상금이 지급됩니다.
에이전트는 신뢰할 수 없는 코드를 실행해야 하는데, 이를 위한 표준 방식으로 자리 잡은 것이 마이크로VM입니다. 워크로드마다 전용 게스트 커널을 할당하고, 호스트 및 동일 머신의 다른 워크로드와 완전히 격리하는 방식이죠.
그러나 최근 보안 연구와 실제 사례들이 보여주듯, 신뢰할 수 없는 코드를 실행하는 에이전트가 격리를 탈출하기 위해 반드시 VM 경계를 넘어야 하는 건 아닙니다. 보안 모델이 간과한 네트워크 경로 하나면 충분합니다. 이에 대해서는 네트워크 경계 없는 샌드박스는 반쪽짜리 샌드박스에 불과하다는 글에서 자세히 다뤘습니다.
격리는 양쪽이 모두 견고할 때만 성립합니다. Firecracker 마이크로VM과 호스트 측 네트워크 제어, 둘 다요. 최근 저희 CTO가 안전장치 없는 오픈 웨이트 모델을 Vercel 샌드박스에 겨냥했습니다. 탈출에는 실패했지만, 그 모델은 게스트 커널을 분석하고, 아이디어를 재현할 VM을 직접 구성한 뒤, 퍼저(fuzzer)까지 작성했습니다.
방어자에게는 선제적 우위가 있습니다. 하지만 그게 영원히 지속되지는 않습니다. 관건은 경계를 언제 직접 시험해보느냐입니다. (저희는 스캐닝 프로그램 구축을 적극 권장합니다. deepsec같은 오픈소스 도구와 AI Gateway를 활용하면 예산에 관계없이 시작할 수 있습니다.)
저희는 공격자의 타이밍이 아닌, 저희가 정한 일정에 따라 Vercel 샌드박스를 직접 검증하기로 했습니다. 그것도 세계 최고의 연구자들과 함께, 공개적으로 말이죠.
그래서 앞으로 2주 동안, Vercel 샌드박스 탈출에 성공한 연구자에게 최대 100만 달러의 포상금을 지급합니다.
오늘부터 Vercel은 Vercel 샌드박스 격리에 초점을 맞춘 2주간의 공개 HackerOne 프로그램을 운영합니다.
프로그램: 공개 HackerOne 프로그램, 자격 요건을 갖춘 모든 연구자 참여 가능
기간: 2026년 8월 18일(화)부터 9월 1일(화)까지, 포상금 소진 시 조기 종료
보고서당 최대 포상금: 5만 달러 — 다른 Vercel 테넌트의 데이터를 열람하거나 변조할 수 있는 취약점에 해당
총 포상금 풀: 최대 100만 달러
포상금은 보고서 단위로 지급되며, 단일 근본 원인을 기준으로 범위가 정해집니다. 금액은 입증 가능한 최대 영향도를 기준으로 Vercel 트리아지 팀이 결정합니다. 전체 포상금 표, 상세 범위, 중복으로 분류된 취약점 목록은 HackerOne 프로그램 페이지에서 확인하세요.
Vercel 샌드박스는 베어메탈 EC2 호스트 위에서 실행됩니다. 각 샌드박스는 전용 게스트 커널을 갖춘 Firecracker 마이크로VM을 독립적으로 할당받으며, 그 마이크로VM 안에서 리눅스 컨테이너가 운영자의 코드를 실행합니다. 보안 경계는 컨테이너가 아닌 마이크로VM이기 때문에, 운영자가 제공한 코드는 호스트로부터 두 겹의 격리 계층 아래에서 실행됩니다. 저희는 해당 코드가 완전히 적대적이라고 가정합니다. 컨테이너 내 루트 권한, 마이크로VM 내 전체 커널 접근 권한을 갖고 호스트나 다른 테넌트에 도달하려 한다고 보는 거죠.
네트워크 경계는 마이크로VM 외부, 즉 호스트에서 강제됩니다. 샌드박스 내부 코드가 이를 수정하거나 비활성화할 수 없는 위치입니다. 샌드박스 방화벽은 아웃바운드 TCP와 DNS를 가로채 각 연결을 운영자의 도메인 및 CIDR 정책과 대조하며, 자격 증명이 마이크로VM에 진입하지 않도록 경계에서 직접 주입할 수도 있습니다.
한마디로, 샌드박스 경계를 무력화하는 모든 것입니다.
컴퓨트 경계: Firecracker 마이크로VM을 탈출해 EC2 호스트에 접근하거나, 컴퓨트 레이어를 통해 다른 테넌트의 샌드박스에 접근(코드 읽기·변조·실행)하거나, 다른 샌드박스에서 타 테넌트의 샌드박스를 강제 종료시키는 행위
네트워크 경계: 마이크로VM을 넘지 않고 샌드박스 방화벽을 우회하는 행위 — 운영자가 허가하지 않은 목적지에 접근하거나, 데이터를 외부로 유출하거나, 브로커링된 자격 증명을 탈취하는 경우
Firecracker 게스트 OS에만 도달하는 컨테이너 네임스페이스 탈출은 범위에 포함되지 않습니다. 네임스페이스는 보안 경계가 아니라 개발자 경험을 위한 기능입니다.
심각도 | 포상금 |
|---|---|
Critical | $25,000 – $50,000 |
High | $10,000 – $25,000 |
Medium | $5,000 – $10,000 |
Low | $1,000 – $5,000 |
등급별 취약점 유형 예시를 포함한 전체 포상금 표는 HackerOne 프로그램 페이지에서 확인할 수 있습니다.
프로그램은 현재 오픈 상태이며, 2026년 9월 1일(화) 또는 100만 달러의 포상금 풀이 소진되는 시점에 종료됩니다. 제출은 HackerOne 프로그램 페이지를 통해 진행됩니다.
발견한 취약점을 재현하려면 @vercel/sandbox SDK로 샌드박스를 부팅하고, 실제 동작하는 개념 증명(PoC)으로 영향을 입증해야 합니다. 대부분의 보고서에는 기본 샌드박스 OS로 충분하며, PoC에 추가 도구가 필요한 경우에만 Vercel Container Registry의 커스텀 이미지를 사용하세요. 정적 분석만으로는 포상금이 지급되지 않습니다. 실제 경계 돌파를 직접 보여주셔야 합니다.
전체 규칙, 참여 자격, 상세 범위 및 포상금 표, 제출 절차는 HackerOne 프로그램 페이지에서 확인하세요.
보고서 트리아지는 프로그램 시작일부터 종료 후 한 달까지 진행됩니다. 취약점이 확인되는 대로 포상금을 지급하고 패치를 배포하며, 유효한 보고서를 제출한 모든 연구자를 공식적으로 인정할 예정입니다. 이번 프로그램에서 발견된 기법들은 샌드박스 경계의 영구적인 개선 사항으로 반영되어, 챌린지 종료 후에도 Vercel의 모든 워크로드를 보호하게 됩니다. 프로그램 종료 후에는 발견된 기법과 적용된 수정 사항을 정리한 후속 글을 공개할 계획입니다.
프로그램 운영을 지원해 준 HackerOne, 그리고 앞으로 2주 동안 저희가 만든 것을 부수려 도전해 줄 모든 연구자들에게 감사드립니다.