백엔드
AI가 방금 짠 코드, 저희 서버에서 돌아갑니다
두줄요약
사용자와 AI가 만든 코드를 운영 서버에서 안전하게 실행하기 위해 별도 Kernel 계층을 설계했습니다. 기존 서비스와 실행 환경을 분리하고 인증정보와 세션 상태를 밖으로 빼는 방향을 정리했습니다.
문제 상황
- 사용자와 AI가 생성한 코드가 모두 운영 서버에서 실행되는 구조
- 코드 생성 시점에 검토가 불가능하고, 무한 자원 사용·데이터 접근·인증정보 노출 위험 존재
- 기존 애플리케이션 내부 실행만으로는 공격 표면 축소와 격리 요구를 충족하기 어려움
원인 분석
- 컨테이너와 Kubernetes만으로는 호스트 커널을 공유하는 구조적 한계 존재
- Jupyter는 실행 요청 제어는 가능해도 실제 코드 실행 환경 격리는 별도 문제
- 접속 정보와 실행 환경이 가까이 붙으면 침해 시 다른 자원으로 이동 가능
해결 방법
- 코드 실행 책임을 기존 서비스에서 분리하고 Kernel 제어 계층을 별도로 구성
- Kernel이 인증, 권한 확인, 실행 환경 생성·폐기, 세션 관리 담당
- 샌드박스에는 최소한의 요청만 전달하고 실제 DB 접속 정보는 외부 데이터 연결 서비스에만 보관
