본문 바로가기
AhnLab 보안in

윈도우 7에 추가된 보안기능 세가지

by 보안세상 2020. 4. 7.

2009.04.21

 

Windows 7은 PC를 위한 Microsoft의 차기 운영체제이다. 올 1월에 베타버전이 공개되었으며 내년 1월 전까진 출시될 것이라고 한다. Windows 7은 Vista 서비스팩1을 기반으로 개발된 것으로 알려져 있으며, Vista와 완벽하게 호환되는 것을 목표로 한다. 멀티터치를 지원하고 윈도우 쉘을 완전히 새로 디자인 했으며 홈그룹(HomeGroup)이란 홈네트워크 시스템을 제공한다. 또, 가상 하드 디스크를 지원하여, 멀티 코어 프로세스 환경에서의 성능 향상, 부팅 속도 향상, 커널 성능 향상 등 전체 적인 시스템 성능이 개선되었다. 그 중에서도 특히 반가운 것은 필자가 가장 많이 쓰는 어플리케이션 2종 세트가 업그레이드 되었다는 것이다. ^^

이전보다 화려한 UI로 변신한 그림판
계산기 프로그래머 모드

Windows 7 베타 버전의 공개 이후에 UI라던가 하는 부분에 대해서 많은 블로그에서 다루어 졌으므로, 여기선 보안 등 비교적 잘 알려지지 않았던 기술적인 내용에 대해서 다루도록 하겠다.

첫 번째 소개할 것은 UAC(User Account Control)의 개선이다. 비스타 시절에 워낙 말이 많았던 기능으로 사용자들이 비스타를 멀리하도록 하는데 있어 한 몫 단단히 한 기능이다.

비스타는 이전 버전의 윈도우 운영체제와 달리 일반 사용자는 응용프로그램을 실행하는데 필요한 최소한의 권한을 가지도록 설계되었다. 이는 Unix계열의 운영체제의 권한 관리와 같은 기조로 일반 사용자가 실행하는 응용프로그램은 시스템에 어떤 위해를 가하지 못하도록 하기 위함이다. 따라서, 응용프로그램이 시스템 설정을 변경하거나 드라이버, 서비스 등을 설치하는 행위는 기본적으로 모두 차단된다.

하지만, 보안 프로그램과 같이 시스템의 설정을 변경해야 만 하는 경우나 시스템의 모든 사용자가 사용할 응용프로그램을 설치해야 하는 경우와 같이 관리자 권한이 꼭 필요한 경우가 있을 수 밖에 없다. Unix계열의 운영체제의 경우 “sudo”와 같은 명령을 제공하여 일반 사용자가 “패스워드를 입력하고” 관리자 권한으로 프로그램을 실행할 수 있도록 하고 있다. 사용자계정을 보통 관리자 권한으로 사용하기 때문에 잘 알려져 있진 않지만, 비스타 이전의 운영체제인 Windows 2000과 XP에서도 일반 사용자가 관리자 권한으로 프로그램을 실행시킬 수 있는 기능이 있다.

사실 비스타의 UAC는 이와 같은 기존의 “권한 상승 방법”을 보다 광범위하게 그리고 보다 세련되게 개발한 것이다. 관리자 권한으로만 컴퓨터를 사용하던 사용자 들이 새로운 개념-사실 다른 운영체제에선 오래된 개념이지만-에 적응하지 못해서 너무 불편하게 느끼는 것이다.

보안성 향상의 기초는 사용권한의 분리이다. 마이크로소프트는 사용자 편의를 위한 다는 명목으로 계속 미뤄왔던 것이다. 사용자들이 Vista의 UAC를 너무 불편해 하고 있기 때문에 마이크로소프트에서는 Windows 7에서 보안성이 조금 떨어지더라도 사용성이 크게 높아 질 수 있는 UAC옵션을 새롭게 추가하였다. 이 옵션은 항상 UAC를 띄우는 것 대신에 프로그램이 임의로 시스템을 변경할 때만 UAC를 띄우도록 하고 있다. 즉, 사용자가 시스템설정을 변경할 때는 UAC를 띄우지 않는 다는 것이다. 이 옵션은 UAC가 나타나는 케이스를 크게 줄이고, 실질적인 위협에 적절히 대처할 수 있도록 함으로써 적절한 선을 찾았다는 평가를 받고 있다

 

