윈도우의 '제어된 폴더 액세스' 기능을 조심해서 써야 하는 이유

2010년대 중반 랜섬웨어 공격이 증가하자 마이크로소프트는 윈도우 사용자와 관리자에게 랜섬웨어 공격으로부터 PC를 보호할 툴을 제공하기 위해 고민했다. 그 결과가 2017년 10월 기능 업데이트에 추가된 ‘제어된 폴더 액세스(Controlled Folder Access)’라는 기능이다. 

설명 문서에 따르면, 제어된 폴더 액세스는 리소스가 제한된 일반 사용자, 홈 PC 사용자, 소규모 기업을 위한 좋은 보호 툴이다. 마이크로소프트는 “제어된 폴더 액세스는 랜섬웨어와 같은 악의적인 앱과 위협으로부터 귀중한 데이터를 보호하는 데 도움이 된다. 제어된 폴더 액세스는 알려진 신뢰할 수 있는 앱 목록을 기준으로 앱을 검사해 데이터를 보호한다. 윈도우 서버 2019, 윈도우 서버 2022, 윈도우 10, 윈도우 11 클라이언트에서 지원되며 윈도우 보안 앱, 마이크로소프트 엔드포인트 구성 관리자(Endpoint Configuration Manager) 또는 인튠(Intune, 관리형 디바이스에 해당)을 사용해 활성화할 수 있다”고 설명했다. 

또한 마이크로소프트에 따르면, 제어된 폴더 액세스는 신뢰할 수 있는 앱만 보호되는 폴더에 액세스하도록 허용한다. 보호된 폴더는 제어된 폴더 액세스가 구성되는 시점에 지정된다. 일반적으로 문서, 사진, 다운로드용 폴더와 같이 자주 사용되는 폴더가 제어된 폴더 목록에 포함된다. 구체적으로 보호되는 폴더는 다음과 같다.

c:\Users\<username>\Documents
c:\Users\Public\Documents
c:\Users\<username>\Pictures
c:\Users\Public\Pictures
c:\Users\Public\Videos
c:\Users\<username>\Videos
c:\Users\<username>\Music
c:\Users\Public\Music
c:\Users\<username>\Favorites

의도치 않은 결과

그러나 이 기능을 무작정 활성화하기 전에 확인해야 할 것이 있다. 애스크우디(Askwoody) 포럼 사용자 Astro46은 최근 제어된 폴더 액세스를 사용하면서 부작용을 경험했다.

곧 다양한 액세스 알림을 처리하고 모든 것이 안정화될 것으로 생각했다. 하지만 그렇지 않았다. 프로그램이 제대로 동작하지 않는 설명할 수 없는 문제를 겪는 경우가 많았는데 추적해 보니 거부된 폴더 액세스 때문이었다. 이런 경우가 발생할 때 알림을 봤다면 그렇게 나쁜 상황은 아니라고 할 수 있지만 알림을 볼 때도 있고 못 볼 때도 있다.

또한 이전에 액세스를 승인한 프로그램이 문제를 다시 유발하는 것으로 보였다. 제어된 폴더 액세스 기능은 프로그램이 업데이트되면 인식하지 못하는 것일까? 이 기능으로 얻는 보안의 이점보다 헛된 노력과 시간 낭비로 인한 손실이 더 컸다.

PDQ 블로그에서 지적하듯이 이 기능을 사용하면 원격 관리 툴을 비롯한 일부 기술이 차단되는 부작용이 발생할 수 있다. 제어된 폴더 액세스를 활성화하면 소프트웨어를 설치할 때 설치 프로그램이 특정 폴더에 대한 액세스 권한을 획득하려고 시도하는 과정에서 보호 기능과 설치 프로세스 사이에 상호작용이 일어난다. 이때 “무단 변경이 차단되었습니다” 또는 “Softwarename.exe의 변경 작업이 차단되었습니다. 설정을 보려면 클릭하십시오”와 같은 메시지가 표시될 수 있다.

제어된 폴더 액세스를 사용할 때 프로세스를 완전히 활성화하지 말고 감사 모드로 사용하는 방법도 있다. 제어된 폴더 액세스를 전체 실행 모드로 활성화하면 예외 사항을 추가하는 데 많은 시간이 걸린다. 인터넷에서는 액세스를 추적해 예외 사항을 추가하느라 몇 시간이 걸렸다는 글을 흔히 볼 수 있다. 심지어 메모장, 페인트(Paint)와 같은 정상적인 마이크로소프트 애플리케이션도 예외 프로세스에 추가해야 했다는 글도 몇 년 전에 올라온 적이 있다.

문제의 원인

아쉽게도 사용자 인터페이스는 최소한의 기능만 제공하므로 독립적인 워크스테이션에서 제어된 폴더 충돌을 발견하는 방법은 폴더가 보호되고 애플리케이션이 그 위치에 액세스를 시도할 때 시스템 트레이에 표시되는 알림을 보는 것뿐이다. 이벤트 로그를 살펴볼 수도 있지만 세부 사항을 검토하기 전에 이벤트 xml 파일을 가져와야 한다. 구체적인 방법은 마이크로소프트 테크 커뮤니티 블로그에 나온 것처럼, 평가 패키지 파일을 다운로드해서 cfa-events.xml을 다운로드 폴더에 추출해야 한다. 또는 다음을 복사해서 메모장 파일에 붙여 넣고 cfa-events.xml 이름으로 저장해도 된다.

