[Dongclee의 2012년 2월 첫 번째 포스팅] Windows 7 & Windows Server 2008 의 AppLocker에 대한 고찰
안녕하세요 이동철입니다.
봄이 다가오는 2월인데 요즘 거의 뭐 북극에서 사는 느낌의 강추위가 왔네요.. 방안에서 꼼짝하기 싫은 그런 날씨입니다.
여러분들 이런 강추위에는 역시 감기 조심하시구,,, 길 다니실 때는 미끄럼 사고에 특히 주의하세요 ^-^
오늘 주제는 AppLocker에 대한 고찰입니다. AppLocker는 사실 Windows Vista에서 SRP(Software Restriction Policy)에서 소개된 개념입니다. 즉, AppLocker는 특정 PC에서 특정 어플리케이션(ex, *.exe)이 설치 및 수행되지 못하도록 하는 기능입니다. 그런데, 이러한 기능으로만 보면, SRP보다 크게 향상된 점이 무엇인지 알 수 없습니다. 물론, AppLocker는 SRP 보다는 강력한 제한 기능을 제공합니다. 이 점은 추후 설명드리구요….
제가 SRP보다 AppLocker에서 확실하게 좋아진 점은 아마도 SRP가 제공하지 못 하는, 표준 사용자를 위한 정책을 구현할 수 있다는 점입니다. “표준 사용자”라는 정의는 특정 PC를 사용하는 도메인 사용자 계정을 의미합니다. 대부분의 Active Directory 환경에서는 특정 PC를 사용하는 도메인 사용자 계정을 해당 PC의 로컬 Administrators 그룹에 포함시킵니다. 즉, 해당 PC에 대해서는 도메인 사용자 계정이 관리자 권한을 소유하도록 합니다. 그러나, 최근에 보안 issue가 많이 발생하면서, 자신의 PC일지라도, 자신의 도메인 계정이 관리자 권한을 갖지 못하도록 하는 요구 사항이 제기되고 있습니다. 관리자 권한을 가지 못한다면, 어플리케이션의 수행이나 OS를 수행하면서 권한 부족으로 정상적인 PC 사용이 불가할 수도 있습니다. 이러한 고민을 해결해 줄 수 있는 기능이 바로 AppLocker에 포함되어 있습니다.
첨부 문서의 “Allowing Windows Operating System Files to Run” 부분을 참조하시면, 이러한 기능을 구현할 수 있습니다.
이 기능은 보안 요구 사항이 강력한 회사에서 효율적인 것으로 생각됩니다.
이제 SRP에 비해 AppLocker가 어플리케이션의 수행 및 설치를 제어하는 방법이 견고함을 확인해 봅니다. 통상적으로 Windows 운영 체제에서 설치 및 수행 파일은 대부분 아래와 같이 디지털 서명이 되어 있고, 디지털 서명 시에 상세 정보가 포함됩니다.
이러한 정보를 기반으로 AppLocker 규칙을 생성합니다. 아래 그림을 참조합니다.
AppLokcer는 파일의 디지털 서명에 포함된 변경되지 않는 정보를 기반으로 규칙을 생성하기 합니다. 예를 들어, 이 파일의 원본 파일 이름을 위 그림 1에서 확인할 수 있습니다. 즉, 이 원본 파일 이름은 변경되지 않기 때문에, 실제 파일 이름을 변경한다 할지라도 AppLokcer는 원본 파일 이름으로 확인하여 실행을 제어할 수 있습니다.
Applocker는 Windows 7 및 Windows Server 2008의 로컬 정책으로 단일 컴퓨터에 각기 적용할 수 있다. 또한, Active Directory의 GPO를 사용하여 AppLokcer 정책을 생성하여, 특정 컴퓨터에 대해서 일괄적으로 AppLocker를 적용할 수도 있습니다.
이 문서의 전반부는 단일 컴퓨터에서 AppLocker 정책을 생성 및 적용하는 기본적이 개념 및 원리를 설명하고 있습니다.
Active Directory에서 AppLokcer 정책을 적용하는 full-step은 첨부 문서의 “GPO를 통한 AppLokcer 정책 적용을 위한 Full Step” 부분을 참조하세요…
첨부 문서는 상당 부분 technet의 한글 자료를 인용하였고, Active Directory에서 AppLocker 정책을 적용하는 부분은 제가 시니리오를 구성하여 만들었습니다.
추운 2월 건강 조심하세요.