네트워크 경계 없는 sandbox는 반쪽짜리에 불과하다
핵심 내용
코드 실행을 격리해도 네트워크 egress를 통제하지 않으면 sandbox는 완전한 보안 경계가 되지 못한다.
자세히 보기
microVM은 실행 중인 코드가 호스트나 다른 워크로드에 접근하지 못하게 격리하지만, 데이터 유출이나 내부 서비스 탐색, 외부 시스템 공격까지 막아주지는 않는다. 네트워크 egress를 통제하지 않으면 프로세스는 격리돼도 그 결과는 통제되지 않는다.
AI 에이전트가 파일을 읽고 명령을 실행하며 코드를 생성하는 환경에서는 프롬프트 인젝션이 이슈, 로그, dependency, 소스 파일 등에 숨어 있을 수 있다. 악성 지시를 받은 코드는 microVM을 탈출하지 않고도 읽을 수 있는 데이터를 외부 서버로 전송하거나, 내부 네트워크와 인증된 API를 공격할 수 있다.
네트워크 경계에는 단순한 VM·컨테이너 격리뿐 아니라 DNS, proxy, identity service, 내부 네트워크, 허용된 모든 destination이 포함된다. 연결이 끊긴 환경에서도 DNS resolver, 잘못 작동하는 allowlist, hostname 해석 차이, 신뢰된 package service 등이 우회 경로가 될 수 있다.
완전히 네트워크를 차단하면 실용성이 떨어지므로, sandbox는 작업에 필요한 연결만 선택적으로 허용해야 한다.
- 특정 AI provider만 허용하고 다른 public destination은 차단
- 전체 cloud network 대신 특정 object storage bucket만 허용
- private service 하나에만 접근하고 나머지 private address space는 차단
- trusted setup에서 dependency를 설치한 뒤 생성 코드 실행 전에 registry 접근 제거
- API key를 sandbox에 넣지 않고 API 요청만 인증
실용적인 정책 모델은 완전 개방, 완전 격리, 세분화된 선택적 연결을 모두 지원해야 하며, 일치하지 않는 traffic은 기본적으로 거부해야 한다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.