본문 바로가기

IT, Security

사용자의 PC를 보호하는 ‘사용자 계정 컨트롤, UAC’

Windows Vista를 사용했던 사람들은, 사용자 계정 컨트롤이라는 기능을 아실 것입니다. 오늘은 UAC에 대하여 몇 가지 적어보려고 합니다.

 


(출처 : 그림 클릭)

 

1. 사용자 계정 컨트롤은 무엇인가

Windows XP는 매우 편리한 운영체제였지만, 보안 상에 있어서 무척이나 많은 운영체제이기도 했습니다. 물론 그 때는 아니었을지 몰라도, 워낙 구 OS인데다가, 시간도 오래되어 XP의 보안체계가 매우 위험함은 사실 많이 알려져 있습니다. 그러나 사람들은 대부분 그 사실을 모르고 사용하지요.

사용자 계정 컨트롤(User Account Control 이하 UAC)은 Windows Vista에서 선보인 보안 체계입니다(사실 Linux에서는 이미 사용되고 있었습니다). 기존 Windows XP에서는 프로그램이 관리자 권한을 손에 넣는데 크게 어렵지 않았고, 보안 체계가 있었지만 허술했기에, 손쉽게 사용자 몰래 이것저것 바꿀 시도를 할 수 있었습니다. 그러나 Windows Vista에서는 UAC라는 보안 체계를 넣음으로써, 허용하지 않는 한 표준 사용자 권한으로 프로그램의 권한을 제한합니다.

OS는 관리자 권한과 표준 사용자 권한으로 실행 범위를 나눔으로써, 만약 사용자 몰래 어떠한 프로그램이 관리자 권한을 얻어 악의적인 목적에 사용한다 하더라도, UAC는 이를 사용자에게 알려, 사용자가 그것이 자신이 호출한 프로그램인지, 아니면 악성 프로그램인지 판단하여, 권한을 줄지, 안 줄지 선택할 수 있게 해줍니다.(그렇기 때문에 가끔, "프로그램을 실행하기 위해선, 관리자 권한으로 실행하세요"라는 문구가 나옵니다. 이렇게 실행할 경우 UAC를 거치지 않아도 바로 실행이 됩니다.)

프로그램의 모든 활동이 관리자 권한을 필요로 하는 것은 아니고, 시스템의 민감한 설정을 변경하려고 하는 것은 아니기 때문에, 모든 프로그램을 실행할 때 UAC가 필요하지는 않습니다. 하지만 윈도우의 설정을 변경하거나, ActiveX를 다운로드하거나 하는 것은 UAC의 검열 정책에 부합하기 때문에 사용자에게 물어보게 되어 있습니다.(권한 범위는 위키백과를 참고하십시오.)

실제로 Vista가 나올 때만하더라도 ActiveX는 상당히 범용적이었으니, UAC를 쓰는 사람들의 귀찮음은 이루 말할 수 없을 것입니다. 그러나 이론적으로는 굉장히 이상적인 시스템입니다.

2. Windows Vista의 UAC

UAC는 Windows Vista에서 환영 받는 기능이 아니었습니다. Windows Vista는 MS의 OS 주기와는 다르게, 상당한 텀을 두고 개발된 운영체제입니다. 2001년의 XP와 2006년의 Vista는 5년의 주기가 있었던 셈입니다. MS는 이러한 많은 개발 기간에 OS 자체에 보안 기능을 두기로 생각합니다. (사실 UAC 같은 생각은 Linux 등에는 이미 Root 권한이라는 이름으로 적용되고 있었고, 그렇기 때문에 XP는 많은 비판을 받았습니다.)

 


(웹하드 F 사이트의 FAQ 중에서)

 

그 중 하나가 보안 승급 개념인데, 사용자의 PC를 더 효과적으로 보호하라고 넣은 이 UAC라는 기능은 Vista의 호환성 문제와 함께 '반드시 꺼야'하는 기능으로 자리 잡았습니다. Windows XP의 간편한 권한 설정(=간단)에 맛을 들인 사람들은 Vista에서 갑작스레 이것저것 물어보는 OS 자체와, UAC 설정이 매우 번거롭게 느껴져, 대부분의 사람들은 UAC를 끄곤 했습니다. 기본적으로 Vista의 UAC는 갑자기 알람음과 함께 화면의 모든 것이 어두워 지면서 알림창 하나만 뜨게 되었습니다.

