사용자 계정 컨트롤(UAC) 가이드

사용자 계정 컨트롤은 아마도 Vista에서 첫 선을 보인 후 Windows의 모든 후속 버전에 포함된 기능 중 가장 과소평가되고 심지어 가장 싫어하는 기능일 것입니다. 내 생각에는 사용자 계정 컨트롤에 대해 사용자들이 던지는 증오의 대부분은 이 기능이 실질적인 이점을 제공하기 때문에 과분한 것입니다. UAC(사용자 계정 컨트롤)가 때때로 상당히 성가실 수 있다는 점에 전적으로 동의합니다. 하지만 Windows에 어떤 목적을 위해 도입되었습니다. 아니요, 사용자를 방해하려는 것이 아니라 표준(제한된) 계정에서 관리자 계정으로 원활하게 전환하기 위한 것입니다.

이 기사에서는 UAC가 무엇인지, 어떻게 작동하는지, 왜 필요한지, 어떻게 설정하는지 설명하겠습니다. UAC를 사용해야 하는 이유를 알려드릴 생각은 없지만, UAC를 비활성화하면 무엇을 놓치게 되는지 알려드리겠습니다.

약간의 배경 및 계정 정보

아시다시피 Windows는 소위 계정으로 작동합니다. 관리자와 표준(제한적)의 두 가지 유형이 있습니다.

관리자 계정은 사용자에게 운영 체제의 모든 기능에 대한 전체 액세스 권한을 부여합니다. 사용자는 원하는 것은 무엇이든 할 수 있습니다. 표준 계정 사용자는 권한이 제한되어 있으므로 특정 작업만 수행할 수 있습니다. 이는 일반적으로 현재 사용자에게만 영향을 미치는 전부입니다. 예: 바탕 화면의 배경화면 변경, 마우스 설정, 사운드 구성표 변경 등 일반적으로 특정 사용자에게만 해당되고 전체 시스템에 적용되지 않는 모든 것은 표준 계정에서 사용할 수 있습니다. 시스템 전체에 영향을 미칠 수 있는 모든 작업에는 관리자 액세스가 필요합니다.

이러한 계정에 할당된 작업 중 하나는 악성 코드로부터 보호하는 것입니다. 여기서 일반적인 아이디어는 사용자가 제한된 계정으로 일반적인 작업을 수행하고 작업에 필요한 경우에만 관리자 계정으로 전환한다는 것입니다. 역설적이게도 맬웨어는 사용자가 로그인한 것과 동일한 수준의 권한을 받습니다.

Windows 2000 및 Windows XP에서는 관리자로 작업을 수행하는 것이 유연하게 구현되지 않았으므로 제한된 계정으로 작업하는 것이 그리 편리하지 않았습니다. 이러한 버전의 시스템에서 관리 작업을 수행하는 방법 중 하나는 다음과 같습니다. 제한된 계정에서 로그아웃(또는 Windows XP를 사용하는 경우 빠른 전환) -> 관리자 계정에 로그인 -> 작업 수행 -> 관리자 계정 로그아웃(또는 Windows XP를 사용한 경우 빠른 전환) -> 제한된 계정으로 돌아갑니다.

또 다른 옵션은 상황에 맞는 메뉴와 "다른 사용자로 실행" 옵션을 사용하는 것입니다. 이 옵션은 파일을 관리자로 실행하기 위해 적절한 관리자 계정과 비밀번호를 지정해야 하는 창을 엽니다. 이는 한 계정에서 다른 계정으로 전환하는 매우 빠른 방법이지만 관리 권한이 필요한 상황에는 적용되지 않습니다. 이 방법의 또 다른 문제점은 관리자 계정에 비밀번호가 있어야 한다는 것입니다. 그렇지 않으면 실행이 실패합니다.

이것이 바로 사용자 계정 컨트롤이 Windows Vista에 도입되어 Windows 7에서 거의 완벽하게 구현된 이유입니다.

UAC 란 무엇입니까?

