Azure Monitoring Agent(미리 보기)를 사용한 변경 내용 추적 및 인벤토리 개요

적용 대상: ✔️ Windows VM ✔️ Linux VM ✔️ Windows Registry ✔️ Windows Files ✔️ Linux Files ✔️ Windows 소프트웨어 ✔️ Windows 서비스 및 Linux 디먼

Important

  • 현재 변경 내용 추적 및 인벤토리는 Log Analytics 에이전트를 사용하며 이는 2024년 8월 31일까지 사용 중지될 예정입니다. Azure Monitoring Agent를 새 지원 에이전트로 사용하는 것이 좋습니다.
  • Log Analytics 에이전트를 사용하여 변경 내용 추적 및 인벤토리에서 Azure Monitoring Agent로 마이그레이션하는 방법에 대한 지침은 일반 공급된 후 사용할 수 있습니다. 자세히 알아보기.
  • 변경 내용 추적 확장 버전 2.20.0.0 이상이 제공되는 Azure Monitoring Agent에서 변경 내용 추적을 사용하여 이 서비스의 GA 버전에 액세스하는 것이 좋습니다.

이 문서에서는 Azure Monitoring Agent를 데이터 수집을 위한 단일 에이전트로 사용하는 최신 버전의 변경 내용 추적 지원에 대해 설명합니다.

참고 항목

Log Analytics 에이전트를 기반으로 하는 파일 무결성 모니터링의 현재 GA 버전은 2024년 8월에 더 이상 사용되지 않으며, 곧 MDE를 통해 새 버전이 제공될 예정입니다.  AMA(Azure Monitor 에이전트)를 기반으로 하는 FIM 공개 미리 보기는 MDE를 통해 대안이 제공되는 경우 더 이상 사용되지 않습니다. 따라서 AMA 공개 미리 보기 버전이 있는 FIM은 GA에 계획되어 있지 않습니다. 여기에서 공지를 확인하세요.

주요 혜택

  • 통합 모니터링 에이전트와의 호환성 - 보안, 안정성을 향상시키고 데이터를 저장하는 멀티 호밍 환경을 용이하게 하는 Azure Monitor 에이전트와 호환됩니다.
  • 추적 도구와의 호환성- 클라이언트의 가상 머신에서 Azure Policy를 통해 배포된 CT(변경 내용 추적) 확장과 호환됩니다. AMA(Azure Monitor 에이전트)로 전환할 수 있습니다. 그러면 CT 확장에서 소프트웨어, 파일 및 레지스트리를 AMA로 푸시합니다.
  • 멀티 호밍 환경 – 하나의 중앙 작업 영역에서 관리 표준화를 제공합니다. 모든 VM에서 데이터 수집 및 유지 관리를 위해 단일 작업 영역을 가리키도록 LA(Log Analytics)에서 AMA로 전환할 수 있습니다.
  • 규칙 관리데이터 수집 규칙을 사용하여 데이터 수집의 다양한 측면을 구성하거나 사용자 지정합니다. 예를 들어 파일 수집 빈도를 변경할 수 있습니다.

현재 제한 사항

Azure Monitoring Agent를 사용하는 변경 내용 추적 및 인벤토리에는 다음과 같은 제한 사항을 지원하지 않거나 포함합니다.

  • Windows 레지스트리 추적을 위한 재귀
  • 네트워크 파일 시스템
  • 다른 설치 방법
  • *Windows에 저장된 .exe 파일
  • 최대 파일 크기 열과 값은 현재 구현에서 사용되지 않습니다.
  • 파일 변경 내용을 추적하는 경우 파일 크기가 5MB 이하로 제한됩니다.
  • 파일 크기가 >1.25MB로 표시되면 체크섬 계산의 메모리 제약 조건으로 인해 FileContentChecksum이 잘못되었습니다.
  • 30분 수집 주기에 2500개가 넘는 파일을 수집하려고 하면 변경 내용 추적 및 인벤토리 성능이 저하될 수 있습니다.
  • 네트워크 트래픽이 많으면 변경 레코드를 표시하는 데 최대 6시간이 걸릴 수 있습니다.
  • 컴퓨터나 서버가 종료된 상태에서 구성을 수정하면 이전 구성에 속한 변경 내용이 게시될 수 있습니다.
  • Windows Server 2016 Core RS3 시스템에서 핫픽스 업데이트 수집
  • 변경 내용이 없더라도 Linux 디먼에서 변경됨 상태를 표시할 수 있습니다. 이 문제는 Azure Monitor ConfigurationChange 테이블에서 SvcRunLevels 데이터가 작성되는 방식 때문에 발생합니다.
  • 변경 내용 추적 확장은 Linux 운영 체제 또는 배포판에 대한 강화 표준을 지원하지 않습니다.

