샌드박스(Sandbox)란 컴퓨터 안에 생성되는 논리적으로 분리된 영역이다. 이 영역은 샌드박스 외부, 즉 PC 전체 환경에 영향을 미치지 않고 격리돼 있어 안티바이러스 솔루션에서 진단용으로 사용하는 때가 많다.
기존 안티바이러스는 대부분 신호 기반 탐지 기술을 사용했다. 어떤 바이러스나 악성코드를 발견하면 해당 정보를 수집해 특정 신호를 진단 DB에 업데이트함으로써 추후 피해를 방지하는 방법이다. 하지만 사후 대응 성격을 띠는 문제가 있을 뿐만 아니라 신종 멀웨어나 기존 멀웨어를 부분적으로 수정한 변종 멀웨어 생성 속도가 상상을 초월할 정도로 빨라지는 등 한계가 있는 방법이다.
이런 이유로 각광 받는 것이 바로 샌드박스를 이용한 행위 기반 탐지 방식이다. 진단 전용으로 생성되는 샌드박스 안에서 외부(인터넷, USB 등 저장매체 등)에서 유입하는 파일을 실행해 실제로 어떤 작업이 이뤄지는지 감시·관찰하고 악의적 행위로 간주되면 프로세스를 차단하는 등 보다 근본적인 수준에서 대응하기 위한 방법이라 할 수 있다.
행위 기반 탐지 방식은 해당 파일을 실제로 실행할 때 일어나는 일을 기반으로 공격 행위를 파악하기 때문에 보다 정확하고 기존에 알려지지 않은 신종 멀웨어 등에도 효과적으로 대처할 수 있다.
반면에 이러한 진단용 샌드박스가 널리 쓰이면서 최근 진단용 샌드박스를 무력화하는 공격 기법이 속속 등장하고 있다. 멀웨어가 실행되는 환경을 감지해 현재 실행되는 환경이 샌드박스 내부라고 판단되면 공격 행위를 중단해 정상 파일처럼 위장하고 있다가 시간차를 두고 공격을 시작하는 등 진단용 샌드박스를 우회하는 기법을 사용하는 것이다. 이런 형태의 신종 공격법 등장으로 인해 ‘보안용 샌드박스가 무력화됐다’는 오해 섞인 인식이 퍼져나가고 있는 실정이다.
샌드박스를 행위 탐지와 진단 목적으로만 국한하지 않고 논리적으로 분리된 하나의 독립된 PC처럼 만들어 활용하면 새로운 형태의 보안 환경 구축이 가능하다.
샌드박스 기술을 응용해 PC 안에 가상 영역을 만들어 외부와 완전히 격리된 영역을 만드는 것이다. 보안 목적과 환경에 따라 가상의 영역을 외부에서 유입하는 위협요소를 가두는 ‘감옥’처럼 활용할 수도 있고 중요한 자료가 외부로 유출되지 않도록 ‘금고’처럼 활용할 수도 있다. 별도의 관리 모듈 제어 하에 있어 초기화 등 관리도 쉽다.
위협요소가 활동할 수 있는 범위를 제한하거나(샌드박스를 외부 연결 전용으로 사용할 경우) 외부 위협요소로부터 완전히 격리된 영역을 생성해 주요 자료를 보호할 수 있어 진단용 샌드박스 우회 공격에도 무력화되지 않는다.
이러한 샌드박스 기술은 어느 방법을 택하든 두 영역이 격리돼 있기 때문에 외부 공격에 대한 방어와 함께 내부 정보유출을 동시에 막을 수 있다. 특히 개인정보를 취급하거나 기업 기밀정보를 다루는 업무에 유용하다.
보안 대책 구조는 크게 ‘예방’ ‘탐지’ ‘대응’ ‘예측’ 4단계로 설명할 수 있다. 각 단계는 지속적으로 순환하면서 강화되는 형태다. 그 중 알려지지 않은 위협에 대비하기 위해선 위협에 노출되는 영역을 줄여 피해를 우회하거나 차단하는 ‘예방’이 필요하다. 가장 기본적인 방법은 바로 보호해야 할 대상을 위협으로부터 격리하는 것이며, 샌드박스 기술로 이를 구현해 보안성을 높일 수 있다.
남승우 미라지웍스 대표 ceo@mirageworks.co.kr