UAC는 Windows Vista, 7, 8, 8.1 및 10의 기능으로 제한된 환경에서 관리자 환경으로 최대한 원활하고 번거롭지 않게 전환하여 관리자나 스위치로 파일을 수동으로 실행할 필요가 없도록 하는 것을 목표로 합니다. 계정 간. 또한 UAC는 사용자 측의 노력이 거의 필요하지 않지만 심각한 손상을 방지할 수 있는 추가 보호 계층입니다.

UAC 작동 방식

사용자가 자신의 계정에 로그인하면 Windows는 해당 계정에 대한 특정 정보와 주로 운영 체제가 해당 계정의 액세스 기능을 제어하는 ​​데 사용하는 다양한 보안 식별자를 포함하는 소위 사용자 액세스 토큰을 생성합니다. 즉, 이 토큰은 일종의 개인 문서(예: 여권)입니다. 이는 NT 커널을 기반으로 하는 모든 Windows 버전(NT, 2000, XP, Vista, 7, 8 및 10)에 적용됩니다.

사용자가 표준(제한된) 계정에 로그인하면 제한된 권한을 가진 표준 사용자 토큰이 생성됩니다. 사용자가 관리자 계정에 로그인하면 소위. 전체 액세스 권한이 있는 관리자 토큰입니다. 논리적.

그러나 Windows Vista, 7, 8 및 10에서 UAC가 활성화되고 사용자가 관리자 계정으로 로그인하면 Windows는 두 개의 토큰을 생성합니다. 관리자는 백그라운드에 남아 있고 표준은 Explorer.exe를 시작하는 데 사용됩니다. 즉, Explorer.exe는 제한된 권한으로 실행됩니다. 이 경우 이후에 실행되는 모든 프로세스는 기본 프로세스의 제한된 권한을 상속받은 Explorer.exe의 하위 프로세스가 됩니다. 프로세스에 관리 권한이 필요한 경우 관리자 토큰을 요청하고 Windows는 특수 대화 상자 형태로 이 토큰을 프로세스에 제공할 수 있는 권한을 사용자에게 요청합니다.

이 대화 상자에는 운영 체제에서만 액세스할 수 있는 보안 데스크탑이 포함되어 있습니다. 이는 실제 데스크탑의 어두운 스냅샷처럼 보이며 관리자 확인 창과 입력 도구 모음(두 개 이상의 언어가 활성화된 경우)만 포함합니다.

사용자가 동의하지 않고 "아니요"를 클릭하면 Windows는 관리자 토큰 프로세스를 거부합니다. 그리고 그가 동의하고 "예"를 선택하면 운영 체제는 프로세스에 필요한 권한, 즉 관리자 토큰을 부여합니다.

프로세스가 이미 축소된 권한으로 실행 중인 경우 상승된(관리자) 권한으로 다시 시작됩니다. 프로세스를 직접 강등하거나 승격할 수 없습니다. 하나의 토큰으로 프로세스가 시작되면 새로운 권한으로 다시 시작될 때까지 다른 권한을 얻을 수 없습니다. 예를 들어 항상 제한된 권한으로 실행되는 작업 관리자가 있습니다. "모든 사용자의 프로세스 표시" 버튼을 클릭하면 작업 관리자가 닫혔다가 다시 시작되지만 관리자 권한이 부여됩니다.

표준 계정을 사용할 때 UAC는 특정 관리자 계정을 지정하고 비밀번호를 입력하도록 요청합니다.

UAC가 사용자를 보호하는 방법

UAC 자체는 많은 보안을 제공하지 않습니다. 제한된 환경에서 관리 환경으로 전환하기가 더 쉬워졌습니다. 따라서 질문을 하는 더 좋은 방법은 제한된 계정이 사용자를 어떻게 방해하는지입니다. 제한된 사용자 프로필에서는 프로세스가 특정 시스템 영역에 액세스할 수 없습니다.

  • 메인 디스크 파티션;
  • \Users\ 폴더에 있는 다른 사용자의 사용자 폴더
  • 프로그램 파일 폴더;
  • Windows 폴더 및 모든 하위 폴더
  • 시스템 레지스트리의 다른 계정 섹션
  • 시스템 레지스트리의 HKEY_LOCAL_MACHINE 섹션.

