이메일을 적으시면 보안관련 소식을 받을수 있습니다.
이메일:

안녕하세요.

청년이노학난성  마플 입니다.

이번 글의 주제는 Trust Computing 이고, 목표은 변화하는 Computer Security 기술을 관통하는 하나의 시각을 소개. “ 입니다.

 

보안 기술은 나날히 발전하고 있습니다.

개인적으론, 어느 때보다 더 숨가쁘게 바뀌고 있다는 느낌을 받습니다.

BOF에서 시작한 시스템 취약점의 전쟁이 GCC 와 시스템 연동 모듈을 통해 견고하게 패치가 되고 난 후에는 시스템 취약점에서 적용되었던 기술들이 응용 프로그램 단으로 올라오게 되었습니다. 그리고 이 기술들은 대단히 고도화 되어서 Pwn2own 과 같은 고수들이 모이는 자리에서 사파리는 단 하루도 못 버티고 넝마가 되어 버리기도 했습니다.

 제가 보안 업무를 하고 있을 때, 하루에도 몇 개씩 발표되는 취약점들을 보면서 들었던 생각은 크게 두 가지인데 , 하나는 이런걸 찾는 사람들은 뭘 하는 사람들인가?” 와 다른 하나는 우리나라 프로그램은 왜 없는가?” 였습니다.

혹시 우리나라 프로그램이 너무 잘 만들어져서 그렇겠지.’ 라고 생각하신 분은 정말 긍정적이고 낙천적인 분이므로 그 사고방식이 앞으로도 변하지 않기를 진심으로 빌어드리고 싶습니다.

만약, 우리나라에서 대중적으로 사용하는 프로그램에 똑 같은 취약점이 있다면, 그래서 누군가가 이를 악용해서 수 많은 사람들을 고통스럽게 한다면… [보안]이라는 직종에 업을 삼은 사람으로서 어찌 고개를 들고 다닐 수 있겠습니까? 저와 비슷한 생각을 하신 분들이 혹은, 그 중요성을 헤아리신 분이 계신지 작년 ISEC에서 KISA 부스에서 KISA가 준비하는 프로젝트를 보고 흐뭇한 기분이 들었던 적이 있습니다.

KISA에서는 Source Code에 대한 취약점을 점검해주는 프로젝트를 진행 중이었습니다. 소프트웨어 취약점을 분류하고, Source Code front-end에서 중간코드로 번역한 뒤에 분류한 취약점에 대한 패턴을 찾아주는 프로젝트로 기억합니다. 이 방법은 GCC와 같은 GPL 컴파일러들의 front-end를 그대로 사용할 수 있기 때문에 번역된 중간코드에 대해서 프로그래밍 언어에 제약을 받지 않고 진단을 할 수 있다는 것이 매우 큰 장점입니다. 이 프로젝트가 제대로 진행되고 있길 바라고 있습니다. 올해에는 IT연구개발 예산도 감축되었다던데요 -_-; …

 

앞서 말한 것은 일례로, 사실 Windows XP 까지의 보안 모델은 이미 한계점에 달했습니다. 사용자의 동의 없이도 네트워크를 사용하고, 드라이버를 로드하고, 기타 등등원하는 작업은 다 할 수 있습니다. 그나마 VISTA 7에 들어서 보안 모델이 강화가 되어서 많은 부분에서 사용자의 동의를 구하고 있습니다. 하지만, 이런 방안도 현재와 같은 Segment기반의 보호 모델에서는 한계점이 있습니다. 흔히 말하는 Ring 보호 체계는, 사용자의 동의를 요하게 하는 등의 구조를 취한다고 해도 필요한 경우 OS와 동등한 권한인 Ring 0 에서 실행할 수 있도록 해주며, 그런 인터페이스에 대한 접근이 어렵지 않다는 결정적인 한계점이 있습니다.

뭔가 보다 근본적인 해결책이 없을까요?

