블로그 이미지

my hiding place

삶이 힘들 때, 조금이라도 고개를 들고 위를 보세요. 푸른 하늘이 당신을 맞이해줄 날이 있을 테니까. by nulonge


'ActiveX'에 해당되는 글 1건

  1. 2008.12.20 IE 0-Day 취약성과 AtiveX, 그리고 CC 인증

IE 0-Day 취약성과 AtiveX, 그리고 CC 인증

마이크로소프트에서 인터넷 익스플로러 보안 업데이트 패치를 내놓음에 따라 제로데이 공격이 다소 안정국면으로 접어들겠지만, 이번 일은 참 많은 것을 생각하게 합니다. 그중 하나가, ActiveX의 설계 결함이죠. 마이크로소프트에서도 고치려고 노력하고 있고, 그래서 이제는 ActiveX 모듈이 실행되려면 사용자의 실행 승인이 필요합니다. Vista에서는 더욱 보안을 강화했기 때문에, 관리자 권한으로 ActiveX를 실행하기란 더 어려워졌다고 합니다. 그렇지만 ActiveX가 가진 태생적 한계를 생각해보면, 사용을 권장할 만한 기술은 못됩니다.

CC 인증에서 다루는 보안 이슈중에 영역 분리(domain separation), 우회불가성(non-bypassability), 자체 보호(self-protection)라는 것이 있습니다. 다른 것은 생략하고 영역 분리만 생각해보면, ActiveX는 설계 단계에서 보안을 충분히 고려하지 않았다는 결론에 이르게 됩니다.

영역 분리란 각 기능이 수행될 때, 기능에 따라 영역은 분리되어야 함을 의미합니다. 운영체제의 영역과 웹 브라우저의 메모리 영역을 분리하고, 웹 브라우저 실행에 필요한 사용자 권한을 제한함으로써 웹 브라우저에서 발생할 수 있는 문제를 웹 브라우저 프로세스에 제한시켜야 합니다. 그래야 안전하다는 것이죠.

ActiveX는 웹 브라우저를 통해 다른 응용 프로그램을 설치하거나, 실행시킬 수 있도록 해줍니다. ActiveX로 설치되는 프로그램은 인터넷 익스플로러에서만 사용되는 일종의 애드온(add-on) 프로그램일 수도 있고, ActiveX의 형태를 빌려서 사용자의 PC에 설치되는 응용 프로그램일 수도 있습니다. 이렇게 설치된 프로그램이 인터넷 익스플로러 내부에서 호출되어 실행되거나 단독 실행되는데, 문제는 이렇게 실행되는 프로그램이 관리자 혹은 시스템 권한으로 실행될 수 있다는 점과, 시스템 라이브러리를 이용한다는 점이죠. 영역 분리가 되지 않는 겁니다.

이런 문제를 해결하려면, ActiveX 모듈을 호출하는 프로그램의 실행 계정은 제한된 권한만을 허용하고 레지스트리 접근을 차단할 필요가 있습니다. 참조하는 라이브러리 접근도 제한해야합니다. 이런 노력이 Vista에서는 이루어지고 있다는게 참 다행이죠.

저는 ActiveX가 없으면 참 좋겠습니다. 맥이나 리눅스 같이 Windows 기반 기술을 전혀 사용할 수 없는 운영체제를 사용하거나, Windows를 이용하더라도 파이어폭스나 구글 크롬과 같이 ActiveX를 지원하지 않는 웹 브라우저를 사용하는 사람들에게 ActiveX는 아예 사이트 출입 금지 푯말과 같습니다. 만약 금융권이 ActiveX 기반 공인인증서를 사용하지만 않았어도 괜찮았을 텐데하는 아쉬움이 남습니다. 

* 사이드 스토리

우리나라 국가 표준 암호화 알고리즘은 국내에서 개발된 SEED, ARIA, NES와 같은 것을 사용합니다. (NES는 국가기관에서만 사용하기 때문에 일반에 공개되지 않습니다.) 다른 나라들은 SSL/TLS를 사용해서 인터넷 상거래를 하지만, 우리나라에서는 국가 표준 암호화 알고리즘을 준수해야 하는 것 같습니다. 그래서 인터넷 뱅킹을 할 때 공인 인증서를 사용하면서 국가 표준 알고리즘의 사용 방법을 고민하다가 내린 결론이 ActiveX를 사용하기로 했다고 합니다. 출처를 기억하지 못해서 아쉽습니다. 아마도 이것이 국내 인터넷 환경에 ActiveX를 보편화한 시작점이 아니었을까요.

Comment 0 Trackback 0
Top

prev 1 next