관리자 권한이 없는 모든 프로세스(또는 악성 코드)는 필요한 폴더 및 레지스트리 키에 액세스하지 않고는 시스템 깊숙이 침투할 수 없으므로 시스템에 심각한 손상을 줄 수 없습니다.

UAC가 Vista/7/8/10과 공식적으로 호환되지 않는 이전 프로그램을 방해할 수 있습니까?

그러지 말아야 합니다. UAC가 활성화되면 가상화도 활성화됩니다. 일부 오래된 프로그램 및/또는 단순히 잘못 작성된 프로그램은 올바른 폴더를 사용하여 파일(설정, 로그 등)을 저장하지 않습니다. 올바른 폴더는 각 계정이 갖고 있고 각 프로그램이 원하는 것을 저장할 폴더를 생성할 수 있는 AppData 디렉터리의 폴더입니다.

일부 프로그램은 파일을 프로그램 파일 및/또는 Windows에 저장하려고 합니다. 관리자 권한으로 프로그램을 실행하면 문제가 되지 않습니다. 그러나 프로그램이 제한된 권한으로 실행되는 경우 Program Files 및/또는 Windows의 파일/폴더를 변경할 수 없습니다. 운영 체제에서는 이를 허용하지 않습니다.

이러한 프로그램의 문제를 방지하기 위해 Windows에서는 제한된 권한을 가진 프로그램이 원칙적으로 액세스할 수 없는 폴더 및 레지스트리 키의 가상화를 제공합니다. 이러한 프로그램이 보호된 폴더에 파일을 생성하려고 하면 운영 체제는 해당 파일을 다음 위치에 있는 특수 VirtualStore 폴더로 리디렉션합니다. X:\사용자\<имя-вашего-профиля>\AppData\로컬\(여기서 X:는 시스템 파티션이며 일반적으로 C:입니다.) 저것들. 프로그램 자체의 눈으로 보면 모든 것이 괜찮습니다. 그녀는 장애물에 직면하지 않으며 정확히 원하는 위치에 파일/폴더를 만드는 것처럼 느낍니다. VirtualStore에는 일반적으로 프로그램 파일과 Windows 하위 폴더가 포함되어 있습니다. 다음은 VirtualStore 폴더에 있는 Program Files의 스크린샷입니다.

예를 들어 SopCast 폴더에 있는 내용은 다음과 같습니다.

저것들. UAC가 중지되었거나 프로그램이 항상 관리자로 실행된 경우 이러한 파일/폴더는 C:\Program Files\SopCast에 생성됩니다. Windows XP에서는 기본적으로 모든 프로그램에 관리자 권한이 있으므로 이러한 파일과 폴더는 문제 없이 생성됩니다.

물론 이것은 개발자가 영구적인 솔루션으로 간주해서는 안 됩니다. 각 작성자의 책임은 현재 운영 체제와 완벽하게 호환되는 소프트웨어를 만드는 것입니다.

UAC 대화 상자

UAC 대화 상자는 세 개만 있다는 것을 눈치챘을 것입니다. 여기서는 Windows 7, 8.x 및 10의 내용을 살펴보겠습니다. Vista에서는 대화 상자가 다소 다르지만 이에 대해 자세히 설명하지는 않습니다.

첫 번째 유형의 창은 상단에 진한 파란색 줄무늬가 있고 왼쪽 상단에 방패 아이콘이 있으며 파란색 2개와 노란색 2개 섹션으로 나뉩니다. 이 창은 소위 운영 체제에 속하는 디지털 서명이 있는 프로세스에 대한 확인이 필요할 때 나타납니다. 윈도우 바이너리. 아래에서 이에 대해 이야기하겠습니다.