Windows 7 UAC 설정 화면

※ Windows 7 UAC와 관련된 에피소드 하나

Windows 7의 UAC기능이 처음 알려졌을 때 작은 해프닝이 하나 있었다. 사용자가 시스템 설정을 변경하는 것처럼 흉내 내는 간단한 프로그램으로 UAC를 꺼버릴 수 있는 취약점이 발견 된 것이다. 한 때 떠들썩 하게 커질 것만 같았던 이 문제는 MS가 UAC옵션을 설정하는 화면을 UAC를 통하여 실행되도록 하여 간단히 해결함으로써 크게 이슈화 되지 않고 사라져 버렸다.

- 윈도우 7 베타버전 UAC기능, 보안 취약 논쟁, 보안뉴스

- Sacrificing security for usability: UAC security flaw in Windows 7 beta (with proof of concept code)

- UAC Feedback and Follow-Up

 

두 번째는 앱락커(AppLocker)이다. 앱락커는 일종의 화이트리스트기반의 보안기능으로 기업에서 허가되지 않은 소프트웨어가 실행되지 않도록 하는 기능이다. 업무용 이외의 소프트웨어는 실행되지 않도록 함으로써 악성코드의 감염을 방지하고 헬프데스크 호출 회수를 줄이며 라이선스를 얻은 소프트웨어만 사용할 수 있도록 할 수 있다.

기존의 화이트리스트 기반의 어플리케이션 컨트롤 제품의 경우 소프트웨어를 업데이트하거나 신뢰할 수 있는 소프트웨어의 설치에도 매번 관리자의 도움을 받아야 하는 수고가 있어야 했다.

앱락커는 룰기반으로 설계되어 보다 유연하게 관리할 수 있다고 한다. 예를 들면 마이크로소프트에 의하여 서명된 오피스 2003 이상은 모두 설치되도록 허가 한다와 같은 룰의 설정이 가능하다. 앱락커는 실행파일과 윈도우 인스톨러, 스크립트에 대해서 제어할 수 있으며, 인증서에 기반한 Publisher와 Path, File hash 세가지 방법으로 규칙을 작성할 수 있다. 파일이나 폴더 단위로 세세하게 규칙을 작성해야 하기 때문에 개인사용자가 사용하기엔 어려우나 어플리케이션을 통제하고자 하는 의지가 있는 기업환경에서는 효과적으로 사용할 수 있을 것으로 생각된다.

앱락커(AppLocker), 인증서 기반으로 규칙을 작성할 수 있다.

세 번째는 비트락커 투 고(BitLocker To Go)이다. 비스타에서 처음 소개된 비트락커는 TPM(Trusted Platform Module)으로 하드디스크를 암호화하는 기능이다. 메인보드에 내장된 하드웨어를 사용하여 암호화하기 때문에 하드디스크를 분리하여 다른 장비에 붙였을 때 데이터를 읽을 수가 없다. 따라서, 바이오스 수준에서의 암호화와 함께 사용한다면 어느 정도 데이터를 보호할 수 있다. 특히 고급 모드로 TMP과 USB, PIN번호를 함께 사용하도록 설정할 수 있는데 이 경우 부팅 시 마다 USB와 PIN번호를 요구함으로써 도난이나 분실로부터 보다 안전하게 하드디스크를 보호 할 수 있다.

 

비트락커 투 고(BitLocker To Go)는 USB메모리와 같은 이동식 저장장치를 암호화할 수 있는 기능이다. 탐색기에서 간단히 설정하여 사용할 수 있다.

