2017.08.09

지금 당장 해야 하는 윈도우 그룹 정책 설정 10가지

Roger A. Grimes | CSO
마이크로소프트 윈도우 운영체제를 사용하는 사무실을 구성하는 가장 일반적인 방법 가운데 하나는 그룹 정책을 사용하는 방법이다. 그룹 정책은 컴퓨터의 레지스트리에 등록되어 보안 설정과 기타 작업과 관련된 동작을 구성하는 데 사용된다. 그룹 정책은 액티브 디렉터리에서 가져오거나(클라이언트에서 가져옴) 로컬로 구성이 가능하다.

필자는 1990년대부터 윈도우 컴퓨터 보안 일을 해오면서 많은 그룹 정책을 다뤘다. 고객과 함께 일할 때는 우선 각 그룹 정책 개체 내의 각 그룹 정책 설정을 면밀히 검토한다. 예를 들어 윈도우 8.1과 윈도우 서버 2012 R2에는 운영체제 하나에만 3,700개 이상의 설정이 있다.

비밀을 하나 알려주자면 그 가운데 필자가 신경쓰는 설정은 딱 10개뿐이다.

이 10가지만 보면 된다는 말은 아니다. 각 그룹 정책 설정을 올바르게 구성하면 그만큼 위험은 낮아진다. 다만 필자가 하고자 하는 말은 10가지 설정이 위험의 대부분을 좌우하며 나머지는 모두 부차적이라는 것이다. 새 그룹 정책을 볼 때 필자가 가장 먼저 하는 일은 이 10가지 설정을 살피는 것이다. 이 10가지 올바르게 설정되어 있다면 고객이 일을 제대로 한다는 뜻이고 필자의 일도 한결 쉬워진다.

이 10가지 설정을 제대로 하면 윈도우 환경을 더욱 안전하게 보호할 수 있다. 각각의 설정은 '컴퓨터 구성\윈도우 설정\보안 설정'에 위치한다.

1. 로컬 관리자 계정 이름 바꾸기
관리자 계정의 이름을 모를 경우 해킹하기가 훨씬 더 어렵다. 관리자 계정의 이름 변경은 자동으로 되지 않으므로 직접 해야 한다.

2. 게스트 계정 비활성화
게스트 계정을 활성화하는 것은 가장 좋지 않은 행동 가운데 하나다. 게스트 계정은 윈도우 컴퓨터에 대한 상당한 수준의 접근 권한을 부여하며 비밀번호도 없다. 다행히 기본적으로 비활성화된다.

3. LM 및 NTML v1 비활성화
LM(LAN Manager)와 LTLMv1 인증 프로토콜에는 취약점이 있다. NTLMv2와 커버로스(Kerberos) 사용을 강제해야 한다. 기본적으로 대부분의 윈도우 시스템은 4가지 프로토콜을 모두 수락한다. 10년 이상 오래된 패치되지 않은 시스템이 있는 경우가 아닌 한 예전 프로토콜을 사용해야 할 이유는 거의 없다. 기본적으로 비활성화된다.

4. LM 해시 저장 비활성화
LM 비밀번호 해시는 일반 텍스트 비밀번호로 손쉽게 변환이 가능하다. 윈도우에서 이를 디스크에 저장하도록 허용하면 안 된다. 디스크에 저장할 경우 해커의 해시 덤프 툴이 찾을 수 있기 때문이다. 기본적으로 비활성화된다.

5. 최소 비밀번호 길이
일반 사용자에게 적용되는 최소 비밀번호 길이는 12자 이상, 높은 권한이 부여된 사용자 계정의 경우 15자 이상이어야 한다. 12자 미만의 윈도우 비밀번호는 전혀 안전하지 않다. 윈도우 인증 환경에서 제대로 된 보안을 위한 매직 넘버는 15자다. 15자가 되면 모든 종류의 백도어는 닫힌다. 그 미만에서는 불필요한 위험이 발생한다(기본적으로 0자이므로 최소 길이 요건을 직접 지정해야 한다).

그러나 기존 그룹 정책 설정에서 최소 비밀번호 크기를 설정할 때 허용되는 최대값은 14자에 불과하다. 따라서 더 새로운 세분화된 비밀번호 정책을 사용해야 한다. 윈도우 서버 2008 R2 및 그 이전 버전에서는 설정하고 구성하기가 쉽지 않지만 윈도우 서버 2012 이상부터는 GUI를 통해 쉽게 설정할 수 있다.

