2021년 전망 - 그룹 정책(GPO)의 중요성 부각
마이크로소프트, 특히 AD 환경에 대한 2021년 8가지 전망 중 중요한 것들을 더 자세히 살펴보는 중입니다. 랜섬웨어 피해 기업이 정부의 처벌을 받게 될 이유를 먼저 살펴봤는데, 오늘은 사람들이 고생 끝에 ‘그룹 정책(Group Policy)’가 있음을 기억하게 될 이유에 대해 살펴보겠습니다.
그룹 정책에 대해 이해해야 할 3가지
우선 그룹 정책에 대해 알아야 할 3가지 핵심 사항부터 짚어보겠습니다.
1. 대단히 강력하다
그룹 정책은 AD(Active Directory)에 내장된 핵심 기능입니다. 관리자는 그룹 정책을 통해 IT 환경 전반에서 할 수 있는 일과 없는 일을 설정할 수 있습니다. 사용자(비즈니스 사용자부터 관리자까지)와 컴퓨터(사용자 엔드포인트부터 AD 도메인 컨트롤러까지), 두 가지 모두에 대한 설정을 생성할 수 있습니다. 실제로 마이크로소프트의 참조 스프레드시트에는 말 그대로 수천 가지의 설정이 나와 있습니다.
그룹 정책으로 할 수 있는 일 중에서 몇 가지만 꼽아보겠습니다.
- 비밀번호 정책을 설정하고 강제합니다.
- 맬웨어 감염 벡터인 이동식 미디어 드라이브 사용을 차단합니다
- 명령 프롬프트에 대한 액세스를 제한해서 사용자가 승인되지 않은 코드를 실행할 수 없도록 합니다.
- 사용자가 자신의 시스템에 새 소프트웨어를 설치하지 못하도록 차단합니다.
- 더 근래에 나온 케베로스(Kerberos) 인증에 비해 약한 NTLM 인증을 비활성화합니다.
- 윈도우에서 해킹하기 쉬운 LM 비밀번호 해시를 저장하지 않도록 합니다.
2. 간과되는 경우가 많다
그러나 그룹 정책의 강력함이 제대로 인지되지 못하고 조직의 보안 전략에서 마땅히 받아야 할 관심을 받지 못하는 경우가 많습니다. 그룹 정책은 많은 기업에서 한 번 설정한 다음 더 이상 관심을 두지 않는 기술로 취급됩니다. 오래전에 구성된 그룹 정책이 이후 장시간 그대로 방치되는 경우가 흔합니다. “시야에서 멀어지고 마음에서도 멀어지는” 이 태도는 악의적 행위자에게는 “어서오세요”라는 환영 표지판과 마찬가지입니다.
그 반대의 극단으로 가는 기업도 있습니다. 사소한 일 하나하나까지 GPO를 사용해 처리합니다. 몇 년이 지나면 수백, 수천 개의 GPO가 쌓이고 뭐가 어떻게 돌아가는지 누구도 모르는 상태가 됩니다. 이와 같은 혼잡과 끊임없는 변화의 소음 속에서 누군가가 부정한 목적을 위해 조용히 설정을 변경한다 한들 누가 알 수 있을까요?
3. 공격자는 별다른 기술 없이도 그룹 정책을 해킹할 수 있다
그룹 정책은 모든 AD 환경의 일부이므로 악의적 행위자는 침투하고자 하는 각 조직마다 새로운 공격 플레이북을 만들 필요가 없습니다. 몇 년 동안 숙달한(그리고 다른 사람들과 공유한) 수법을 그대로 재사용하면 됩니다.
게다가 일단 들어온 공격자는 별다른 기술적 노하우가 없더라도 필요한 설정을 조정해서 원하는 것을 얻을 수 있습니다. 못할 이유가 없습니다. 심지어 AD 환경 내의 모든 특권 관계를 드러내는 BloodHound라는 오픈소스 툴도 있습니다.
이 툴은 합법적인 IT 전문가가 보안을 개선하는 데 도움을 줄 목적으로 제작되었지만 해커라고 사용하지 못할 이유가 없습니다. 악의적 행위자는 BloodHound를 실행하기만 하면 은밀한 정찰과 승격된 액세스 권한을 획득하는 데 사용할 수 있는 정확한 공격 경로가 나온 세밀한 지도를 입수하고 이를 활용하여 데이터를 훔치고 비즈니스 운영을 중단시키거나 다른 최종 목표를 달성할 수 있습니다.
2021년, 더욱 커지는 그룹 정책의 중요성
제로로그온이 계속해서 IT 전문가의 골칫거리가 될 것으로 보일 것이라는 저의 전망은 과거 어느 때보다 2021년에 그룹 정책에 대해 관심을 기울여야 하는 한 가지 이유를 이미 명확히 제시합니다. 공격자는 제로로그온 취약점을 사용해서 도메인 컨트롤러 중 하나에 대한 액세스 권한을 획득할 수 있습니다. 즉, GPO(Group Policy Object)를 자신이 원하는 대로 변경할 수 있습니다. 방금 살펴본 바와 같이, 이 경우 공격자에게 전체 도메인에 대한 막강한 권한을 넘겨주게 됩니다.
그룹 정책으로 할 수 있는 일을 나열한 위의 목록을 다시 봐주시기 바랍니다. 모두 보안을 위해 구성해야 하는 가장 중요한 “최상위 10개” GPO 목록에 포함됩니다. 이제 누군가가 이들 GPO 중에서 단 몇 개라도 수정할 경우 어떤 일이 벌어질지 생각해 보십시오. 예를 들어 비밀번호 정책을 비활성화하고 사용자가 자신의 컴퓨터에 승인되지 않은 애플리케이션을 설치하도록 허용할 수 있습니다. 이렇게 되면 환경에 해커가 한 명 침투한 상황에 그치는 것이 아니라 사용자(관리자까지!) 인증 정보가 시시각각 침해되고 맬웨어가 IT 생태계 전체에 걷잡을 수 없이 퍼지게 됩니다.
GPO 보안을 강화하는 방법
그렇다면 스스로를 방어하기 위해 할 수 있는 일은 무엇일까요? 단도직입적으로, 그룹 정책을 보안 전략의 중심에 두십시오! 우선 현재 보유한 GPO를 제대로 파악해야 합니다. 특히 중복되거나 상호 충돌하는 설정을 확인해 정리해야 합니다. 이 부분은 조직이 “한번 설정하고 관심을 끈” 경우가 아니라 “장기적인 GPO 난립”을 거친 경우에 해당한다면 특히 중요합니다.
다음으로, 모든 변경이 승인을 거친 정확한 변경임을 보장하는 데 도움이 되는 승인 기반 워크플로우를 설정해야 합니다. 부주의한 관리자 역시 공격자가 공격하는 속도만큼 빠르게 IT 운영을 중단시키거나 보안 침해에 환경을 노출시킬 수 있기 때문입니다. 보안을 한층 더 강화하려면 특정 정책에 대한 책임을 특정 관리자에게 할당하는 방법이 크게 도움이 됩니다. 이렇게 하면 누구도 자신이 담당하지 않는 설정에 우발적, 또는 의도적으로 접근할 수 없습니다.
마지막으로, 물론 GPO에 대하 변경을 즉시 인지하고 GPO 변경이 승인되지 않았거나 부정적인 영향을 미치는 경우 알려진 정상 설정으로 신속하게 되돌릴 수 있어야 합니다. 일부 GPO 값의 경우 아예 고정해서 수정이 불가능하도록 하는 것이 더욱 좋습니다.