
이 글에서 다루는 내용
샌드박스(Sandbox)란 무엇일까?
(프로그램을 안전하게 실행하는 격리 공간)
컴퓨터와 스마트폰에서는 여러 프로그램이 동시에 실행된다. 웹 브라우저를 열어 놓은 상태에서 메신저를 사용하고, 음악을 들으면서 문서를 작성하기도 한다.
이처럼 다양한 프로그램이 하나의 기기 안에서 함께 실행되려면 각 프로그램이 서로에게 함부로 영향을 주지 않도록 관리해야 한다.
한 프로그램의 오류가 다른 프로그램으로 번지거나, 특정 앱이 사용자의 사진과 파일을 마음대로 열어볼 수 있다면 기기는 매우 불안정해질 것이다.
이러한 문제를 줄이기 위해 사용하는 기술이 바로 샌드박스(Sandbox)다.
샌드박스란?
샌드박스는 프로그램을 외부와 분리된 제한된 공간에서 실행하는 기술이다.
프로그램은 샌드박스 안에서 정해진 기능과 자원만 사용할 수 있다. 파일을 읽거나 인터넷에 접속하고, 카메라나 마이크를 사용하는 행동도 허용된 범위 안에서만 가능하다.
영어로 Sandbox는 아이들이 모래를 가지고 노는 모래 놀이터를 뜻한다. 아이들은 정해진 공간 안에서 자유롭게 놀 수 있지만, 모래가 놀이터 밖으로 퍼지지 않도록 경계가 만들어져 있다.
컴퓨터의 샌드박스도 이와 비슷하다.
프로그램이 정해진 공간 안에서는 필요한 작업을 수행할 수 있도록 하되, 그 행동이 다른 프로그램이나 운영체제 전체에 영향을 주지 않도록 제한하는 것이다.
샌드박스는 왜 필요할까?
프로그램에는 오류가 발생하거나 예상하지 못한 동작이 나타날 수 있다. 악성코드처럼 처음부터 사용자의 정보나 시스템을 공격하기 위해 만들어진 프로그램도 있다.
프로그램이 아무런 제한 없이 기기의 모든 파일과 기능에 접근할 수 있다면 작은 오류도 다른 프로그램이나 운영체제 전체에 영향을 줄 수 있다.
악성 프로그램이라면 사용자의 사진과 문서를 읽거나, 카메라와 마이크를 실행하고, 저장된 정보를 외부로 전송할 수도 있다.
샌드박스는 프로그램이 접근할 수 있는 범위를 미리 나누어 이러한 위험이 기기 전체로 확산되지 않도록 막는다.
즉, 샌드박스는 보안을 위한 기술인 동시에 프로그램 사이의 영향을 줄이고 시스템을 안정적으로 운영하기 위한 기술이다.