제한

다음 표에서는 변경 내용 추적 및 인벤토리에 대한 머신당 추적된 항목 한도를 보여줍니다.

리소스 한도 참고
파일 500
파일 크기 5MB
등록 250
Windows 소프트웨어 250 소프트웨어 업데이트를 포함하지 않습니다.
Linux 패키지 1,250
Windows 서비스 250
Linux 데몬 250

지원되는 운영 체제

변경 내용 추적 및 인벤토리는 Azure Monitor Agent 요구 사항을 충족하는 모든 운영 체제에서 지원됩니다. 현재 Azure Monitor 에이전트에서 지원하는 Windows 및 Linux 운영 체제 버전의 목록은 지원되는 운영 체제를 참조하세요.

TLS에 대한 클라이언트 요구 사항을 이해하려면 Azure Automation용 TLS를 참조하세요.

변경 내용 추적 및 인벤토리 사용

변경 내용 추적 및 인벤토리는 다음과 같은 방법으로 사용하도록 설정할 수 있습니다.

  • 비 Azure Arc 지원 머신의 경우 정책> 정의 > 선택 범주 = ChangeTrackingAndInventory에서 Arc 지원 가상 머신에 대한 이니셔티브 사용 변경 내용 추적 및 인벤토리 참조하세요. 대규모 변경 내용 추적 및 인벤토리 사용하도록 설정하려면 DINE 정책 기반 솔루션을 사용합니다. 자세한 내용은 Azure Monitoring Agent(미리 보기)를 사용하여 변경 내용 추적 및 인벤토리 사용을 참조하세요.

  • 단일 Azure VM의 경우 Azure Portal의 가상 머신 페이지에서. 이 시나리오는 Linux VM과 Windows VM에서 지원됩니다.

  • 여러 Azure VM의 경우 Azure Portal의 가상 머신 페이지에서 해당 VM을 선택.

파일 변경 추적

Windows 및 Linux 모두에서 파일의 변경 내용을 추적하기 위해 변경 내용 추적 및 인벤토리는 파일의 SHA256 해시를 사용합니다. 이 기능은 해시를 사용하여 마지막 인벤토리 이후 변경 내용이 있는지 탐지합니다.

파일 콘텐츠 변경 추적

변경 내용 추적 및 인벤토리를 사용하면 Windows 또는 Linux 파일 콘텐츠를 볼 수 있습니다. 파일의 각 변경 내용에 대해 변경 내용 추적 및 인벤토리는 Azure Storage 계정에 파일 내용을 저장합니다. 파일을 추적할 때 변경 전이나 후의 콘텐츠를 볼 수 있습니다. 파일 콘텐츠는 인라인으로 또는 나란히 볼 수 있습니다. 자세히 알아보기.

Windows 또는 Linux 파일의 변경 내용을 보는 스크린샷.

레지스트리 키 추적

변경 내용 추적 및 인벤토리를 사용하여 Windows 레지스트리 키의 변경 내용을 모니터링할 수 있습니다. 모니터링을 통해 타사 코드 및 맬웨어가 활성화될 수 있는 확장성 지점을 정확하게 찾을 수 있습니다. 다음 표에는 미리 구성되어 있지만 사용 설정되지 않은 레지스트리 키가 나열되어 있습니다. 이러한 키를 추적하려면 각 키를 사용하도록 설정해야 합니다.

