Windows Defender 실시간 감시

실시간 감시가 현재 어떤 파일들을 스캔하고 있는지 알고 싶은 경우 어떻게 해야 할까요? Avira 같은 몇몇 백신들은 프로그램 내에서 직접 현황을 볼 수 있으며 쉽게 예외처리도 가능합니다. 그러나 Windows Defender는 실시간 감시의 진행 상황을 볼 수 없으며 예외 처리가 잘 되고 있는지 확인하기도 어렵습니다. 이를 알아보려면 프로세스 모니터라는 툴을 사용하여 디펜더가 하는 작업을 관찰해야 합니다.





프로세스 모니터

윈도우 작업 관리자는 현재 실행되는 앱, 서비스, CPU 점유율 등의 여러 정보를 보여주지만, 앱이 어떤 파일을 읽고 쓰는지, 레지스트리가 어떻게 변하는지 실시간으로 알려주지는 않습니다. 프로세스 모니터를 사용하면 이런 자세한 사항들을 알아볼 수 있습니다. 다음 다운로드 사이트 에서 내려받아 압축을 풀면 설치 없이 바로 사용할 수 있습니다. 프로세스 모니터를 실행한 후 사진과 같이 필터를 추가합니다.
프로세스 모니터 다운로드


Process Name is MsMpEng.exe - 윈도우 디펜더 Anti-Virus 서비스를 필터에 추가합니다.

Path begins with D: - 관찰하고 싶은 폴더 및 드라이버를 추가합니다.

이렇게 설정하면 윈도우 디펜더가 D: 드라이브에서 어떤 파일을 읽는지 실시간으로 살펴볼 수 있습니다.





실험 내용

윈도우 디펜더의 실시간 감시를 켜고 D: 드라이브에서 여러 작업을 실행하였습니다. 내용은 다음과 같으며, 프로세스 모니터를 통해 윈도우 디펜더가 어떤 파일들을 감시하는지 확인해 보았습니다.

탐색기 단순 탐색: 파일을 열거나 실행하지는 않고 폴더를 열어보기

삭제 및 파티션 내 이동: 휴지통 보내기, 비우기, 복구 / Shift + Delete / 파티션 내 이동

쓰기: 토렌트 다운로드 / 브라우저에서 파일 다운로드 / 텍스트 문서 변경 저장 / 복사 및 붙여넣기 / 압축 풀기

파일 열기: mp3, mp4 미디어 파일 / txt, ini 등 텍스트 파일 / png, jpg 사진 파일 / zip 압축파일 / bat, cmd 파일

EXE 파일 실행





1. 실시간 보호 기본 설정

실시간 보호의 모든 옵션을 기본으로 두고 관찰했을 때의 결과 입니다.

탐색기: USB, 외장 HDD 등의 다른 파티션을 연결하면 내부 파일을 자동으로 검사하지는 않습니다. 탐색기를 사용하여 탐색할 때, 파일을 열지 않아도 해당 경로의 중요한 파일들이 스캔 됩니다. exe, dll, url, lnk 파일 등이 포함됩니다.

삭제 및 파티션 내 이동: 파일 데이터 영역의 쓰기 없이 메타 데이터만 변경하는 작업입니다. 실시간 감지가 모니터하지 않습니다.

쓰기: 모든 쓰기 작업을 모니터링 합니다. 토렌트의 경우 매우 많은 프로세스가 감지 되는 것으로 보아 여러 조각을 각각 스캔하는 것으로 보입니다. 또한 대체 데이터 스트림(ADS)도 검사합니다. 하나의 파일을 한 권의 책으로 비유한다면 대체 데이터 스트림은 부록 혹은 첨부 자료 정도로 이야기할 수 있습니다. 탐색기에서 직접 볼 수 없으며 파일을 열 때 필요한 resource 등의 데이터가 저장됩니다.

파일 열기: 텍스트, 사진, 영상, 배치 파일 등 모든 파일을 열 때 검사합니다. ADS도 포함됩니다.

