엔드포인트용 Microsoft Defender 집계된 보고
중요
일부 정보는 상용으로 출시되기 전에 실질적으로 수정될 수 있는 사전 릴리스된 제품과 관련이 있습니다. Microsoft는 여기에서 제공하는 정보와 관련하여 명시적이거나 묵시적인 어떠한 보증도 제공하지 않습니다.
집계된 보고는 엔드포인트용 Microsoft Defender 이벤트 보고에 대한 제약 조건을 해결합니다. 집계된 보고는 신호 보고 간격을 확장하여 필수 이벤트 속성을 유지하면서 보고된 이벤트의 크기를 크게 줄입니다.
엔드포인트용 Defender는 수집된 데이터의 노이즈를 줄여 제품 성능과 효율성의 균형을 유지하면서 신호 대 노이즈 비율을 개선합니다. 이 균형을 유지하기 위해 데이터 수집을 제한합니다.
엔드포인트용 Defender는 집계된 보고를 통해 조사 및 위협 헌팅 활동에 중요한 모든 필수 이벤트 속성이 지속적으로 수집되도록 합니다. 이 작업은 1시간의 확장된 보고 간격으로 이 작업을 수행하여 보고된 이벤트의 크기를 줄이고 효율적이면서도 중요한 데이터 수집을 가능하게 합니다.
집계된 보고가 켜져 있는 경우 조사 및 헌팅 활동에 사용할 수 있는 낮은 효능도 원격 분석을 포함하여 지원되는 모든 이벤트 유형의 요약을 쿼리할 수 있습니다.
필수 구성 요소
집계된 보고를 켜기 전에 다음 요구 사항을 충족해야 합니다.
- 엔드포인트용 Defender 플랜 2 라이선스
- 고급 기능을 사용하도록 설정할 수 있는 권한
집계된 보고는 다음을 지원합니다.
- 클라이언트 버전: Windows 버전 2411 이상
- 운영 체제: Windows 11 22H2, Windows Server 2022, Windows 11 Enterprise, Windows 10 20H2, 21H1, 21H2, Windows Server 버전 20H2 및 Windows Server 2019
집계된 보고 켜기
집계된 보고를 켜려면 설정 > 엔드포인트 > 고급 기능으로 이동합니다. 집계된 보고 기능을 전환합니다.
집계된 보고가 켜져 있으면 집계된 보고서를 사용할 수 있는 데 최대 7일이 걸릴 수 있습니다. 그런 다음 기능이 켜진 후 새 데이터 쿼리를 시작할 수 있습니다.
집계된 보고를 끄면 변경 내용을 적용하는 데 몇 시간이 걸립니다. 이전에 수집된 모든 데이터는 그대로 유지됩니다.
집계된 보고서 쿼리
집계된 보고는 다음 이벤트 유형을 지원합니다.
작업 유형 | 고급 헌팅 테이블 | 디바이스 타임라인 프레젠테이션 | 속성 |
---|---|---|---|
FileCreatedAggregatedReport | DeviceFileEvents | {ProcessName}이(가) {Occurrences} {FilePath} 파일을 만들었습니다. | 1. 파일 경로 2. 파일 확장자 3. 프로세스 이름 |
FileRenamedAggregatedReport | DeviceFileEvents | {ProcessName}의 이름이 {Occurrences} {FilePath} 파일로 바뀌었습니다. | 1. 파일 경로 2. 파일 확장자 3. 프로세스 이름 |
FileModifiedAggregatedReport | DeviceFileEvents | {ProcessName}이(가) {Occurrences} {FilePath} 파일을 수정했습니다. | 1. 파일 경로 2. 파일 확장자 3. 프로세스 이름 |
ProcessCreatedAggregatedReport | DeviceProcessEvents | {InitiatingProcessName}이(가) {Occurrences} {ProcessName} 프로세스를 만들었습니다. | 1. 프로세스 명령줄 2를 시작합니다. 프로세스 SHA1 3을 시작합니다. 프로세스 파일 경로 4를 시작합니다. 명령줄 5를 처리합니다. SHA1 6을 처리합니다. 폴더 경로 |
ConnectionSuccessAggregatedReport | DeviceNetworkEvents | {InitiatingProcessName}이(가) {RemoteIP}:{RemotePort}를 사용하여 {Occurrences} 연결을 설정했습니다. | 1. 프로세스 이름 2를 시작합니다. 원본 IP 3. 원격 IP 4. 원격 포트 |
ConnectionFailedAggregatedReport | DeviceNetworkEvents | {InitiatingProcessName}이(가) {RemoteIP:RemotePort}를 사용하여 {Occurrences} 연결을 설정하지 못했습니다. | 1. 프로세스 이름 2를 시작합니다. 원본 IP 3. 원격 IP 4. 원격 포트 |
LogonSuccessAggregatedReport | DeviceLogonEvents | {Occurrences} {UserName}\{DomainName}의 {LogonType} 로그온 | 1. 대상 사용자 이름 2. 대상 사용자 SID 3. 대상 도메인 이름 4. 로그온 유형 |
LogonFailedAggregatedReport | DeviceLogonEvents | {Occurrences}{UserName}\{DomainName}에 의해 {LogonType} 로그온이 실패했습니다. | 1. 대상 사용자 이름 2. 대상 사용자 SID 3. 대상 도메인 이름 4. 로그온 유형 |
참고
집계된 보고를 켜면 신호 표시 유형이 향상되며, 엔드포인트용 Defender 고급 헌팅 테이블을 SIEM 또는 스토리지 솔루션으로 스트리밍하는 경우 더 높은 스토리지 비용이 발생할 수 있습니다.
집계된 보고서를 사용하여 새 데이터를 쿼리하려면 다음을 수행합니다.
- 조사 & 응답 > 헌팅 > 사용자 지정 검색 규칙으로 이동합니다.
- 집계된 보고의 영향을 받을 수 있는 기존 규칙 및 쿼리를 검토하고 수정합니다.
- 필요한 경우 새 작업 유형을 통합하는 새 사용자 지정 규칙을 만듭니다.
- 고급 헌팅 페이지로 이동하여 새 데이터를 쿼리합니다.
다음은 집계된 보고서가 있는 고급 헌팅 쿼리 결과의 예입니다.
샘플 고급 헌팅 쿼리
다음 KQL 쿼리를 사용하여 집계된 보고를 사용하여 특정 정보를 수집할 수 있습니다.
노이즈 프로세스 작업에 대한 쿼리
다음 쿼리는 악성 신호와 상관 관계가 있을 수 있는 노이즈 프로세스 작업을 강조 표시합니다.
DeviceProcessEvents
| where Timestamp > ago(1h)
| where ActionType == "ProcessCreatedAggregatedReport"
| extend uniqueEventsAggregated = toint(todynamic(AdditionalFields).uniqueEventsAggregated)
| project-reorder Timestamp, uniqueEventsAggregated, ProcessCommandLine, InitiatingProcessCommandLine, ActionType, SHA1, FolderPath, InitiatingProcessFolderPath, DeviceName
| sort by uniqueEventsAggregated desc
반복 로그인 시도 실패에 대한 쿼리
다음 쿼리는 반복된 로그인 시도 실패를 식별합니다.
DeviceLogonEvents
| where Timestamp > ago(30d)
| where ActionType == "LogonFailedAggregatedReport"
| extend uniqueEventsAggregated = toint(todynamic(AdditionalFields).uniqueEventsAggregated)
| where uniqueEventsAggregated > 10
| project-reorder Timestamp, DeviceId, uniqueEventsAggregated, LogonType, AccountName, AccountDomain, AccountSid
| sort by uniqueEventsAggregated desc
의심스러운 RDP 연결 쿼리
다음 쿼리는 악의적인 활동을 나타낼 수 있는 의심스러운 RDP 연결을 식별합니다.
DeviceNetworkEvents
| where Timestamp > ago(1d)
| where ActionType endswith "AggregatedReport"
| where RemotePort == "3389"
| extend uniqueEventsAggregated = toint(todynamic(AdditionalFields).uniqueEventsAggregated)
| where uniqueEventsAggregated > 10
| project-reorder ActionType, Timestamp, uniqueEventsAggregated
| sort by uniqueEventsAggregated desc