6. 최대 비밀번호 사용 기간
길이 14자 이하의 비밀번호는 90일 이상 사용해서는 안 된다. 윈도우의 기본 최대 암호 만료 기간은 42일이므로 기본값 그대로 사용하거나 원할 경우 90일로 늘리면 된다. 보안 전문가에 따라서는 비밀번호 길이가 15자 이상일 경우 동일한 비밀번호를 1년까지 사용해도 된다고 생각하는 경우도 있다. 다만 비밀번호 만료 기간을 늘리면 누군가 이 비밀번호를 훔쳐 동일 사용자가 소유한 다른 계정에 접근할 위험도 커진다는 점을 염두에 둬야 한다. 비밀번호 만료 기간은 짧을수록 좋다.

7. 이벤트 로그
이벤트 로그가 켜져 있고 이를 확인하는 습관만 있었다면 지금까지 발생한 대다수의 공격 피해자들은 침해 사실을 더 일찍 인지할 수 있었을 것이다. 마이크로소프트 보안 규정 준수 관리자(Microsoft Security Compliance Manager) 툴에서 권장하는 설정을 사용하고, 레거시 범주 설정 대신 감사 하위 범주를 사용해야 한다.

8. 익명 SID 열거 비활성화
보안 식별자(SID)는 윈도우 또는 액티브 디렉터리의 각 사용자, 그룹 및 기타 보안 주체에 할당되는 번호다. 초기 윈도우 버전에서는 비인증 사용자가 이런 번호를 쿼리해서 중요한 사용자(예를 들어 관리자) 및 그룹을 식별할 수 있었기 때문에 해커에게 곧잘 악용되곤 했다. 다행히 열거는 기본적으로 비활성화된다.

9. 모든 사용자 그룹에 익명 계정 허용 안 함
이 설정과 앞서 설명한 설정을 잘못 구성하면 익명(또는 null) 해커에게 훨씬 더 폭넓은 시스템 접근 권한이 부여될 수 있다. 두 설정 모두 2000년부터 기본적으로 활성화된다(즉, 익명 접근 비활성화). 기본 상태 그대로 두도록 한다.

10. 사용자 계정 컨트롤 활성화
마지막으로, UAC는 윈도우 비스타부터 웹 브라우징에 있어 가장 중요한 보호 도구 역할을 하고 있다. 필자의 클라이언트 가운데 상당수가 애플리케이션 호환성 문제에 대한 예전 정보를 근거로 이 설정을 꺼둔다. 이런 문제의 대부분은 해결됐고, 남은 문제도 마이크로소프트의 무료 애플리케이션 호환성 문제 해결 유틸리티를 사용해 해결이 가능하다. UAC를 비활성화하면 현대 운영 체제가 제공하는 높은 보안 수준 대신 윈도우 NT 시절의 보안을 택하는 형국이다. UAC는 기본적으로 활성화된다.

잘 살펴보면 10가지 설정 가운데 7가지는 윈도우 비스타, 윈도우 서버 2008 및 그 이후 버전에서 기본적으로 잘 설정되어 있다. 과거 필자가 쓴 윈도우 보안 관련 책에서는 대부분 더 단단히 조여 매야 하는 설정에 대해 다루었는데, 요즘 필자가 할 수 있는 최선의 조언은 꼭 필요한 부분만 바꾸고 대부분의 경우 기본값을 건드리지 말라는 것이다. 문제가 발생해서 확인해 보면 사람들이 기본값을 변경한 것이 이유인 경우가 많다. 좋지 않은 습관이다.

또한 그룹 정책에 대해 고민하기 전에 처리해야 할 더 중요한 일도 있다. 예를 들어 완벽한 패치 적용, 사용자의 트로이 목마 프로그램 설치 차단 등이다. 이 부분들을 제대로 갖추면 그 다음 단계가 그룹 정책을 올바르게 구성하는 것이다.

필자는 비트로커(윈도우 비스타/2008 이상)의 열렬한 팬이기도 하다. 비트로커는 그룹 정책을 사용해 구현할 수 있지만 비트로커 구현 계획에는 많은 시간과 고민이 필요하다. 무엇을 하든 3,700가지 설정을 모두 연구하느라 시간을 낭비하지 말고, 가장 중요한 10가지를 제대로 하는 데 집중하라. 그것으로 충분하다. editor@itworld.co.kr 