PC를 사용하는 사용자가 바이러스나 악성코드, 취약점이나 패치, 보안 등에 대해서 고민할 필요 없이 마음 편히 컴퓨터를 사용할 수 있는 환경이 모든 보안인들의 공통된 목표일 것 입니다. 자신들이 업으로 삼고 있는 직종이 없어도 세상이 편히 돌아갈 수 있도록 노력한다는 것이 아이러니 한 숙명이지요. 어쨌든 그런 연구는 계속 있어왔으며, 저는 여기서 하나의 결론을 갖게 됐습니다.

이것은 영화 Matrix 의 일부 내용과 비슷합니다. 좀더 범위를 좁혀 말하면, 안철수연구소에서 발표한 TrusZone과 같은 맥락이기도 합니다. 그것은 가상화기술 입니다. 안철수연구소의 TrusZone은 어플리케이션 단을 가상화한다고 했습니다. 이에 대해서 저는 자세히 모르지만, 추측하자면 createProcess등을 후킹하고 응용 프로그램이 동작하는 환경을 가상화하면 그 프로그램이 악성코드라고 해도 어떤 영향도 받지 않을 수 있다는 겁니다.

이런 생각을 했을 때, 과연 학계나 업계는 어떻게 돌아가는지 궁금해서 자료를 찾아봤습니다. 지금은 2011년이고, 이런 아이디어는 오래 전부터 있어 Trust Computing Group 등을 통해 진행되고 있습니다. 제가 본 2004년도 자료는 이미 뼈대가 갖춰지고 구체적으로 정리가 되어있었고 이로 미뤄 볼 때 그 이전에 이미 시작했다는 뜻이겠지요.

 


 
위의 그림은 TrustWorthyComputing 의 자료 중 일부입니다. 가상화 기술은 현 시점의 거의 모든 보안기술의 제약사항을 극복할 수 있는 열쇠입니다. 더 이상 어디를 누가 먼저 후킹하고 혹은 어느 타이밍에 후킹하는 것을 가지고 싸울 필요가 없습니다. 그를 위해 폴링을 하고 CPU 자원을 낭비할 필요도 없습니다.

VMM을 통해 I/O에 대한 제어를 해주면 됩니다. 모든 I/O MSR에 대한 접근 등, VMM에서 컨트롤하고자 하는 이벤트들에 대해서 다른 말로 모든 Privilege Instruction들의 수행에 대해서 VMMOS보다 선제하는 우선권을 가지고 있기 때문입니다

이미 이런 모델을 구상하고 TCG TPM 과 같은 모듈을 만들었습니다. CPU 지원 가상화 기술이 이를 위한 설계인지는 알 수 없지만 어쨌든 도입되었습니다. 아니 다른 기술적인 사항을 제쳐두고, BIOS에서 시작하는 Secure 부팅 프로세서는 그 동안 OS 종속적인 보안 모듈들이 OS의 교체 혹은 우회로 인해 무력화되어버리는 약점을 보완해주는 효과를 줄 수 있겠습니다. 

 

제가 하고자 하는 말은 대충 마무리가 되었는데, 제대로 전해졌는지 모르겠습니다. INTEL, AMD, IBM, Microsoft 와 같은 회사들이 주축이 되어 인증, 데이터보호, 클라우드, 네트워크, 금융, 정부, 건강의 분야에 적용하기 위해 TCG를 출범시키고 2004년 전부터 향후 보안 모델에 대한 프로세스를 정립해왔습니다. 이에 대해 Trust Boot(tboot) 과 같은 Trust boot 환경을 비롯해, TXT, SVM 과 같은 원천기술에 대해 특허를 출원해왔습니다.

 

여기까지가 제가 보는 보안 기술의 동향이고, 변화였습니다.

자신이 아는 만큼 보인다는 말을 되뇌이며, 겸손하게 제 시각을 객관적으로 담아내기 위해서 노력했습니다.

 

건승하세요.

마플 배상

 
참고문서 : TrustWorthy Computing (2004, Trent Jaeger)
참조링크 :
 http://www.trustedcomputinggroup.org/

****************************************************************************************************

본 포스팅의 저작권은 보안인닷컴과 작성자에 있으며 상업적 이용을 배제하며 콘텐츠 이용시에는 반드시 출처와 링크를 이용해 주시기 바랍니다. 무단도용은 저작권법에 저촉을 받습니다..

****************************************************************************************************

Posted by 알 수 없는 사용자
,