우리는 이미 샌드박스를 경험하고 있다
샌드박스는 프로그램이 사용할 수 있는 공간과 기능의 범위를 정해 놓는 구조다. 프로그램은 기본적으로 자신에게 허용된 범위 안에서만 실행되며, 다른 프로그램의 정보나 기기의 주요 기능에는 마음대로 접근할 수 없다.
스마트폰 앱도 이와 비슷한 방식으로 동작한다.
새로운 앱을 설치했다고 해서 그 앱이 처음부터 사용자의 모든 사진을 열어보거나, 카메라와 마이크를 자유롭게 사용할 수 있는 것은 아니다. 앱은 기본적으로 자신의 공간 안에서만 실행되기 때문에 사진, 카메라, 마이크, 위치 정보처럼 외부에 있는 기능과 정보에는 접근할 수 없다.
다만 앱의 기능을 수행하려면 이러한 접근이 필요한 경우도 있다. 사진 편집 앱은 사용자의 사진을 불러와야 하고, 화상회의 앱은 카메라와 마이크를 사용해야 하며, 지도 앱은 현재 위치를 확인해야 한다.
이때 앱은 운영체제를 통해 사용자에게 필요한 권한을 요청한다. 사용자가 허용하면 운영체제는 해당 앱이 허용된 기능에 접근할 수 있도록 하고, 사용자가 거부하면 접근을 차단한다.
따라서 앱 권한 요청은 샌드박스 그 자체가 아니다. 샌드박스로 제한된 앱이 필요한 기능에 접근하기 위해 사용자의 허가를 받고, 운영체제가 그 허가 범위 안에서 접근을 통제하는 절차다.
다만 모든 운영체제와 프로그램이 완전히 같은 방식으로 샌드박스를 구성하는 것은 아니다. 프로그램을 격리하는 범위와 권한을 관리하는 방식은 운영체제와 프로그램의 종류, 보안 목적에 따라 달라질 수 있다.
샌드박스 안에서는 무엇이 제한될까?
샌드박스는 프로그램이 실행되지 못하도록 막는 기술이 아니다.
프로그램이 필요한 작업은 수행할 수 있도록 하되, 허용되지 않은 정보나 기능에는 마음대로 접근하지 못하도록 제한한다.
사진과 파일
앱이 사용자의 모든 사진과 파일을 마음대로 열어보거나 변경하지 못하도록 접근 범위를 제한할 수 있다.
사진 편집 앱처럼 사진이 필요한 프로그램은 사용자에게 권한을 요청하고, 사용자가 허용한 범위 안에서 사진에 접근할 수 있다.
카메라와 마이크
카메라와 마이크는 사용자의 모습과 음성을 수집할 수 있는 기능이다.
따라서 앱이 이러한 기능을 사용하려면 사용자에게 권한을 요청해야 한다. 사용자가 허용하지 않으면 앱은 카메라나 마이크를 사용할 수 없다.
위치와 연락처
앱이 사용자의 현재 위치나 저장된 연락처를 확인하려면 해당 정보에 접근할 수 있는 권한이 필요하다.
사용자는 앱의 기능에 필요하지 않다고 판단하면 권한을 허용하지 않거나, 기존에 허용한 권한을 다시 취소할 수도 있다.
인터넷 연결
프로그램이 인터넷에 접속하거나 외부 서버와 정보를 주고받을 수 있는 범위도 제한할 수 있다.
외부 통신이 필요하지 않은 프로그램은 인터넷 연결을 차단하거나, 필요한 서버에만 접속하도록 설정할 수 있다.
다만 어린이가 성인 사이트나 유해 사이트에 접속하지 못하도록 막는 기능은 샌드박스보다는 자녀 보호 기능이나 콘텐츠 필터링에 해당한다.
샌드박스의 네트워크 제한은 사용자가 어떤 사이트를 볼 수 있는지를 정하는 것이 아니라, 프로그램이 인터넷을 통해 어디까지 통신할 수 있는지를 제한하는 개념이다.
이처럼 샌드박스는 프로그램이 사용할 수 있는 정보와 기능의 범위를 정해, 필요한 권한만 갖도록 만든다.
샌드박스가 없다면 어떻게 될까?
샌드박스가 없다면 프로그램이 사용할 수 있는 공간과 기능의 경계가 약해진다.
예를 들어 새로 설치한 사진 편집 앱이 사용자의 허락을 받지 않고 모든 사진을 열어볼 수 있다. 손전등 앱처럼 연락처나 마이크가 필요하지 않은 앱도 사용자의 연락처와 음성 정보에 접근할 수 있다.
하나의 프로그램에서 발생한 오류가 다른 프로그램이 사용하는 파일에 영향을 주거나, 악성 프로그램이 기기 안에 저장된 정보를 마음대로 읽고 변경할 가능성도 커진다.
프로그램이 인터넷에 자유롭게 접속할 수 있다면 사용자의 정보를 외부로 전송하거나, 외부에서 새로운 명령을 받아 실행할 수도 있다.
샌드박스는 모든 오류와 보안 문제를 완전히 막아 주는 기술은 아니다. 그러나 프로그램의 행동 범위를 미리 제한해 오류나 위험한 행동이 다른 프로그램과 기기 전체로 확산될 가능성을 줄인다.
AI에도 샌드박스가 필요한 이유
최근의 AI는 단순히 질문에 답하는 데서 끝나지 않는다.
파일을 읽고 분석하거나, 코드를 작성하고 실행하며, 인터넷과 외부 도구를 사용할 수도 있다. AI 에이전트처럼 여러 작업을 연결해 실제 행동을 수행하는 시스템도 등장하고 있다.
이러한 AI가 아무런 제한 없이 컴퓨터와 네트워크에 접근한다면 예상하지 못한 문제가 발생할 수 있다.
예를 들어 AI가 사용자의 요청을 잘못 이해해 필요하지 않은 파일을 읽거나 변경할 수 있다. 잘못된 명령을 실행해 파일을 삭제하거나, 외부 서비스에 보내지 않아야 할 정보를 전송할 가능성도 있다.
이 때문에 AI가 파일을 다루거나 코드를 실행하고 외부 도구를 사용할 때도 샌드박스가 중요하다.
AI는 샌드박스 안에서 필요한 작업을 수행하되, 접근할 수 있는 파일과 기능, 인터넷 연결 범위를 제한받는다.
예를 들어 특정 폴더 안의 파일만 읽을 수 있도록 하거나, 새로운 파일은 지정된 공간에만 저장하도록 제한할 수 있다. 인터넷 접속을 차단하거나 허용된 서비스만 사용할 수 있도록 설정할 수도 있다.
AI가 더 많은 기능을 수행할수록 샌드박스는 단순한 보안 장치를 넘어 AI가 어디까지 행동할 수 있는지를 관리하는 통제 기술이 된다.
샌드박스가 중요한 이유
샌드박스의 핵심은 프로그램이나 AI에 필요한 권한만 주는 데 있다.
정상적인 프로그램이라도 오류가 발생할 수 있고, 안전해 보이는 파일에도 위험한 코드가 포함될 수 있다. AI 역시 항상 사용자가 예상한 방식으로만 행동한다고 보장할 수는 없다.
따라서 프로그램과 AI가 어떤 정보에 접근하고 어떤 기능을 사용할 수 있는지를 미리 정해 두어야 한다.
샌드박스는 문제가 발생하지 않도록 모든 위험을 제거하는 기술이 아니다.
문제가 발생하더라도 그 영향이 다른 프로그램과 운영체제 전체로 퍼지지 않도록 범위를 제한하는 기술이다.
결국 샌드박스는 프로그램과 AI가 정해진 공간 안에서 필요한 작업을 수행하도록 만들면서, 기기와 사용자의 정보를 보호하는 기본적인 격리 구조라고 할 수 있다.
DANA NOTES 한 줄 정리
샌드박스는 프로그램이나 AI가 허용된 공간과 기능 안에서만 동작하도록 격리해, 오류와 위험이 기기 전체로 확산되는 것을 막는 기술이다.