탐색기에서 간단히 비트락커 투 고(BitLocker To Go)를 사용할 수 있다

하드디스크를 암호화할 때와 달리 TPM을 사용하지 않고, 패스워드나 스마트카드를 사용하여 암호화 한다. TPM을 사용하게 되면 다른 컴퓨터에서는 USB메모리를 사용할 수 없게 되므로, 여러 컴퓨터에서 사용해야 하는 USB메모리와 같은 이동식 저장장치에는 TPM을 사용할 수 없다.

 

비트락커 투 고(BitLocker To Go), 패스워드나 스마트카드를 사용하여 USB메모리를 암호화한다

비트락커 투 고를 사용하여 USB메모리를 사용하고 나면 다음 그림과 같이 암호화된 파일만 볼 수 있게 된다. 다음 그림은 Windows 7에서 비트락커 투 고로 암호화하고 Windows XP에 연결해 본 USB드라이브를 탐색기에서 조회해 본 것이다. 보다시피 원래 들어 있었던 파일은 온데간데 없고 암호화된 것으로 보이는 파일만 나타난다. 비트락커 투 고로 암호화된 드라이브를 XP에서 사용하려면, 비트라커 투 고 리더(BitLocker To Go Reader)를 사용해야만 한다. 다음 그림에서 볼 수 있는 것처럼, 암호화된 드라이브 루트에서 비트락커 투 고 리더인 “BitLockerToGo.exe”를 찾을 수 있다.

 

비트락커 투 고로 암호화한 USB메모리를 Windows XP에 연결하였을 때

BitLockerToGo.exe를 실행하고 암호를 입력하면 암호화된 드라이브를 조회할 수 있는 윈도우가 나타난다. 비트락커 투 고 리더의 치명적 단점은 읽기만 가능하고 쓰기가 불가능 하다는 것이다. Window 7이 출시될 때 개선이 될지 어떨지 모르겠다.

Windows 7의 비트락커 투 고로 암호화된 드라이브를 XP에서 조회할 수 있도록 해주는 툴(그러나, 읽기만 가능!). 암호화된 드라이브 루트에서 찾을 수 있다. “BitLockerToGo.exe”

비트락커 투 고는 기본적으로 USB메모리를 컴퓨터에 연결할 때 마다 비밀번호를 입력하도록 하고 있다. 그러나, 특정 컴퓨터에서는 비밀번호 없이 연결할 수 있는 기능을 제공하고 있어서, 개인 PC에서는 비밀번호를 입력하는 번거로움 없이 사용할 수 있도록 되어 있다. 공인인증서와 같은 중요 정보를 저장하는 USB메모리를 비트락커 투 고로 암호화해 둔 다면 분실했을 경우에도 보다 안심할 수 있겠다.

 

지금까지 Windows 7에 추가된 보안 기능 세 가지 – 개선된 UAC, 앱락커, 비트락커 투 고를 살펴보았다. 개인사용자가 앱락커를 사용하기엔 무리가 있다는 점이 아쉽지만, UAC와 비트락커 투 고는 기능으로써의 완성도가 매우 높다. Vista는 XP에 비하여 피부에 와 닿는 특별한 기능도 추가되지 않았으면서도 불편한 UAC라던가 느려진 성능 등으로 사용자의 외면을 받았다. 하지만, 이번 Windows 7은 성능 개선과 함께 아주 쓸만한 기능들을 제공하고 있기 때문에 업그레이드 할 만한 가치가 있어 보인다. Windows 7의 출시가 기대 된다.@

 

칼럼니스트                황용석 | 안철수연구소 프로그래머

 

현재 인터넷을 통하여 알게 모르게 이루어지는 공격에 대응하기 위하여 시스템 가상화를 통하여 단말의 보안성을 높이기 위한 연구를 진행하고 있다. 새롭게 “IT 칼럼니스트”에 합류하게 되었으며, 최근에 관심분야는 Virtualization, Behavior Detection, Parallel Computing이다.