두 번째 유형의 창에도 진한 파란색 리본이 있지만 방패 아이콘은 완전히 파란색이며 물음표가 있습니다. 이 창은 디지털 서명된 프로세스에 대한 확인이 필요하지만 해당 프로세스/파일이 운영 체제의 소유가 아닌 경우 나타납니다.

세 번째 창은 주황색 줄무늬로 장식되어 있고 방패도 주황색이지만 느낌표가 있습니다. 이 대화 상자는 디지털 서명이 없는 프로세스에 대한 확인이 필요할 때 나타납니다.

UAC 설정

사용자 계정 컨트롤 설정(작동 모드)은 다음 위치에 있습니다. 제어판 -> 시스템 및 보안 -> 사용자 계정 컨트롤 설정 변경. 그 중 4개만 있습니다:

항상 알림이 가장 높은 수준입니다. 이 모드는 Windows Vista에서 UAC가 작동하는 방식과 동일합니다. 이 모드에서는 프로세스 및 필요한 사항에 관계없이 시스템에서 항상 관리자 권한 확인이 필요합니다.

두 번째 수준은 Windows 7, 8.x 및 10의 기본값입니다. 이 모드에서 Windows는 소위 Windows 바이너리와 관련하여 UAC 창을 표시하지 않습니다. 저것들. 관리자 권한이 필요한 파일/프로세스가 다음 3가지 조건을 충족하는 경우 운영 체제는 사용자의 확인 없이 자동으로 권한을 부여합니다.

  • 파일에 매니페스트가 내장되어 있거나 별도의 파일로 존재하며 이는 자동 권한 상승을 나타냅니다.
  • 파일은 Windows 폴더(또는 해당 하위 폴더)에 있습니다.
  • 파일이 유효한 Windows 디지털 서명으로 서명되었습니다.

세 번째 모드는 두 번째(이전) 모드와 동일하지만 보안 데스크톱을 사용하지 않는다는 차이점이 있습니다. 즉, 화면이 어두워지지 않고 UAC 대화 상자가 다른 것과 동일하게 나타납니다. Microsoft는 이 옵션의 사용을 권장하지 않으며 그 이유는 나중에 설명하겠습니다.

나에게 알리지 않음은 네 번째이자 마지막 수준입니다. 이는 본질적으로 UAC를 완전히 비활성화하는 것을 의미합니다.

여기에는 두 가지 설명이 필요합니다.

  • Windows 디지털 서명은 구체적으로 운영 체제를 나타냅니다. Microsoft에서 디지털 서명한 파일도 있기 때문에 이렇게 말하는 것입니다. 이는 두 개의 별도 서명으로, UAC는 Windows 디지털 서명만 인식합니다. 이는 해당 파일이 Microsoft에서 제공되었을 뿐만 아니라 운영 체제의 일부라는 증거 역할을 하기 때문입니다.
  • 모든 Windows 파일에 자동 권한 상승을 위한 매니페스트가 있는 것은 아닙니다. 의도적으로 이것이 부족한 파일이 있습니다. 예를 들어 regedit.exe 및 cmd.exe가 있습니다. 두 번째 프로세스에는 다른 프로세스를 시작하는 데 매우 자주 사용되며 이미 언급했듯이 각각의 새 프로세스는 이를 시작한 프로세스의 권한을 상속하기 때문에 자동 승격이 없습니다. 이는 누구나 명령 프롬프트를 사용하여 관리자 권한으로 모든 프로세스를 원활하게 실행할 수 있음을 의미합니다. 다행스럽게도 마이크로소프트는 바보가 아니다.

보안 데스크탑을 사용하는 것이 왜 중요한가요?

보안 데스크탑은 다른 프로세스로부터 발생할 수 있는 간섭과 영향을 방지합니다. 위에서 언급했듯이 운영 체제에서만 액세스할 수 있으며 사용자의 기본 명령, 즉 "예" 또는 "아니요" 버튼을 누르는 것만 허용됩니다.