2017.08.09

지금 당장 해야 하는 윈도우 그룹 정책 설정 10가지

Roger A. Grimes | CSO
마이크로소프트 윈도우 운영체제를 사용하는 사무실을 구성하는 가장 일반적인 방법 가운데 하나는 그룹 정책을 사용하는 방법이다. 그룹 정책은 컴퓨터의 레지스트리에 등록되어 보안 설정과 기타 작업과 관련된 동작을 구성하는 데 사용된다. 그룹 정책은 액티브 디렉터리에서 가져오거나(클라이언트에서 가져옴) 로컬로 구성이 가능하다.

필자는 1990년대부터 윈도우 컴퓨터 보안 일을 해오면서 많은 그룹 정책을 다뤘다. 고객과 함께 일할 때는 우선 각 그룹 정책 개체 내의 각 그룹 정책 설정을 면밀히 검토한다. 예를 들어 윈도우 8.1과 윈도우 서버 2012 R2에는 운영체제 하나에만 3,700개 이상의 설정이 있다.

비밀을 하나 알려주자면 그 가운데 필자가 신경쓰는 설정은 딱 10개뿐이다.

이 10가지만 보면 된다는 말은 아니다. 각 그룹 정책 설정을 올바르게 구성하면 그만큼 위험은 낮아진다. 다만 필자가 하고자 하는 말은 10가지 설정이 위험의 대부분을 좌우하며 나머지는 모두 부차적이라는 것이다. 새 그룹 정책을 볼 때 필자가 가장 먼저 하는 일은 이 10가지 설정을 살피는 것이다. 이 10가지 올바르게 설정되어 있다면 고객이 일을 제대로 한다는 뜻이고 필자의 일도 한결 쉬워진다.

이 10가지 설정을 제대로 하면 윈도우 환경을 더욱 안전하게 보호할 수 있다. 각각의 설정은 '컴퓨터 구성\윈도우 설정\보안 설정'에 위치한다.

1. 로컬 관리자 계정 이름 바꾸기
관리자 계정의 이름을 모를 경우 해킹하기가 훨씬 더 어렵다. 관리자 계정의 이름 변경은 자동으로 되지 않으므로 직접 해야 한다.

2. 게스트 계정 비활성화
게스트 계정을 활성화하는 것은 가장 좋지 않은 행동 가운데 하나다. 게스트 계정은 윈도우 컴퓨터에 대한 상당한 수준의 접근 권한을 부여하며 비밀번호도 없다. 다행히 기본적으로 비활성화된다.

3. LM 및 NTML v1 비활성화
LM(LAN Manager)와 LTLMv1 인증 프로토콜에는 취약점이 있다. NTLMv2와 커버로스(Kerberos) 사용을 강제해야 한다. 기본적으로 대부분의 윈도우 시스템은 4가지 프로토콜을 모두 수락한다. 10년 이상 오래된 패치되지 않은 시스템이 있는 경우가 아닌 한 예전 프로토콜을 사용해야 할 이유는 거의 없다. 기본적으로 비활성화된다.

4. LM 해시 저장 비활성화
LM 비밀번호 해시는 일반 텍스트 비밀번호로 손쉽게 변환이 가능하다. 윈도우에서 이를 디스크에 저장하도록 허용하면 안 된다. 디스크에 저장할 경우 해커의 해시 덤프 툴이 찾을 수 있기 때문이다. 기본적으로 비활성화된다.

5. 최소 비밀번호 길이
일반 사용자에게 적용되는 최소 비밀번호 길이는 12자 이상, 높은 권한이 부여된 사용자 계정의 경우 15자 이상이어야 한다. 12자 미만의 윈도우 비밀번호는 전혀 안전하지 않다. 윈도우 인증 환경에서 제대로 된 보안을 위한 매직 넘버는 15자다. 15자가 되면 모든 종류의 백도어는 닫힌다. 그 미만에서는 불필요한 위험이 발생한다(기본적으로 0자이므로 최소 길이 요건을 직접 지정해야 한다).

그러나 기존 그룹 정책 설정에서 최소 비밀번호 크기를 설정할 때 허용되는 최대값은 14자에 불과하다. 따라서 더 새로운 세분화된 비밀번호 정책을 사용해야 한다. 윈도우 서버 2008 R2 및 그 이전 버전에서는 설정하고 구성하기가 쉽지 않지만 윈도우 서버 2012 이상부터는 GUI를 통해 쉽게 설정할 수 있다.

