Bu rehberde Microsoft Learn belgelerini temel alarak ASR kurallarını audit modundan block moduna güvenle taşımayı, PowerShell, Group Policy ve Intune ile dağıtımı, istisnaları ve olay izlemeyi adım adım ele alıyoruz.
1. Gereksinimler
ASR kuralları bir Microsoft Defender Antivirus özelliğidir ve Defender Antivirus içeren her Windows sürümünde (Windows 11 Home dahil) PowerShell veya Group Policy ile yerel olarak yapılandırılabilir. Intune, Configuration Manager ve Defender portalı üzerinden merkezi yönetim, raporlama ve uyarı için Defender for Endpoint gerekir. Kuralların çalışması için:
- Microsoft Defender Antivirus birincil antivirüs olarak Active modda çalışmalı; pasif modda ASR kuralları işlemez.
- Gerçek zamanlı koruma açık olmalı.
- Bazı kurallar için bulut tabanlı koruma (cloud-delivered protection) zorunludur: yaygınlık/yaş kriteri kuralı, gizlenmiş script kuralı ve gelişmiş fidye yazılımı koruması bunlardandır.
2. Kural modları
Her kural için ayrı mod atanır. PowerShell, GPO ve CSP aynı sayısal değerleri kullanır:
| Kod | Mod | Davranış |
|---|---|---|
| 0 | Off / Disabled | Kural kapalı |
| 1 | Block / Enabled | Davranış engellenir, Event ID 1121 yazılır |
| 2 | Audit / AuditMode | Engellenmez, yalnızca kaydedilir (Event ID 1122) |
| 5 | Not configured | Kural yapılandırılmamış |
| 6 | Warn | Engellenir ama kullanıcı bildirimden engeli kaldırabilir (Event ID 1129) |
"Block credential stealing from the Windows local security authority subsystem" ve "Block Office applications from injecting code into other processes" kuralları Warn modunu desteklemez.
3. Standart koruma kuralları
Microsoft üç kuralı "standard protection" olarak sınıflandırır ve bunların genellikle test etmeden Block veya Warn modunda açılabileceğini belirtir:
- Block abuse of exploited vulnerable signed drivers: Uygulamaların savunmasız imzalı sürücüleri diske kaydetmesini engeller; zaten yüklü sürücülerin yüklenmesini engellemez.
- Block credential stealing from LSASS: LSASS süreç belleğine erişimi kilitler. LSA koruması ve Credential Guard açıksa bu kural ek koruma sağlamaz.
- Block persistence through WMI event subscription: WMI olay abonelikleriyle dosyasız kalıcılığı engeller. Configuration Manager istemcisi WMI'a yoğun bağımlı olduğu için bu ortamlarda önce Audit modunda kapsamlı test önerilir.
4. Öne çıkan kurallar ve GUID'leri
Aşağıdaki GUID'ler Microsoft Learn ASR kural referansından alınmıştır:
| Kural | GUID | Ne engeller |
|---|---|---|
| Block all Office applications from creating child processes | d4f940ab-401b-4efc-aadc-ad5f3c50688a | Word, Excel, PowerPoint gibi uygulamaların alt süreç açması |
| Block Office applications from creating executable content | 3b576869-a4ec-4529-8536-b80a7769e899 | Makroların diske çalıştırılabilir bileşen yazması |
| Block Office applications from injecting code into other processes | 75668c1f-73b5-4cf0-bb93-3ecf5cb7cc84 | Office'ten diğer süreçlere kod enjeksiyonu |
| Block executable content from email client and webmail | be9ba2d9-53ea-4cdc-84e5-9b1eeee46550 | E-postadan gelen exe, script ve arşiv dosyalarının çalışması |
| Block JavaScript or VBScript from launching downloaded executable content | d3e037e1-3eb8-44c8-a917-57927947596d | Betiklerin indirilen yükleri başlatması |
| Block execution of potentially obfuscated scripts | 5beb7efe-fd9a-4556-801d-275e5ffc04cc | Gizlenmiş PowerShell ve diğer script'ler |
| Block process creations originating from PSExec and WMI commands | d1e49aac-8f56-4280-b9ba-993a6d77406c | PsExec ve WMI ile uzaktan süreç başlatma |
| Block untrusted and unsigned processes that run from USB | b2b3f03d-6a65-4f7b-a9c7-1c7ef74a9ba4 | USB'den imzasız dosyaların çalışması |
| Use advanced protection against ransomware | c1db55ab-c21a-4637-bb3f-a12568109d35 | Fidye yazılımına benzeyen, henüz itibarı olmayan dosyalar |
5. PowerShell ile yapılandırma
Komutlar yönetici olarak açılmış PowerShell oturumunda çalıştırılır. Dikkat: Set-MpPreference mevcut tüm kural listesinin üzerine yazar. Var olan ayarları bozmadan kural eklemek için Add-MpPreference, kaldırmak için Remove-MpPreference kullanılır; sözdizimi aynıdır.
Üç standart koruma kuralını Block, iki Office kuralını Audit modunda eklemek:
CODE TERMINAL
Add-MpPreference -AttackSurfaceReductionRules_Ids 56a863a9-875e-4185-98a7-b882c64b5ce5,9e6c4e1f-7d60-472f-ba1a-a39ef669e4b2,e6db77e5-3df2-4cf1-b95a-636979351e5b -AttackSurfaceReductionRules_Actions Enabled,Enabled,Enabled
Add-MpPreference -AttackSurfaceReductionRules_Ids d4f940ab-401b-4efc-aadc-ad5f3c50688a,3b576869-a4ec-4529-8536-b80a7769e899 -AttackSurfaceReductionRules_Actions AuditMode,AuditModeCihazdaki geçerli kural ve modları listelemek:
CODE TERMINAL
$p = Get-MpPreference
0..([math]::Min($p.AttackSurfaceReductionRules_Ids.Count,$p.AttackSurfaceReductionRules_Actions.Count)-1) | % {[pscustomobject]@{Id=$p.AttackSurfaceReductionRules_Ids[$_];Action=$p.AttackSurfaceReductionRules_Actions[$_]}} | Format-Table -AutoSizeIntune veya Configuration Manager gibi bir yönetim aracı kullanılıyorsa, bu araçlar başlangıçta çakışan yerel PowerShell ayarlarının üzerine yazar.
6. Group Policy ve Intune ile dağıtım
Group Policy: Computer configuration > Administrative templates > Windows components > Microsoft Defender Antivirus > Microsoft Defender Exploit Guard > Attack Surface Reduction yolundaki "Configure Attack Surface Reduction rules" ayarı etkinleştirilir. Değer adı olarak kural GUID'i, değer olarak mod kodu (0, 1, 2, 5, 6) girilir. Değerlerde tırnak veya boşluk desteklenmez.
Intune: Önerilen yöntem Endpoint security > Attack surface reduction altında Windows platformu ve "Attack Surface Reduction Rules" profiliyle politika oluşturmaktır. Politika kullanıcı gruplarına değil, Entra cihaz gruplarına atanmalıdır. Alternatif olarak özel profil ve şu OMA-URI kullanılabilir:
CODE TERMINAL
OMA-URI : ./Vendor/MSFT/Policy/Config/Defender/AttackSurfaceReductionRules
Tür : String
Değer :
d4f940ab-401b-4efc-aadc-ad5f3c50688a=2
3b576869-a4ec-4529-8536-b80a7769e899=1
be9ba2d9-53ea-4cdc-84e5-9b1eeee46550=1Aynı kural hem GPO hem MDM ile yapılandırılırsa varsayılan olarak Group Policy kazanır. MDM'in öncelik alması için MDMWinsOverGP ayarı (./Device/Vendor/MSFT/Policy/Config/ControlPolicyConflict/MDMWinsOverGP = 1) yalnızca Policy CSP ile verilebilir; GPO veya PowerShell karşılığı yoktur.
7. İstisnalar
Audit döneminde meşru bir iş uygulaması kurala takılıyorsa istisna tanımlanır. İki düzey vardır:
- Global ASR istisnası tüm kurallara uygulanır ve PowerShell, GPO, Intune ile verilebilir.
- Kural bazlı istisna yalnızca tek kuralı etkiler; Intune/Defender portalı politikaları ve GPO'daki "Apply a list of exclusions to specific attack surface reduction (ASR) rules" ayarıyla (24H2 veya üzeri yönetim şablonları gerekir) tanımlanır.
CODE TERMINAL
Add-MpPreference -AttackSurfaceReductionOnlyExclusions "C:\Data\LOBApp\app1.exe"
(Get-MpPreference).AttackSurfaceReductionOnlyExclusionsKlasör yerine mümkün olduğunca tam dosya yolu kullanın; Microsoft da GPO'da belirli bir dosyayı dışlamayı önerilen yöntem olarak gösterir. Global istisna dosyayı tüm kurallardan muaf tuttuğu için tek kurala takılan uygulamada kural bazlı istisna daha güvenlidir.
8. Olay izleme ve Advanced Hunting
ASR olayları Event Viewer'da Applications and Services Logs > Microsoft > Windows > Windows Defender > Operational günlüğündedir:
| Event ID | Anlamı |
|---|---|
| 1121 | Kural Block modunda tetiklendi |
| 1122 | Kural Audit modunda tetiklendi |
| 1129 | Kullanıcı Warn modunda engeli kaldırdı |
| 5007 | Ayar değiştirildi |
5007 olayları, saldırganın veya yetkisiz bir yöneticinin ASR ayarlarını değiştirmesini yakalamak için de izlenmelidir.
Defender XDR Advanced Hunting'de audit tetiklenmelerini listelemek için:
CODE TERMINAL
DeviceEvents
| where ActionType startswith "Asr"
| where ActionType endswith "Audited"
| summarize Olay = count(), Cihaz = dcount(DeviceId) by ActionType, FileName, FolderPath
| order by Olay descHer kuralın kendi ActionType çifti vardır; örneğin AsrObfuscatedScriptAudited / AsrObfuscatedScriptBlocked veya AsrOfficeChildProcessAudited / AsrOfficeChildProcessBlocked. Block moduna geçiş sonrası aynı sorguyu "Blocked" sonekiyle çalıştırarak etkiyi ölçebilirsiniz.
9. Aşamalı geçiş planı
- Üç standart koruma kuralını Block moduna alın (Configuration Manager ortamında WMI kuralını önce Audit'te test edin).
- Diğer kuralları Audit modunda açın ve en az bir iş döngüsü boyunca 1122 olaylarını ve Advanced Hunting sonuçlarını toplayın.
- Her tetiklenmeyi sınıflandırın: zararsız iş uygulaması mı, gerçek şüpheli davranış mı? Gerekiyorsa dosya bazlı, kural bazlı istisna ekleyin.
- Küçük bir pilot cihaz grubunu Block veya Warn moduna geçirin, kullanıcı geri bildirimini izleyin.
- Sorun yoksa kademeli olarak tüm filoya genişletin ve 5007 ile 1121 olaylarını düzenli raporlayın.
LSASS kuralı için özel not: Microsoft, bu kuralın çok sayıda ve neredeyse tamamı zararsız audit olayı ürettiğini, audit değerlendirmesinin atlanıp küçük bir cihaz grubuyla doğrudan Block'a geçilebileceğini belirtiyor.
10. Sık yapılan hatalar
- Set-MpPreference ile tek kural eklemeye çalışıp mevcut tüm kural listesini silmek.
- Merkezi yönetim varken cihazda PowerShell ile ayar yapıp değişikliğin neden kalıcı olmadığını anlamamak.
- Aynı kuralı GPO ve Intune'da farklı modlarla tanımlamak.
- Bulut koruması kapalıyken bulut bağımlı kuralları açmak.
- Defender for Endpoint ile yönetilen ortamda "Block Webshell creation for Servers" kuralını GPO'da Enabled veya Disabled yapmak; Microsoft bu kuralın yerel ayarlarda Not Configured bırakılmasını istiyor.
- Tek bir uygulama için geniş klasör istisnası tanımlayıp saldırganlara güvenli bir çalışma alanı bırakmak.
Kaynaklar: ASR rules overview, ASR rules reference, Configure ASR rules and exclusions, ASR events in Windows Event Viewer
TR Siber Ekibi