보안 데스크톱을 사용하지 않는 경우 공격자는 UAC 창을 스푸핑하여 관리자 권한으로 악성 파일을 실행하도록 속일 수 있습니다.

관리자 권한은 언제 필요합니까? UAC 창은 언제 나타납니까?

일반적으로 UAC가 사용자에게 주소를 지정하는 세 가지 경우가 있습니다.

  • 사용자가 아닌 시스템 설정을 변경할 때 실제로 이는 최대 UAC 수준에만 적용됩니다.
  • 프로그램/드라이버를 설치하거나 제거할 때
  • 응용 프로그램/프로세스에서 시스템 파일/폴더 또는 시스템 레지스트리 키를 변경하려면 관리자 권한이 필요한 경우.

UAC를 비활성화하지 않는 것이 중요한 이유

사용자 계정 컨트롤은 높은 수준의 보호를 제공하며 사실상 아무런 대가도 필요하지 않습니다. 즉, UAC 효율이 매우 높다. 나는 그가 왜 그렇게 사람들을 짜증나게 하는지 이해하지 못합니다. 일상 업무에서 일반 사용자는 하루에 1~2번 UAC 창을 봅니다. 어쩌면 0일지도 모릅니다. 그 정도인가요?

일반 사용자는 시스템 설정을 거의 변경하지 않으며, 변경하는 경우 UAC는 기본 설정으로 작동하는지에 대한 질문에 신경 쓰지 않습니다.

일반 사용자는 매일 드라이버와 프로그램을 설치하지 않습니다. 모든 드라이버와 대부분의 필수 프로그램은 Windows 설치 후 한 번만 설치됩니다. 즉, 이것이 UAC 요청의 주요 비율입니다. 그 후 UAC는 업데이트할 때만 개입하지만 드라이버는 말할 것도 없고 새 버전의 프로그램이 매일 출시되지 않습니다. 더욱이 많은 사람들은 프로그램이나 드라이버를 전혀 업데이트하지 않으므로 UAC 문제가 더욱 줄어듭니다.

작업을 수행하는 데 관리자 권한이 필요한 프로그램은 거의 없습니다. 이들은 주로 조각 모음, 정리 및 최적화 도구, 일부 진단 프로그램(AIDA64, HWMonitor, SpeedFan 등) 및 시스템 설정(예: 프로세스 탐색기 및 자동 실행)이지만 특정 작업을 수행해야 하는 경우에만 해당됩니다. 드라이버/서비스 또는 Windows에서 시작하는 프로그램). 그리고 이것들은 모두 전혀 사용할 필요가 없거나 드문 경우에 사용되는 프로그램입니다. 자주 사용되는 모든 응용 프로그램은 UAC에서 완벽하게 작동하며 어떤 질문도 하지 않습니다.

  • 멀티미디어 플레이어(오디오 및/또는 비디오);
  • 비디오/오디오 변환기;
  • 이미지/비디오/오디오 처리용 프로그램;
  • 데스크톱의 스크린샷이나 비디오 녹화를 캡처하는 프로그램
  • 이미지 보기 프로그램;
  • 웹 브라우저;
  • 파일 다운로더(P2P 네트워크의 다운로드 관리자 및 클라이언트);
  • FTP 클라이언트;
  • 음성/화상 통신을 위한 인스턴트 메신저 또는 프로그램;
  • 디스크 굽기 프로그램;
  • 아카이버;
  • 텍스트 편집기;
  • PDF 리더;
  • 가상 머신;
  • 등등

Windows 업데이트를 설치하더라도 UAC 창을 사용하지 않습니다.

유용하지 않은 일부 비뚤어진 프로그램을 사용하여 시스템을 "최적화"하기 위해 하루에 1~2분 이상을 희생할 의향이 있지만 UAC 요청에 응답하는 데 하루에 몇 초를 소비할 의향이 없는 사람들이 있습니다.

