AppLocker는 Windows의 엔터프라이즈 에디션에 포함된 애플리케이션 제어 기능입니다. 이 도구를 사용하면 사용자가 실행할 수 있는 애플리케이션과 파일을 관리할 수 있습니다. Windows AppLocker는 특정 사용자와 비즈니스 그룹에 대해 소프트웨어 접근 및 관련 데이터를 제한하는 것을 목표로 합니다. 그 결과 보안이 강화되고 관리 부담이 줄어들며 헬프데스크 문의가 더 줄어듭니다.
왜 AppLocker인가, 왜 지금인가?
지금은 악성코드의 세계입니다. 오늘날 전 세계 곳곳에서 새로운 악성코드 계열이 따뜻한 봄날의 잡초처럼 계속 등장하고 있습니다. Infosecurity Group에 따르면 연구진은 2017년에 360,000개의 새로운 악성 파일을 탐지했습니다. 이는 매초 약 4개의 새로운 악성코드 샘플에 해당합니다. 상당한 양이긴 하지만, 새로운 악성 익스플로잇의 수가 놀랍지는 않습니다. 범죄자들은 자동화를 사용해 악성코드 변종을 생성하고 배포합니다. 그 결과, 안티멀웨어 업계는 따라잡기 위해 고전하고 있습니다.
Microsoft AppLocker는 사용자가 잠재적으로 위험한 애플리케이션을 실행하지 못하도록 막아주는 기본 제공 애플리케이션 허용 목록(화이트리스트) (AWL) 기능을 제공합니다. 애플리케이션 화이트리스트(AWL)는 Defence in Depth 전략으로, 컴퓨터 네트워크 내에서 사용이 허가된 애플리케이션을 지정합니다. 사용자가 악성 소프트웨어를 의도적으로 또는 무의도적으로 다운로드할 수 있는 방법은 여러 가지가 있습니다.
- 사용자가 컴퓨터에 저장(배치)된 임의의 EXE 파일을 실수로 클릭했습니다.
- 불만을 품은 사용자가 트로이목마를 의도적으로(알고) 다운로드했습니다.
- 조직 내 누군가가 파일을 심었을 수도 있습니다.
결국 Windows AppLocker를 사용해 애플리케이션을 화이트리스트로 지정하면, 사용자가 열 수 있는 정확한 애플리케이션과 .exe 파일을 지정하는 것입니다. 엔드유저가 악의적인 피해를 일으킬 수 있는 가능성을 제한하기 때문에 악성코드는 접근하지 못합니다. AppLocker의 장점은 확장자가 화이트리스트에 없으면 해당 항목이 열리지 않는다는 점입니다. 이론적으로는 가장 단순한 방식입니다. 하지만 현실에서는 대부분의 기업에서 승인된 애플리케이션 목록이 계속해서 변합니다. 즉, 화이트리스트는 지속적인 유지보수와 수정이 필요합니다. 이러한 한계가 대부분의 화이트리스트 솔루션이 지닌 본질적인 약점입니다.
AppLocker 장점
AppLocker에는 몇 가지 중요한 이점이 있습니다. 첫째, Microsoft는 Windows Server의 엔터프라이즈 버전에 AppLocker를 포함합니다. 즉, 추가 비용이 들지 않습니다. 둘째, AppLocker는 Group Policy의 통합 구성 요소로 제공됩니다. 대부분의 Windows 관리자는 이미 Group Policy에 익숙하므로 AppLocker의 사용자 경험이 매끄럽고 자연스럽습니다. 셋째, 어떤 AppLocker 정책이든 XML 파일로 Intune에 가져올 수 있습니다. 따라서 MDM에 등록된 디바이스에 대해 온프레미스의 도메인에 조인된 디바이스와 거의 동일한 수준의 애플리케이션 제어를 갖추게 됩니다. 마지막으로 AppLocker는 내부 Windows 애플리케이션을 자동으로 화이트리스트에 추가하여 시간을 절약하고 복잡성을 제거해 줍니다.
AppLocker 단점
그럼에도 불구하고 AppLocker에는 생산성을 떨어뜨리고 위험을 증가시키는 수많은 단점이 있습니다. 우선, AppLocker는 대부분의 화이트리스트 솔루션처럼 승인된 애플리케이션 목록(인덱스)을 지속적으로 업데이트하고 세부 조정을 해야 합니다. 실제로 기업 전체의 화이트리스트를 유지 관리하는 과정은 길고 고되며, 상당한 시간과 노력이 필요합니다. 또한 로컬 디바이스에 대한 관리자 권한이 있는 누구든 AppLocker 정책을 무력화할 수 있습니다. 그 결과, 애플리케이션을 잠그기 위해 최선을 다하더라도 환경이 악성코드에 노출될 수 있습니다.
무엇보다도 AppLocker에는 한 가지 눈에 띄는 결함이 있습니다. 직접 찾아낼 수 있는지 확인해 보세요. 아래는 AppLocker가 지원하는 Windows 운영 체제 목록입니다.
- Windows 7의 Ultimate 및 Enterprise 에디션
- Windows 8의 Enterprise 에디션
- Windows 10의 Education 및 Enterprise 에디션
- Server 2008 R2, Server 2012, Server 2012 R2, Server 2016 및 Server 2019
이 목록에 Windows Professional 에디션이 빠져 있는 것을 확인했다면, 당신의 추측이 맞습니다. Group Policy와 함께 적용할 경우 AppLocker는 Windows 10 Professional과 잘 맞지 않습니다. 즉, 도메인에 연결된 컴퓨터에서 애플리케이션을 제어하려면 다른 방법을 찾아야 합니다.
AppLocker 대안
AppLocker를 선택하기 전에, 대안 솔루션에 대해 철저한 실사(듀 딜리전스) 분석을 수행하는 것이 좋습니다. 다른 선택지를 살펴보면 경쟁 구도를 더 잘 이해할 수 있고, 보다 정보에 기반한 결정을 내릴 수 있습니다.
PolicyPak은 사용자 및 컴퓨터 설정에 대한 더 많은 제어를 제공하는 Windows 엔드포인트 관리 및 보안 솔루션입니다. 이 솔루션에는 Least Privilege Manager 가 포함되며, 이는 사용자가 필수적인 업무 기능을 수행하는 데 필요한 권한을 제외한 모든 권한을 잠그도록(제한하도록) 합니다. PolicyPak Least Privilege Manager를 사용하면 일반 사용자가 로컬 관리자 권한 없이도 자신의 업무를 수행할 수 있습니다. 또한 PolicyPak은 생산성을 희생하지 않으면서도 Windows 컴퓨터를 악성코드로부터 보호합니다. AppLocker와 달리 PolicyPak은 화이트리스트(허용 목록) 작성 프로세스를 가속하도록 설계되었습니다. 즉, Windows 관리자들이 핵심 인프라 작업에 더 많은 시간을 할애할 수 있습니다. AppLocker와 달리 PolicyPak은 Windows 7 이후의 Windows Professional 에디션과 함께 작동합니다. 화이트리스트의 이점은 일부 특정 운영 체제에만 국한되지 않습니다.
AppLocker vs. PolicyPak
PolicyPak Least Privilege Manager는 여러 면에서 AppLocker와 다릅니다. 첫째, PolicyPak은 필요한 작업이 있을 때 표준 사용자에게 권한을 상승시켜 줍니다. 예를 들어 그래픽 디자이너가 새 사용자 인터페이스를 목업하기 위한 애플리케이션을 설치해야 할 수 있습니다. 이 경우 PolicyPak Least Privilege Manager는 해당 사용자가 설치를 수행할 수 있도록 허용합니다. 또 다른 예로, 프린터를 추가해야 하는 원격 직원을 생각해 보겠습니다. PolicyPak Least Privilege는 UAC 프롬프트를 우회하거나 지정된 제어판(Control Panel) 애플릿에 대한 액세스 권한을 부여할 수 있게 해줍니다. 둘째, PolicyPak에는 SecureRun™이 포함되어 있는데, 이는 사용자가 애플리케이션을 실행할 수 있는 경우를 “적절하게 설치되었거나 관리자가 승인(제재)한 경우”로만 제한합니다. AppLocker와 마찬가지로 PolicyPak은 Group Policy와 통합되며 정책의 생성, 할당, 배포를 지원합니다. 아래에서 정책 생성 프로세스의 예를 확인하세요.
SecureRun™의 전제는 간단합니다. 모든 애플리케이션, 파일 실행 파일(executable), MSI, 스크립트, 또는 Java JAR 파일에는 소유자가 있습니다. 사용자가 인터넷에서 파일을 다운로드하거나 공유 드라이브에서 파일을 복사하면, 그 사용자가 해당 파일의 소유자가 됩니다. 아래 예를 확인하세요.
사용자가 파일을 열려고 하면 SecureRun™은 그 파일을 누가 소유하고 있는지 확인합니다. 그 다음 사용자가 정의한 소유자 목록과 비교합니다. 기본 목록의 예는 여기에서 확인할 수 있습니다.
따라서 관리자 또는 기술 지원 담당자가 올바르게 설치한 애플리케이션은 기존과 마찬가지로 문제없이 실행됩니다. 반면 표준 사용자가 다운로드한 뒤 실행한 애플리케이션은 아래에 표시된 거부 메시지를 받게 됩니다.
PolicyPak Least Privilege Manager의 가장 우아하고 편리한 점 중 하나는 승인된 애플리케이션 목록을 정기적으로 업데이트할 필요가 없다는 것입니다. AppLocker와 달리 PolicyPak은 애플리케이션 자체에 의존하지 않습니다. 대신 애플리케이션에 대한 액세스를 부여하는 Administrator 역할을 활용합니다. 요약하면, 애플리케이션은 들어오고 나갈 수 있지만 관리자의 그룹은 영원히 일관된 상태를 유지합니다. 여기에서 SecureRun™ 프로세스와 그것이 데스크톱을 어떻게 보호하는지 보여주는 짧은 비디오를 확인할 수 있습니다.
AppLocker 최종 정리 및 다음 단계
Applocker와 달리 PolicyPak Least Privilege Manager는 애플리케이션을 단순히 화이트리스트에 추가하는 것 이상을 수행합니다. 이는 표준 사용자가 UAC 프롬프트를 지나야 하는 어떤 상황에서도 작동합니다. 또한, 사람의 권한을 올리는 것이 아니라 상황을 적절히 격상(권한 상승)시킵니다.
애플리케이션이든 제어판 애플릿이든, 분산된 PowerShell 스크립트든 상관없이 표준 사용자는 필요에 따라 실행하고 권한을 상승할 수 있습니다. 이러한 권한을 위임함으로써 표준 사용자가 당신의 업무를 방해하지 않으면서도 자신의 일을 수행할 수 있는 능력을 제공하게 됩니다. 다시 말해, 표준 사용자가 UAC 프롬프트를 마주할 때마다 계속해서 호출하고 도움말(헬프데스크) 티켓을 여는 일을 멈출 수 있습니다. 권한 상승과 PolicyPak SecureRun™을 통한 화이트리스트 기능의 조합이 바로 PolicyPak Least Privilege Manager를 AppLocker 및 기타 일반적인 AWL 솔루션과 구분 짓는 요소입니다.
공유하기
더 알아보기
저자 소개
Jeremy Moskowitz
제품 관리 부사장(Endpoint Products)
Jeremy Moskowitz는 컴퓨터 및 네트워크 보안 업계에서 널리 인정받는 전문가입니다. PolicyPak Software의 공동 창립자이자 CTO(현재 Netwrix의 일부)로, 또한 그룹 정책, 엔터프라이즈 모빌리티 및 MDM 분야에서 마이크로소프트 Microsoft 20x MVP 출신이기도 합니다. Jeremy는 “Group Policy: Fundamentals, Security, and the Managed Desktop”와 “MDM: Fundamentals, Security, and the Modern Desktop”을 포함해 여러 베스트셀러 도서를 집필했습니다. 아울러 그는 데스크톱 설정 관리 등 다양한 주제에 대한 인기 연사로 활동하고 있으며, MDMandGPanswers.com의 창립자이기도 합니다.