Microsoft Defender for Identity 센서 배포/구성
MDI 테스트를 위해 Microsoft Defender for Identity 센서 배포/구성 하려고 해요
저는 도메인 컨트롤러에 설치할 예정이에요
필수 구성 요소
필요한 라이선스
Enterprise Mobility + Security E5(EMS E5/A5)
Microsoft 365 E5(M365 E5/A5/G5)
Microsoft 365 E5/A5/G5 Security
Hyper-V의 경우 동적메모리 사용 X
성능 최적화를 위해 머신의 전원 옵션은 고성능으로 설정
아래 서버에 센서 설치 가능
Windows Server 2012 R2
Windows Server 2016
Windows Server 2019
Windows Server 2022
AD의 감사로그 활성화를 위해 그룹정책을 수정해주세요
https://learn.microsoft.com/ko-kr/defender-for-identity/configure-windows-event-collection
1) gpmc.msc 접속 후 Default Domain Controller Policy - EDIT
2) 그룹 정책 수정
특정한 이벤트 ID를 감사하기 위해 로그출력을 Enable 해준다고 생각하면 될 것 같아요
예를 들면 첫번째 정책인 계정 로그온과 같은 경우 아래와 같습니다
계정 로그온 자격 증명 유효성 검사 감사 4776 계정 관리 컴퓨터 계정 관리 감사 4741, 4743 계정 관리 메일 그룹 관리 감사 4753, 4763 계정 관리 보안 그룹 관리 감사 4728, 4729, 4730, 4732, 4733, 4756, 4757, 4758 계정 관리 사용자 계정 관리 감사 4726 DS 액세스 디렉터리 서비스 액세스 감사 4662 - 이 이벤트의 경우 개체 감사를 구성해야 합니다. DS 액세스 디렉터리 서비스 변경 감사 5136 시스템 보안 시스템 확장 감사 7045
Event ID 8004를 감사하기 위해 그룹 정책 수정
네트워크 보안: NTLM 제한: 원격 서버로 나가는 NTLM 트래픽 모두 감사 네트워크 보안: NTLM 제한: 이 도메인에서 NTLM 인증 감사 모두 사용 네트워크 보안: NTLM 제한: 들어오는 NTLM 트래픽 감사 모든 계정에 대해 감사 사용
개체 감사 구성
dsa.msc 접속 - 도메인 우 클릭 - [Properties] 클릭
Security 탭의 [Advanced] 클릭
[Auditing] - [Add] 클릭
Select Principal 클릭
Everyone 입력 후 OK
Applies to를 Descendant User Object로 변경
스크롤을 맨 아래로 내려 Clear All 클릭
이후 FullControl 체크 후 체크해제
ListConects, Read All Properties, Read Permissions 체크 해제 해주세요
위와 동일한 작업을 Applies To의 아래 4개의 유형에도 동일하게 진행해주세요
Descendant Group Objects
Descendant Computer Objects
Descendant msDS-GroupManagedServiceAccount Objects
Descendant msDS-ManagedServiceAccount Objects
서비스 계정 생성
센서가 설치된 이후 LocalSystem 계정이 아닌 gMSA 계정 사용을 위해서 서비스 계정을 생성하려고 해요 Microsoft에서 권장하는 설정이에요 ## 서비스 계정 생성 ## # Set the variables: $gMSA_AccountName = 'MDI_SVC' $gMSA_HostsGroupName = 'MDI_Svc_Group' $gMSA_HostNames = 'ADDC01' # Import the required PowerShell module: Import-Module ActiveDirectory # Create the group and add the members $gMSA_HostsGroup = New-ADGroup -Name $gMSA_HostsGroupName -GroupScope Global -PassThru $gMSA_HostNames | ForEach-Object { Get-ADComputer -Identity $_ } | ForEach-Object { Add-ADGroupMember -Identity $gMSA_HostsGroupName -Members $_ } # Or, use the built-in 'Domain Controllers' group if the environment is a single forest, and will contain only domain controller sensors $gMSA_HostsGroup = Get-ADGroup -Identity 'Domain Controllers' Add-KdsRootKey –EffectiveTime ((get-date).addhours(-10)) # Create the gMSA: New-ADServiceAccount -Name $gMSA_AccountName -DNSHostName '$gMSA_AccountName.$env:USERDNSDOMAIN' ` -PrincipalsAllowedToRetrieveManagedPassword $gMSA_HostsGroupName ## 서비스 계정에 권한 할당 ## # Declare the identity that you want to add read access to the deleted objects container: $Identity = 'MDI_SVC' # If the identity is a gMSA, first to create a group and add the gMSA to it: $groupName = 'MDI_Svc_Group' $groupDescription = 'Members of this group are allowed to read the objects in the Deleted Objects container in AD' if(Get-ADServiceAccount -Identity $Identity -ErrorAction SilentlyContinue) { $groupParams = @{ Name = $groupName SamAccountName = $groupName DisplayName = $groupName GroupCategory = 'Security' GroupScope = 'Universal' Description = $groupDescription } $group = New-ADGroup @groupParams -PassThru Add-ADGroupMember -Identity $group -Members ('{0}$' -f $Identity) $Identity = $group.Name } # Get the deleted objects container's distinguished name: $distinguishedName = ([adsi]'').distinguishedName.Value $deletedObjectsDN = 'CN=Deleted Objects,{0}' -f $distinguishedName # Take ownership on the deleted objects container: $params = @("$deletedObjectsDN", '/takeOwnership') C:\Windows\System32\dsacls.exe $params # Grant the 'List Contents' and 'Read Property' permissions to the user or group: $params = @("$deletedObjectsDN", '/G', ('{0}\{1}:LCRP' -f ([adsi]'').name.Value, $Identity)) C:\Windows\System32\dsacls.exe $params # To remove the permissions, uncomment the next 2 lines and run them instead of the two prior ones: # $params = @("$deletedObjectsDN", '/R', ('{0}\{1}' -f ([adsi]'').name.Value, $Identity)) # C:\Windows\System32\dsacls.exe $params ## gMSA 계정 설치 및 확인 ## # Import the required PowerShell module: Import-Module ActiveDirectory # Install the gMSA account Install-ADServiceAccount -Identity 'MDI_Svc' Test-ADServiceAccount -Identity 'MDI_Svc' 그룹 정책에서 서비스 계정 추가 Domain Controller를 제외한 모든 컴퓨터에 SAM-R 필수 권한을 구성 해주세요 아래와 같이 그룹 정책을 구성하여 서비스 계정을 추가해주세요 |
Microsoft Defender for Identity 센서 배포 - 1) 센서 다운로드
Microsoft 365 Defender 접속 - [설정] - [ID] 클릭
[센서 추가] 클릭
[설치 관리자 다운로드]를 클릭하여 zip파일을 저장하고
액세스 키를 복사하여 보관 합니다.
설치 관리자 다운로드에는 아래와 같은 파일이 포함 된다고 하네요
Defender for Identity 센서 설치 관리자
Defender for Identity 클라우드 서비스에 연결하는 데 필요한 정보가 포함된 구성 설정 파일
해당 Zip파일을 Domain Controller에 복사 해주세요
Microsoft Defender for Identity 센서 배포 - 2) 센서 설치
필수 구성 요소
.Net Framework 4.7 이상 필요
없는 경우 센서 패키지가 .Net Framework를 설치하므로 재부팅 필요
ZIP 압축을 풀어주시고 Setup파일을 실행해주세요
Next
Next
Domain Controller에 설치하는 경우 : Sensor
전용 서버에 설치하는 경우 : Standalone Sensor
ADFS에 설치하는 경우 : ADFS Sensor
자동 선택 된다고 하네요
설치 경로는 기본값, 액세스키 붙여넣기 후 Install
설치 완료!
Microsoft Defender for Identity 센서 배포 - 3) 센서 구성
Microsoft 365 Defender 에서 확인해보니 센서가 바로 업데이트 되었어요
센서의 현 상태를 볼 수 있구요
Microsoft 365 Defender에 생성한 계정을 추가할꺼에요 [자격 증명 추가] 클릭해주세요
자격 증명을 입력하고 저장을 눌러주세요
설치하는 과정은 딱히 어려운 부분은 없었던 것 같고
이제 실제로 동작 부분에 대한 테스트가 필요할 것 같아요
'Microsoft Cloud Service > Security&EMS' 카테고리의 다른 글
[MDO] 전자 메일 인증 구성 (SPF, DKIM, DMARC) (0) | 2023.11.30 |
---|---|
[MDI] Honey Token 테스트 및 구성 (0) | 2023.11.22 |
MFA 초기화 및 사용자 MFA 등록 정보 확인하기 (0) | 2023.11.09 |
조건부 엑세스 - MFA 배포 하기 (0) | 2023.11.09 |
[AIP] 레이블 구성 및 배포 하기 (사내에서만 볼 수 있는 정책/사내한) (2) | 2023.11.08 |