6. 최대 비밀번호 사용 기간
길이 14자 이하의 비밀번호는 90일 이상 사용해서는 안 된다. 윈도우의 기본 최대 암호 만료 기간은 42일이므로 기본값 그대로 사용하거나 원할 경우 90일로 늘리면 된다. 보안 전문가에 따라서는 비밀번호 길이가 15자 이상일 경우 동일한 비밀번호를 1년까지 사용해도 된다고 생각하는 경우도 있다. 다만 비밀번호 만료 기간을 늘리면 누군가 이 비밀번호를 훔쳐 동일 사용자가 소유한 다른 계정에 접근할 위험도 커진다는 점을 염두에 둬야 한다. 비밀번호 만료 기간은 짧을수록 좋다.

7. 이벤트 로그
이벤트 로그가 켜져 있고 이를 확인하는 습관만 있었다면 지금까지 발생한 대다수의 공격 피해자들은 침해 사실을 더 일찍 인지할 수 있었을 것이다. 마이크로소프트 보안 규정 준수 관리자(Microsoft Security Compliance Manager) 툴에서 권장하는 설정을 사용하고, 레거시 범주 설정 대신 감사 하위 범주를 사용해야 한다.

8. 익명 SID 열거 비활성화
보안 식별자(SID)는 윈도우 또는 액티브 디렉터리의 각 사용자, 그룹 및 기타 보안 주체에 할당되는 번호다. 초기 윈도우 버전에서는 비인증 사용자가 이런 번호를 쿼리해서 중요한 사용자(예를 들어 관리자) 및 그룹을 식별할 수 있었기 때문에 해커에게 곧잘 악용되곤 했다. 다행히 열거는 기본적으로 비활성화된다.

9. 모든 사용자 그룹에 익명 계정 허용 안 함
이 설정과 앞서 설명한 설정을 잘못 구성하면 익명(또는 null) 해커에게 훨씬 더 폭넓은 시스템 접근 권한이 부여될 수 있다. 두 설정 모두 2000년부터 기본적으로 활성화된다(즉, 익명 접근 비활성화). 기본 상태 그대로 두도록 한다.

10. 사용자 계정 컨트롤 활성화
마지막으로, UAC는 윈도우 비스타부터 웹 브라우징에 있어 가장 중요한 보호 도구 역할을 하고 있다. 필자의 클라이언트 가운데 상당수가 애플리케이션 호환성 문제에 대한 예전 정보를 근거로 이 설정을 꺼둔다. 이런 문제의 대부분은 해결됐고, 남은 문제도 마이크로소프트의 무료 애플리케이션 호환성 문제 해결 유틸리티를 사용해 해결이 가능하다. UAC를 비활성화하면 현대 운영 체제가 제공하는 높은 보안 수준 대신 윈도우 NT 시절의 보안을 택하는 형국이다. UAC는 기본적으로 활성화된다.

잘 살펴보면 10가지 설정 가운데 7가지는 윈도우 비스타, 윈도우 서버 2008 및 그 이후 버전에서 기본적으로 잘 설정되어 있다. 과거 필자가 쓴 윈도우 보안 관련 책에서는 대부분 더 단단히 조여 매야 하는 설정에 대해 다루었는데, 요즘 필자가 할 수 있는 최선의 조언은 꼭 필요한 부분만 바꾸고 대부분의 경우 기본값을 건드리지 말라는 것이다. 문제가 발생해서 확인해 보면 사람들이 기본값을 변경한 것이 이유인 경우가 많다. 좋지 않은 습관이다.

또한 그룹 정책에 대해 고민하기 전에 처리해야 할 더 중요한 일도 있다. 예를 들어 완벽한 패치 적용, 사용자의 트로이 목마 프로그램 설치 차단 등이다. 이 부분들을 제대로 갖추면 그 다음 단계가 그룹 정책을 올바르게 구성하는 것이다.

필자는 비트로커(윈도우 비스타/2008 이상)의 열렬한 팬이기도 하다. 비트로커는 그룹 정책을 사용해 구현할 수 있지만 비트로커 구현 계획에는 많은 시간과 고민이 필요하다. 무엇을 하든 3,700가지 설정을 모두 연구하느라 시간을 낭비하지 말고, 가장 중요한 10가지를 제대로 하는 데 집중하라. 그것으로 충분하다. editor@itworld.co.kr 

X