<QueryList>
  <Query Id=”0″ Path=”Microsoft-Windows-Windows Defender/Operational”>
   <Select Path=”Microsoft-Windows-Windows Defender/Operational”>*[System[(EventID=1123 or EventID=1124 or EventID=5007)]]</Select>
   <Select Path=”Microsoft-Windows-Windows Defender/WHC”>*[System[(EventID=1123 or EventID=1124 or EventID=5007)]]</Select>
  </Query>
</QueryList>

이제 이 xml 파일을 이벤트 뷰어로 가져오면 제어된 폴더 액세스 이벤트를 더 확인할 수 있다. 시작 메뉴에서 이벤트 뷰어를 입력해 윈도우 이벤트 뷰어를 연다. 왼쪽 창의 작업 아래에서 보기 가져오기(Import custom view)를 선택한다. cfa-events.xml을 추출한 곳으로 이동해 선택한다. 또는 XML을 바로 복사해도 된다. 그다음 이벤트 로그에서 다음 이벤트를 찾는다.

5007     Event when settings are changed
1124     Audited controlled folder access event
1123     Blocked controlled folder access event

감사 모드인 경우 1124를, 테스트를 위해 제어된 폴더 액세스를 완전히 활성화한 경우에는 1123을 주로 살펴본다. 이벤트 로그를 검토하면 애플리케이션이 정상 작동하도록 하기 위해 어느 폴더를 조정해야 하는지 알 수 있다.

그러나 일부 소프트웨어에서 예상치 못한 파일에 대한 액세스가 필요할 수 있다. 바로 여기에 이 툴의 문제가 있다. 마이크로소프트는 이미 많은 애플리케이션을 승인했고 이러한 애플리케이션은 제어된 폴더 액세스가 활성화된 상태에서도 정상 작동하지만, 그 외의 애플리케이션이나 오래된 애플리케이션은 정상 작동하지 않을 수 있다. 조정이 필요 없는 파일과 폴더, 조정이 필요한 파일과 폴더는 지금까지 필자의 예상을 벗어나는 경우가 많았다.

공격 표면 감소 규칙과 마찬가지로 제어된 폴더 액세스에도 개별 워크스테이션을 위한 더 나은 독립적인 인터페이스가 있다면 더 쉽게 이 기능을 사용할 수 있겠지만 현재는 없다. 엔드포인드용 디펜더(Defender for Endpoint)를 사용하는 기업은 비교적 쉽게 문제를 검토할 수 있지만 독립 워크스테이션은 여전히 시스템 트레이에 표시되는 메시지에 의존해야 한다.

공격의 위험과 시스템에 미치는 영향 사이의 타협

바이러스 방지를 위해 디펜더를 사용한다면 랜섬웨어에 대한 부가적인 보호를 위해 제어된 폴더 액세스를 고려할 만하다. 그러나 무심코 이 기능을 배포하지 말고 제대로 평가할 것을 권한다. 감사 모드로 활성화해서 시간을 들여 그 영향을 검토해야 한다. 애플리케이션에 따라 생각보다 영향이 더 클 수도 있기 때문이다.

엔드포인용 디펜더를 사용 중인 경우 다음과 같이 제어된 폴더 액세스를 활성화할 수 있다. 마이크로소프트 엔드포인트 구성 관리자에서 자산 및 규정 준수(Assets and Compliance) > 엔드포인트 보호(Endpoint Protection) > 윈도우 디펜더 익스플로잇 가드(Windows Defender Exploit Guard)로 이동한다. 홈(Home)을 선택하고 익스플로잇 가드 정책 만들기(Create Exploit Guard Policy)를 선택한다. 이름과 설명을 입력하고 제어된 폴더 액세스(Controlled folder access)를 선택하고 다음(Next)을 선택한다. 변경을 차단할지 또는 감사할지, 다른 앱을 허용할지 또는 다른 폴더를 추가할지 여부를 선택하고 다음(Next)을 선택한다.

또는 파워셸, 그룹 정책, 레지스트리 키로 관리하는 방법도 있다. 네트워크 시나리오의 경우 구성 관리자 또는 인튠을 사용해서 신뢰 목록에 추가하는 애플리케이션을 관리할 수 있다. 마이크로소프트 365 디펜더 포털에서 부가적인 구성이 가능하다. 많은 경우 공격의 위험과 보안 시스템이 컴퓨터에 미치는 영향 사이에서 타협해야 한다. 시간을 들여 둘 사이의 균형을 평가하고 이 기능에 따르는 오버헤드를 감수할 가치가 있는지 평가해야 한다.

이 게시글이 문제가 될 시, 삭제하겠습니다

출처: https://www.itworld.co.kr/mainnews/243784#csidxad2b3f520c2422aa4b9c7ad47d64e93 

댓글 없음:

참고: 블로그의 회원만 댓글을 작성할 수 있습니다.

Powered by Blogger.