EXE 파일 실행: exe 파일 자체도 검사하지만 dll 라이브러리 파일도 같이 스캔합니다. 또한 ini, png 파일 등 exe가 실행되며 불러오는 다른 파일들도 포함됩니다.





2. 파일 및 프로그램 동작 모니터링 - 사용 안 함

gpedit.msc > 컴퓨터 구성 > 관리 템플릿 > Windows 구성 요소 > Windows Defender 바이러스 백신 > 실시간 보호 에서 다양한 정책을 변경할 수 있습니다.


컴퓨터의 파일 및 프로그램 동작 모니터링 정책은 파일 변화, 프로그램 실행, 프로그램이 불러오는 다른 파일 등을 검사하도록 설정하는 옵션입니다. 기본적으로 켜져 있는 상태이지만, 사용자의 파일을 모두 검사하기 때문에 불편한 경우도 있습니다. 이 정책을 사용 안 함으로 변경 후 프로세스 모니터를 통해 관찰한 결과는 다음과 같습니다.

탐색기: 단순 탐색으로는 파일이 스캔 되지 않습니다.

삭제 및 파티션 내 이동: 모니터링되지 않습니다.

쓰기: 대체 데이터 스트림 영역만 검사합니다. ADS 가 없는 파일은 프로세스 모니터의 목록에 나타나지 않았습니다.

파일 열기: 마찬가지로 ADS 영역만 검사합니다.

EXE 파일 실행: 실행된 exe 파일과 dll 파일이 검사 됩니다. exe가 실행되며 불러오는 다른 파일은 스캔하지 않습니다.





3. D 드라이브 제외


보안 센터 > 바이러스 및 위협 방지 > 위협 방지 설정 > 제외 에서 여러 가지 예외 사항을 추가할 수 있습니다. 파일 / 폴더 / 형식 / 프로세스를 지정할 수 있는데, 폴더를 선택하면 원하는 드라이브 또는 경로를 제외할 수 있습니다. 여기서는 모든 설정을 기본 상태로 두고 D 드라이브만 제외하였습니다.

탐색기: 단순 탐색으로는 파일이 스캔 되지 않습니다.

삭제 및 파티션 내 이동: 모니터링되지 않습니다.

쓰기: 모든 파일 데이터를 검사하지 않습니다.

파일 열기: 검사하지 않습니다.

EXE 파일 실행: exe 파일만 스캔합니다. dll 파일은 검사하지 않으며 exe 프로그램이 불러오는 다른 파일도 포함되지 않습니다. 또한 exe 파일과 관계된 작업 내용이 기본 설정일 때보다 더 적은 것으로 보아 최소한의 검사만 진행하는 것 으로 추정됩니다.





정리


 탐색   삭제   쓰기   열기   EXE   기타
기본설정   O   X   O   O   O dll을 포함하여 exe가 읽는 모든 파일 검사 
모니터링 안 함   X   X  ADS   ADS    O dll 검사
D 제외   X   X   X   X   o exe가 불러오는 파일 검사 안 함

파일 및 프로그램 동작 모니터링을 사용 안 함으로 설정하면 모든 드라이브에서 보호 성능이 저하 되기 때문에 이 정책은 기본으로 둔 채 원하는 폴더 및 드라이브만 제외에 추가하는 것이 좋습니다.

Process Monitor의 필터에 Operation is WriteFile 을 추가하여 MsMpEng.exe 의 쓰기 작업을 관찰하면 C:\ProgramData\Microsoft\Windows Defender\Scans 경로에 수시로
파일을 쓰는 것을 확인할 수 있습니다. 이처럼 임시 파일이나 로그 파일 등의 작성도 체크할 수 있으며, 다른 옵션들도 프로세스 모니터를 통해 자세한 효과를 알아볼 수 있습니다.


관련글: Windows Defender 고급 설정

댓글