마이크로소프트(MS)가 자사 클라우드 서비스에 '컨피덴셜컴퓨팅(confidential computing)'이라는 데이터 보호 기능을 시범 도입했다. 애플리케이션이 처리 중인 데이터를 격리된 공간에 둠으로써 아무도 들여다볼 수 없게 만드는 아이디어를 구현한 것이다.
컨피덴셜컴퓨팅은 해커와 악성코드뿐아니라 관리자 권한을 갖고 있는 악의적 내부자로부터도 데이터를 보호해 준다. MS애저 클라우드에 일종의 '보안위협 청정지대'를 생성한다.
지난 14일 마크 루시노비치 MS 애저 최고기술책임자(CTO)는 MS 애저 공식블로그를 통해 컨피덴셜컴퓨팅을 소개했다. 그는 컨피덴셜컴퓨팅이 "사용 중인 데이터(data while in use)의 암호화라는, 퍼블릭클라우드에 부재했던 보호 기능을 제공한다"고 설명했다. [☞원문보기]
그에 따르면 금융권 개인식별정보(PII), 금융데이터, 일반 기업의 지적재산 등이 조직 안팎의 해킹이나 데이터 탈취 및 유출 위협에 놓여 있다. 데이터의 접근 권한 소유여부 및 구성에 따라 공격자의 탈취 위협이나 유출 사고 사례가 발생한다.
루시노비치 CTO는 "많은 데이터 유출 사례는 접근제어를 잘못 구성한 결과인데, 대부분은 관리 계정 또는 침해당한 키를 사용해 암호화된 데이터에 접근함으로써 '사용 중에 접근되는 데이터'를 추적할 수 있다"고 지적했다.
이어 "사이버보안 통제와 (위협) 경감 수단이 발전됐음에도 일부 고객은 자기 데이터가 사용 중일 때 공격당할 것을 두려워해 민감한 데이터를 클라우드로 옮기길 꺼린다"며 "이들은 컨피덴셜컴퓨팅으로 데이터를 애저에 옮겨, 안정적이면서 안전하게 사용할 수 있다"고 덧붙였다.
■"외부 공격자, 내부 관리자도 못 들여다보는 격리공간에서 코드 구동-데이터 처리"
컨피덴셜컴퓨팅이 안전한 데이터 사용을 보장하는 위협 시나리오는 다음 3가지다. 첫째, 관리자권한을 획득했거나 데이터를 처리하는 하드웨어에 직접 접근할 수 있는 '악의적 내부자'의 위협. 둘째, 운영체제(OS), 애플리케이션, 하이퍼바이저의 버그로 인한 보안취약점을 악용하는 해커와 맬웨어의 위협. 셋째, 당사자의 승낙 없이 접근하는 서드파티의 위협.
MS애저 클라우드 환경에서 컨피덴셜컴퓨팅은 어떻게 이런 위협으로부터 사용자 데이터를 보호해줄까. 앞서 언급한대로 클라우드서비스의 하이퍼바이저를 통해 띄운 OS에서 구동되는 애플리케이션이 실행될 때, 해당 프로그램의 코드, 처리되는 데이터, 그 하드웨어 자원을 격리시키는 방식이다.
루시노비치 CTO의 설명 중 핵심 대목 두 단락을 한국말로 옮기면 아래와 같다.
"컨피덴셜컴퓨팅은 효율적인 처리에 필요한 '위험을 벗어난(in the clear)' 데이터가 있을 때, 그 데이터를 격리공간(enceval)이라고도 불리는 신뢰실행환경(TEE, Trusted Excution Environment) 안에서 보호한다. TEE는 그 안쪽의 데이터나 오퍼레이션을 들여다볼 방법이, 디버거로조차도 없음을 보장한다. 오로지 허용된 코드만이 데이터에 접근할 수 있도록 보장한다. 그 코드가 변경 또는 조작됐을 경우, 오퍼레이션은 거부되고, TEE는 중단된다. TEE는 코드 내 코드 실행을 통해 이런 보호 기능을 수행한다."
"우리는 애저 컨피덴셜컴퓨팅을 사용해서 개발자들이 그들의 코드를 바꾸지 않고 서로 다른 TEE의 이점을 활용할 수 있게 할 플랫폼을 개발하고 있다. 초기에는 2가지 TEE를 지원하는데, 버추얼시큐어모드(VSM)와 인텔 SGX다. VSM은 소프트웨어 기반 TEE로, 윈도10과 윈도서버2016에서 하이퍼V를 통해 구현된다. 하이퍼V는 관리자 코드가 컴퓨터나 서버에서 구동되는 것과, 로컬 관리자 및 클라우드 서비스 관리자가 VSM 격리공간의 콘텐츠를 들여다보거나 그 실행(execution)을 변조하는 것을 방지한다. 우리는 또 퍼블릭클라우드 최초의 SGX 기능을 갖춘 서버를 통해 하드웨어 기반 인텔 SGX TEE를 제공한다. 애저 또는 MS를 포함하지 않는 신뢰모델을 원하는 고객들도 SGX TEE를 활용할 수 있다. 우리는 인텔 그리고 다른 하드웨어 및 소프트웨어 파트너와 협력해 추가 TEE를 개발 중이고 가능해지면 지원할 예정이다."
컨피덴셜컴퓨팅은 현재 고객 신청을 받아 시범 제공되는 조기도입프로그램(EAP) 단계다. 여기엔 애저 VSM 및 인텔SGX를 지원하는 가상머신 접근, 관련 SDK, 사용 중 데이터를 클라우드 내 어떤 애플리케이션으로든 보호되게 할 윈도 및 리눅스 지원 등을 포함한다.
■"금융, 헬스케어, 인공지능 산업용 블록체인·클라우드DB 데이터 보호 가능"
MS는 이 신기능을 통해 애저 퍼블릭클라우드 서비스의 데이터보호 수준을 끌어올려, 데이터처리와 관련된 규제를 적용받는 업종으로 애저 클라우드 확산시킬 것으로 보인다.
루시노비치 CTO에 따르면 MS는 이런 격리공간을 사용해 SQL서버내 블록체인 금융 오퍼레이션부터 데이터 저장까지 모든 것과 애저 내의 자체 인프라를 보호하고 있다. MS는 앞서 '코코(Coco) 프레임워크'를 컨피덴셜컴퓨팅 블록체인 기술로 소개했는데, 그와 동일한 기술을 애저 SQL 데이터베이스 및 SQL서버의 사용중 암호화(encryption-in-use) 구현기술로 썼다. 이는 '얼웨이즈인크립티드' 기능을 강화해 SQL 쿼리 기능 손상 없이 항상 SQL 데이터베이스 안에서 민감한 데이터가 암호화되도록 해준다. 얼웨이즈인크립티드는 격리공간에 민감한 데이터 연산을 위임해, 여기서 데이터가 안전하게 복호화 및 처리되게 만든다. MS는 자사 제품 및 서비스에서 처리되는 어떤 민감한 정보든지, 사용중에도 보안상 안전해지도록 격리공간 기술을 계속 사용한다는 방침이다.
MS는 컨피덴셜컴퓨팅을 SQL서버뿐아니라 금융, 헬스케어, 인공지능 및 기타 분야를 포함한 여러 산업에 걸쳐 응용할 수 있을 것으로 전망하고 있다. 예를 들어 TEE를 사용하면 금융 분야에서 개인 포트폴리오 데이터와 자산관리 전략을 외부에서 들여다볼 수 없게 된다. 의료 조직은 유전체 염기서열(genomic sequences)같은 개인 환자 데이터를 공유하면서, 다른 조직에 유출당할 위험 없이 여러 데이터 세트를 아우르는 머신러닝을 통해 심도 깊은 통찰을 얻을 수 있다. 석유 및 가스와 사물인터넷 시나리오에선, 기업의 지적재산을 나타내는 민감한 지진 데이터를 클라우드로 옮겨 처리하면서 사용중 암호화 기술로 보호할 수 있다.
관련기사
- 한국MS, 21일 '애저 디스커버리 데이' 개최2017.09.25
- MS "클라우드서비스, 사이버무기로 악용돼"2017.09.25
- MS, 모바일·웹앱용 클라우드에 리눅스 지원2017.09.25
- 한국MS, 13일 클라우드 활용방안 행사 개최2017.09.25
루시노비치 CTO는 이런 컨피덴셜컴퓨팅에 적용된 소프트웨어와 하드웨어 기술이 MS의 애저 팀, 윈도 팀, 디벨로퍼툴 그룹, MS리서치, 인텔이 4년에 걸쳐 개발해 온 것이라고 밝혔다. 블로그 포스팅 말미에 MS리서치가 컨피덴셜컴퓨팅에 관해 작성한 연구 논문 4건도 소개했다.
관련된 첫째 논문은 '피난처(Haven)를 통해 신뢰받지못하는 클라우드로부터 애플리케이션을 보호하기'다. [☞원문보기] 둘째 논문은 'SGX를 사용해 클라우드 내 신뢰가능한 데이터 분석'이다. [☞원문보기] 셋째 논문은 신뢰받는 '프로세서 기반의 불안정한 다자 머신러닝'이다. [☞원문보기] 넷째 논문은 '보안을 갖춘 격리된 구역 디자인 및 검증 방법'이다. [☞원문보기]