"나는 숙련된 사용자이고 나 자신을 보호하는 방법을 알고 있습니다"와 같은 다양한 진술만으로는 충분하지 않습니다. 누구도 면역이 되지 않으며 특정 상황의 결과가 항상 사용자에 따라 달라지는 것은 아니기 때문입니다. 게다가 사람은 실수를 하는 경향이 있는데, 그런 일은 누구에게나 일어납니다.

한 가지 예를 들어 보겠습니다. 취약점이 있는 프로그램을 사용하고 있는데 어느 날 이러한 취약점을 악용하는 사이트에 접속했다고 가정해 보겠습니다. 사용자 계정 컨트롤이 활성화되어 있고 프로그램이 제한된 권한으로 실행되면 공격자가 큰 문제를 일으킬 수 없습니다. 그렇지 않으면 시스템 손상이 엄청날 수 있습니다.

그리고 이것은 많은 예 중 하나일 뿐입니다.

관리자 권한으로 Windows와 함께 애플리케이션 실행

단순히 Windows 및 관리자 권한으로 프로그램을 실행하기 위해 UAC를 끄는 사용자가 있을 수 있다는 점은 인정합니다. UAC는 데스크톱이 로드될 때까지 사용자에게 요청을 보낼 수 없기 때문에 일반적인 방법으로는 불가능합니다. 그러나 UAC를 활성화된 상태로 둘 수 있는 방법이 있습니다. 그는 다음과 같습니다:

  • 열려 있는 작업 스케줄러;
  • 딸깍 하는 소리 작업 만들기;
  • 현장에서 이름원하는 것을 입력하고 창 하단에서 옵션을 켭니다. 가장 높은 권한으로 실행;
  • 탭으로 이동 트리거그리고 누르세요 만들다;
  • 상단의 드롭다운 메뉴에서 선택하세요. 로그인할 때; 특정 사용자를 위한 작업을 생성하려면 옵션을 선택하세요. 사용자그런 다음 클릭하세요. 사용자 변경; 사용자 이름을 입력하고 버튼을 눌러 확인하세요. 좋아요;
  • 탭으로 이동 행위그리고 누르세요 만들다;
  • 딸깍 하는 소리 검토, 적절한 응용 프로그램을 표시하고 선택을 확인하십시오.
  • 탭으로 이동 정황그리고 옵션을 비활성화하세요 주 전원에서만 작동;
  • 탭에 옵션완료하는 데 시간이 오래 걸리는 작업 중지 옵션을 비활성화합니다.
  • 눌러 확인 좋아요.

준비가 된. 이제 응용 프로그램이 관리자 권한으로 자동으로 로드되도록 작업이 추가되었습니다. 그러나 여기에는 한 가지 작은 문제가 있습니다. 이러한 모든 작업은 정상보다 낮은 우선 순위, 즉 정상보다 낮은(정상보다 낮은) 우선 순위로 수행됩니다. 괜찮으시다면 괜찮습니다. 그렇지 않다면 좀 더 열심히 노력해야 할 것입니다.

  • 달리다 작업 스케줄러이미 닫았다면;
  • 선택하다 작업 스케줄러 라이브러리;
  • 작업을 표시하고 클릭하세요. 내보내다.xml 형식으로 저장합니다.
  • 텍스트 편집기에서 .xml 파일을 엽니다.
  • 섹션을 찾아보세요 7 는 파일 끝에 있어야 하며 여는 태그와 닫는 태그 사이의 7을 5로 변경해야 합니다.
  • 파일을 저장하십시오;
  • 작업 스케줄러에서 작업을 다시 강조 표시하고 삭제삭제를 확인합니다.
  • 이제 클릭하세요 작업 가져오기, 방금 저장한 파일을 선택하고 버튼을 클릭하세요. 좋아요.

그게 다야. UAC를 사용할지 여부는 귀하에게 달려 있지만 UAC를 비활성화하면 무엇을 잃게 되는지 알고 위험을 인식하는 것도 중요합니다. 관심을 가져주셔서 감사합니다!

좋은 하루 보내세요!