이러한 사용자 본인의 불편함과 더불어 하나의 더 큰 문제는 프로그램 개발사가 이 기능을 끄기를 바랬던 것입니다. 많은 웹하드나 기타 개발사들은 안내 문을 통해 'Windows Vista를 사용하실 경우'라는 문과 함께 UAC를 끄라는 설명을 해주고 말았습니다. 개발자가 OS를 지원해야 하는데, 그렇지 않았습니다.(사진 참고)

비록 UAC가 OS를 보호하는데 탁월한 기능이었다 하더라도, 사용자 입장에서 번거로운 것은 사실이었습니다. 랩톱에서 UAC 알람이 뜨는 경우 굉장히 불편하기도 했습니다. 그래서 제 랩톱에서도 반드시 UAC는 껐었지요. 터치패드를 이용하는데 어찌나 불편했는지. 이런 이유로 Vista의 UAC는 '포맷하면 반드시 꺼야 할 것 1순위'로 자리잡고 맙니다.

3. Windows 7의 진화한 UAC

워낙 많은 사람들이 끄기 때문에 MS는 조금 더 UAC의 기능을 세부적으로 나누는 것을 고안합니다. 위에 몇 가지 기술한 불편한 이유를 조금 더 세세하게 설정하여, 사용자가 원하는 수준의 UAC 보호를 실행하도록 변경하는 것입니다. Windows 7은 제어판 -> 사용자 계정 -> 사용자 계정 컨트롤 설정 변경에서 UAC의 옵션을 나눌 수 있습니다.

 

 

이제 무조건 바탕화면을 흐리게 표시하여 경고하는 설정을 맞닥뜨리지 않아도 됩니다. 일종의 방화벽 같은 느낌으로 사용할 수 있게 설정할 수 있습니다. 저는 Vista 때부터 바탕화면을 흐리게 하는 설정이 마음에 들지 않았으므로, 슬라이더를 2단계로만 놓고 사용하고 있습니다. 하지만 아예 끄는 것보다는 훨씬 낫습니다.

그 외에도 슬라이더를 4단계로 놓으면 무조건 모든 행동에 대해 UAC가 사용자에게 물어보고, 기본값인 3단계는 사용자가 직접 Windows 설정을 변경할 때에는 알리지 않는 등, 단계마다 그 적용 범위가 순화되고 있습니다.

4. 그러나

이 글을 통해서 하고 싶은 말은 많은 사람들이 Windows Vista 때의 안 좋은 기억 때문에 UAC를 반드시 설정 해제하는 것으로 이해하고 있다는 것입니다. 제 주위 사람들만 보더라도 이것을 어떻게 끄는지 몰라서 Windows XP로 전향하는 사람도 있으며, 포맷할 때마다 꼭꼭 끄는 사람도 있습니다. 물론 계속해서 사용하는 사람도 있겠지요.

하지만 Windows Vista 때와는 달리 7에서는 UAC 설정의 세분화가 가능하면서, 가장 반감을 샀던 '바탕화면을 흐리게 표시'하는 기능을 끄면서도 UAC를 유지할 수 있는 기능이 있습니다. 실제로 2단계로 놓으면 아래와 같은 알림창만 나타나고, 바탕화면은 흐려지지 않습니다.

 

 

단순한 2단계로만 하더라도, 컴퓨터의 보안을 상당히 높일 수 있음을 아셨으면 좋겠습니다.

5. 이하

최근의 제로데이 공격이나, 여러 가지 공격은 사용자 몰래, 그리고 보안 프로그램을 무력화 시키거나, 보안 프로그램의 검열을 피하는 상황이 많이 일어나고 있습니다. 그러한 차원에서 OS의 보안 강화는 매우 중요합니다. 자신이 사용하는 방화벽(Firewall)이나 백신(AntiVirus)이 검출하지 못하는 바이러스라도, UAC를 통해 차단할 기회가 주어집니다.

물론 UAC도 완전하지 않으며, 습관적으로 예를 누르는 습관이 있다면 이 기능의 효과는 바랄 수 없겠지요. 이야기만 듣고 UAC를 통해 차단하기만 한다면 PC는 안전하다 생각할 수 있겠지만, 결국 UAC 또한 프로그램이기에 얼마든지 강제 비활성화 될 수 있으며, UAC를 우회할 수도 있을 것입니다.

그러나 없는 것보다는 낫다는 것은 확실하게 말할 수 있습니다.. 그러니 Windows 7이라면 UAC를 2단계까지라도 꼭 키시고, 자신의 컴퓨터 보안을 강화하시기 바랍니다. UAC는 Windows OS가 마지막으로 방어하는 자체 보호 기술이라고 볼 수 있습니다. 여기에서 차단하거나, 무력화된다면 OS는 완전히 악성코드의 활동 영역에 들어가게 됩니다.