레지스트리 키 목적
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Startup 시작 시 실행되는 스크립트를 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Shutdown 종료 시 실행되는 스크립트를 모니터링합니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run 사용자가 Windows 계정에 로그인하기 전에 로드되는 키를 모니터링합니다. 키는 64비트 컴퓨터에서 실행되는 32비트 애플리케이션에 사용됩니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components 애플리케이션 설정의 변경 내용을 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Classes\Directory\ShellEx\ContextMenuHandlers Windows 탐색기에 직접 연결되고 일반적으로 explorer.exe를 사용하여 프로세스 내에서 실행되는 상황에 맞는 메뉴 처리기를 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Classes\Directory\Shellex\CopyHookHandlers Windows 탐색기에 직접 연결되고 일반적으로 explorer.exe를 사용하여 프로세스 내에서 실행되는 복사 후크 핸들러를 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers 아이콘 오버레이 처리기 등록을 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers 64비트 컴퓨터에서 실행되는 32비트 애플리케이션에 대한 아이콘 오버레이 처리기 등록을 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects Internet Explorer에 대한 새 브라우저 도우미 개체 플러그 인을 모니터링합니다. 현재 페이지의 DOM(문서 개체 모델)에 액세스하고 탐색을 제어하는 데 사용됩니다.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects Internet Explorer에 대한 새 브라우저 도우미 개체 플러그 인을 모니터링합니다. 64비트 컴퓨터에서 실행되는 32비트 애플리케이션에 대해 현재 페이지의 DOM(문서 개체 모델)에 액세스하고 탐색을 제어하는 데 사용됩니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions 사용자 지정 도구 메뉴 및 사용자 지정 도구 모음 단추와 같은 새 Internet Explorer 확장을 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Internet Explorer\Extensions 64비트 컴퓨터에서 실행되는 32비트 애플리케이션에 대한 사용자 지정 도구 메뉴 및 사용자 지정 도구 모음 단추와 같은 새 Internet Explorer 확장을 모니터링합니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Drivers32 wavemapper, wave1 및 wave2, msacm.imaadpcm, .msadpcm, .msgsm610 및 vidc와 관련된 32비트 드라이버를 모니터링합니다. system.ini 파일의 [drivers] 섹션과 비슷합니다.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32 64비트 컴퓨터에서 실행되는 32비트 애플리케이션에 대한 wavemapper, wave1 및 wave2, msacm.imaadpcm, .msadpcm, .msgsm610 및 vidc와 관련된 32비트 드라이버를 모니터링합니다. system.ini 파일의 [drivers] 섹션과 비슷합니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDlls 알려진 또는 일반적으로 사용되는 시스템 DLL 목록을 모니터링합니다. 모니터링은 시스템 DLL의 트로이 목마 버전을 삭제하여 사용자가 취약한 애플리케이션 디렉터리에 대한 권한을 악용하지 못하게 합니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify Windows에 대한 대화형 로그온 지원 모델인 winlogon.exe에서 이벤트 알림을 받을 수 있는 패키지 목록을 모니터링합니다.

재귀 지원

변경 내용 추적 및 인벤토리는 재귀를 지원하므로 디렉터리 간 추적을 단순화하기 위해 와일드카드를 지정할 수 있습니다. 또한 재귀는 여러 또는 동적 드라이브 이름의 환경에서 파일을 추적할 수 있도록 환경 변수를 제공합니다. 다음 목록에는 재귀를 구성할 때 알고 있어야 하는 일반적인 정보가 나와 있습니다.

  • 와일드 카드는 여러 파일을 추적하는 데 필요합니다.

  • 파일 경로의 마지막 세그먼트에만 와일드카드를 사용할 수 있습니다(예: c:\folder\file* 또는 /etc/*.conf).

  • 환경 변수에 잘못된 경로가 있는 경우 유효성 검사는 성공 하지만 실행 중 경로가 실패합니다.

  • 경로를 설정할 때 일반적인 경로 이름을 피해야 합니다. 그렇게 설정하면 너무 많은 폴더가 트래버스될 수 있습니다.

변경 내용 추적 및 인벤토리 데이터 수집

다음 표에서는 변경 내용 추적 및 인벤토리에서 지원하는 변경 유형에 대한 데이터 수집 빈도를 보여줍니다. 모든 유형에 대해 현재 상태의 데이터 스냅샷은 최소한 24시간마다 새로 고쳐집니다.

변경 유형 빈도
Windows 레지스트리 50분
Windows 파일 30~40분
Linux 파일 15분
Windows 서비스 10~30분
기본값: 30분
Windows 소프트웨어 30분
Linux 소프트웨어 5분
Linux 데몬 5분

다음 표에서는 변경 내용 추적 및 인벤토리에 대한 머신당 추적된 항목 한도를 보여줍니다.

리소스 한도
파일 500
등록 250
Windows 소프트웨어(핫픽스 포함 안 함) 250
Linux 패키지 1250
Windows 서비스 250
Linux 데몬 500

Windows 서비스 데이터

필수 조건

Windows 서비스 데이터 추적을 사용하도록 설정하려면 CT 확장을 업그레이드하고 2.11.0.0 이상의 확장을 사용해야 합니다.

- az vm extension set --publisher Microsoft.Azure.ChangeTrackingAndInventory --version 2.11.0 --ids /subscriptions/<subscriptionids>/resourceGroups/<resourcegroupname>/providers/Microsoft.Compute/virtualMachines/<vmname> --name ChangeTracking-Windows --enable-auto-upgrade true

빈도 구성

Windows 서비스에 대한 기본 컬렉션 빈도는 30분입니다. 빈도를 구성하려면 다음을 수행합니다.

  • 설정 편집에서 Windows 서비스 탭의 슬라이더를 사용합니다.

빈도 슬라이더의 스크린샷.

구성 상태에 대한 경고 지원

변경 내용 추적 및 인벤토리의 주요 기능은 하이브리드 환경의 구성 상태 변경 내용에 대해 경고를 표시하는 것입니다. 경고에 대한 응답으로 많은 유용한 작업을 트리거할 수 있습니다. 예: Azure Functions, Automation Runbook, Webhook 등에 대한 작업. 머신의 c:\windows\system32\drivers\etc\hosts 파일 변경 내용에 대한 경고는 변경 내용 추적 및 인벤토리 데이터에 대한 경고 사용의 좋은 예입니다. 다음 표에 정의된 쿼리 시나리오를 비롯하여 경고에 대한 더 많은 시나리오가 있습니다.

쿼리 설명
ConfigurationChange
| 여기서 ConfigChangeType == "Files" 및 FileSystemPath는 " c:\windows\system32\drivers\" 포함
시스템에 중요한 파일의 변경 내용을 추적하는 데 유용합니다.
ConfigurationChange
| 여기서 FieldsChanged는 "FileContentChecksum" 및 FileSystemPath == "c:\windows\system32\drivers\etc\hosts" 포함
주요 구성 파일의 수정 내용을 추적하는 데 유용합니다.
ConfigurationChange
| 여기서 ConfigChangeType == "WindowsServices" 및 SvcName은 "w3svc" 및 SvcState == "Stopped" 포함
시스템에 중요한 서비스의 변경 내용을 추적하는 데 유용합니다.
ConfigurationChange
| 여기서 ConfigChangeType == "Daemons" 및 SvcName은 "ssh" 및 SvcState!= "Running" 포함
시스템에 중요한 서비스의 변경 내용을 추적하는 데 유용합니다.
ConfigurationChange
| 여기서 ConfigChangeType == "Software" 및 ChangeCategory == "Added"
잠긴 소프트웨어 구성이 필요한 환경에 유용합니다.
ConfigurationData
| 여기서 SoftwareName은 "Monitoring Agent" 및 CurrentVersion!= "8.0.11081.0" 포함
오래되었거나 규정을 준수하지 않는 소프트웨어 버전이 설치된 머신을 확인하는 데 유용합니다. 이 쿼리는 변경 내용이 아닌 마지막으로 보고된 구성 상태를 보고합니다.
ConfigurationChange
| 여기서 RegistryKey == @"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\QualityCompat"
중요한 바이러스 백신 키의 변경 내용을 추적하는 데 유용합니다.
ConfigurationChange
| 여기서 RegistryKey는 @"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\SharedAccess\\Parameters\\FirewallPolicy" 포함
방화벽 설정의 변경 내용을 추적하는 데 유용합니다.

다음 단계