9
Defense & Detection: Hardening dan Patch
README menempatkan bagian Defense & Detection sebagai pasangan defensif dari seluruh TTP ofensif yang dibahas di dokumen ini: sasarannya adalah mitigasi, deteksi, dan pencegahan (README.md:5-61). Bagian itu terdaftar di daftar isi (README.md:152) dan dibuka oleh daftar tool serta script pendukung (README.md:441). Setelah itu ada Active Directory Security Checks yang menyusun rekomendasi per lapisan yang dilindungi (README.md:478-479), lalu tabel Important Security Updates berisi CVE yang wajib dipatch (README.md:544-545).
Halaman ini membahas dua hal terakhir: kontrol hardening per lapisan dan daftar patch. Sisi deteksi dibahas di Deteksi Berbasis Event ID dan Sysmon. Katalog tool dan sumber belajar dibahas di Tool, Cheat Sheet, dan Sumber Belajar.
Kontrol bertingkat dari identitas ke domain controller
Urutan bagian di Active Directory Security Checks membentuk lapisan yang jelas, dari identitas admin sampai logging terpusat (README.md:478-4794). Diagram berikut memakai urutan yang sama, sehingga satu kontrol selalu bisa ditelusuri kembali ke bagiannya.
graph TD
checks["Security Pro's Checks"] --> admin["Protect Admin Credentials"]
admin --> adadmin["Protect AD Admin Credentials"]
adadmin --> sa["Protect Service Account Credentials"]
sa --> res["Protect Resources"]
res --> dc["Protect Domain Controllers"]
res --> ws["Protect Workstations and Servers"]
dc --> log["Logging"]
ws --> log
log --> siem["SIEM / central log server"]
style checks fill:#2d7d46,color:#fff
style admin fill:#f59e0b,color:#000
style adadmin fill:#f59e0b,color:#000
style sa fill:#f59e0b,color:#000
style res fill:#2d7d46,color:#fff
style dc fill:#dc2626,color:#fff
style ws fill:#2d7d46,color:#fff
style log fill:#8b5cf6,color:#fff
style siem fill:#336791,color:#fff
%% fig: Lapisan hardening dari identitas sampai domain controller
%% desc: Rekomendasi README disusun berlapis, dari identitas admin, service account, resource, domain controller, workstation, sampai logging terpusat.Warna diagram memisahkan peran tiap lapisan. Domain controller diberi warna bahaya karena merupakan target akhir rantai serangan, sedangkan logging dan penyimpanan log terpusat diberi warna berbeda karena berperan sebagai sumber bukti, bukan pencegah.
| Lapisan | Bagian di README | Kontrol utama |
|---|---|---|
| Identitas admin | Protect Admin Credentials | tidak ada akun user atau komputer di grup admin, setiap akun admin sensitive & cannot be delegated, dan akun admin masuk grup Protected Users (README.md:492-4966) |
| Identitas AD admin | Protect AD Admin Credentials | batasi keanggotaan DA, EA, dan Schema Admins, pakai custom delegation group, serta terapkan tiered administration (README.md:498-5027) |
| Service account | Protect Service Account Credentials | pakai managed service account atau password lebih dari 20 karakter, terapkan FGPP, dan batasi kemampuan logon (README.md:504-5098) |
| Resource | Protect Resources | segmentasi jaringan, IDS untuk jaringan internal, dan jaringan terpisah untuk perangkat jaringan serta OOB management (README.md:511-5149) |
| Domain controller | Protect Domain Controllers | hanya software pendukung AD, patch sebelum DCPromo, dan validasi scheduled task serta script (README.md:516-52010) |
| Workstation dan server | Protect Workstations (& Servers) | patch cepat, WDigest bernilai 0, AppLocker, dan EMET (README.md:522-52711) |
| Logging | Logging | enhanced auditing, PowerShell module logging, dan SIEM (README.md:529-53512) |
Baseline umum dan pemeriksaan rutin
General Recommendations memuat baseline lintas lapisan (README.md:480-49013). Baseline itu mencakup pengelolaan password local Administrator dengan LAPS, RDP Restricted Admin mode, penghapusan OS yang tidak didukung, pemantauan scheduled task di sistem sensitif seperti DC, serta penggunaan SMB v2/v3 atau lebih baru (README.md:480-49013). Bagian yang sama meminta pencabutan trust yang tidak lagi diperlukan disertai SID filtering, pemblokiran akses internet untuk DC dan server, dan penggantian password Administrator default domain serta KRBTGT setiap tahun dan saat admin AD keluar (README.md:480-49013).
Security Pro's Checks menutup bagian itu dengan pekerjaan validasi (README.md:537-54214). Yang diperiksa adalah siapa yang memiliki hak admin AD pada level domain dan forest, siapa yang dapat logon ke domain controller termasuk hak admin pada lingkungan virtualisasi yang menjalankan DC virtual, dan apakah ada custom permission yang tidak semestinya pada domain, OU, AdminSDHolder, serta GPO (README.md:537-54214). Pemeriksaan juga mencakup kebiasaan admin AD yang tidak boleh logon ke workstation tidak tepercaya dan pembatasan hak service account yang saat ini setara DA (README.md:537-54214).
⚠️ Grup
Protected Usershanya memberi perlindungan domain bila tersedia Domain Controller Windows Server 2012 R2 dan DFL 2012 R2 (README.md:49515). Tanpa prasyarat itu, rekomendasi ini tidak berjalan sesuai harapan.
Detail kontrol yang mudah salah kutip
Beberapa nilai di README ditulis apa adanya dan rawan disalin keliru. Kebijakan autentikasi ditulis sebagai Send NTLMv2 response onlyrefuse LM & NTLM tanpa pemisah di antara kedua perintah (README.md:48916). Path registry WDigest juga tampil tanpa pemisah backslash, yaitu HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersWdigest, dengan nilai yang harus diatur ke 0 pada Windows 8.1/2012 R2 atau lebih baru bersama KB2871997 (README.md:52517).
Kontrol di lapisan workstation bergantung pada dua hal yang sering dilewati. AppLocker dipakai untuk memblokir eksekusi kode di folder pengguna seperti home directory dan profile path, sedangkan EMET dipakai untuk meredam exploit memori aplikasi termasuk 0-day (README.md:522-52711). Keduanya hanya menutup jalur eksekusi, bukan menggantikan patch.
Patch wajib dan urutannya
Satu aturan urutan di README bersifat mutlak: patch dipasang sebelum DCPromo, terutama MS14-068 dan patch kritis lain (README.md:51918). Domain controller yang dipromosikan tanpa patch kritis langsung lahir dalam keadaan rentan.
graph LR
m14068["Patch MS14-068 / CVE-2014-6324"] --> promote["DCPromo"]
critical["Patch kritis lain"] --> promote
promote --> dc["Domain Controller"]
style m14068 fill:#2d7d46,color:#fff
style critical fill:#2d7d46,color:#fff
style promote fill:#f59e0b,color:#000
style dc fill:#dc2626,color:#fff
%% fig: Urutan patch sebelum promosi domain controller
%% desc: Patch kritis dipasang lebih dahulu, baru DCPromo dijalankan, sehingga domain controller tidak beroperasi dalam keadaan rentan.Tabel Important Security Updates memuat sembilan CVE yang dianggap penting untuk lingkungan AD (README.md:544-5455). Ringkasan berikut menjaga judul dan penyebabnya tetap sesuai sumber.
| CVE | Judul | Alasan wajib dipatch |
|---|---|---|
| CVE-2020-1472 | Netlogon Elevation of Privilege Vulnerability | penyerang membangun koneksi Netlogon secure channel yang rentan ke domain controller lewat MS-NRPC lalu menjalankan aplikasi khusus di perangkat jaringan (README.md:54719) |
| CVE-2019-1040 | Windows NTLM Tampering Vulnerability | penyerang man-in-the-middle melewati proteksi NTLM MIC (Message Integrity Check) (README.md:54820) |
| CVE-2019-0683 | Active Directory Elevation of Privilege Vulnerability | setelan default pada forest trust memungkinkan penyerang di trusting forest meminta delegasi TGT milik identitas dari trusted forest (README.md:54921) |
| CVE-2019-0708 | Remote Desktop Services Remote Code Execution Vulnerability | penyerang tanpa autentikasi mengirim request khusus ke layanan RDP (README.md:55022) |
| CVE-2018-8581 | Microsoft Exchange Server Elevation of Privilege Vulnerability | eskalasi hak pada Microsoft Exchange Server (README.md:55123) |
| CVE-2017-0143 | Windows SMB Remote Code Execution Vulnerability | server SMBv1 pada sejumlah versi Windows mengeksekusi kode lewat paket yang dibentuk khusus (README.md:55224) |
| CVE-2016-0128 | Windows SAM and LSAD Downgrade Vulnerability (BADLOCK) | implementasi SAM dan LSAD tidak membangun RPC channel dengan benar sehingga memungkinkan protocol-downgrade (README.md:55325) |
| CVE-2014-6324 | Vulnerability in Kerberos Could Allow Elevation of Privilege (MS14-068) | KDC menerima tanda tangan palsu di dalam tiket sehingga user domain memperoleh hak domain administrator (README.md:55426) |
| CVE-2014-1812 | Vulnerability in Group Policy Preferences could allow elevation of privilege (MS14-025, KB2962486) | distribusi password lewat Group Policy Preferences di SYSVOL membocorkan kredensial (README.md:55527) |
Sisi ofensif dari CVE di tabel ini, termasuk Zerologon, MS14-068, dan password di GPP, dijelaskan di Kerentanan CVE dan Salah Konfigurasi. Patch menutup jalurnya, tetapi data lama di SYSVOL tetap harus dibersihkan setelah MS14-025 dipasang (README.md:55527).
Logging sebagai kontrol, bukan pelengkap
Logging menuntut enhanced auditing dan setelan Audit: Force audit policy subcategory settings (Windows Vista or later) to override audit policy category settings (README.md:529-53512). Bagian itu juga meminta PowerShell module logging dengan wildcard *, CMD process logging beserta enhancement KB3004375, pengiriman log ke central log server lewat WEF atau metode lain, serta SIEM dan sistem User Behavioural Analysis seperti Microsoft ATA (README.md:529-53512).
Nilai kontrol ini bergantung pada ketahanan log itu sendiri. README mendokumentasikan sejumlah teknik bypass untuk ScriptBlock logging dan AMSI di Defense Evasion, jadi logging harus diperlakukan sebagai lapisan bukti yang bisa diserang, bukan sebagai jaminan.
Tool pendukung hardening
Sebagian tool di bagian Tools & Scripts langsung dipakai untuk mengukur dan memperbaiki konfigurasi, bukan untuk menyerang (README.md:4413).
| Tool | Fungsi menurut README |
|---|---|
| Invoke-TrimarcADChecks | mengumpulkan data dari satu domain AD forest untuk Active Directory Security Assessment (ADSA) (README.md:44328) |
| Create-Tiers in AD | auto deployment tier di lingkungan AD (README.md:44429) |
| SAMRi10 | hardening SAM remote access pada Windows 10/Server 2016 (README.md:44530) |
| Net Cease | hardening net session enumeration (README.md:44631) |
| PingCastle | menilai level keamanan AD dengan metodologi risk assessment dan maturity framework (README.md:44732) |
| Locksmith | menemukan dan memperbaiki salah konfigurasi umum pada Active Directory Certificate Services (README.md:46933) |
| Reset the krbtgt account password/keys | mereset password dan key akun krbtgt dengan risiko gangguan autentikasi Kerberos yang ditekan (README.md:44934) |
Script reset krbtgt menjadi bagian dari pemulihan setelah serangan tiket, yang mekanismenya dibahas di Persistence. Tool pemantauan seperti DCSYNCMonitor dan Sysmon beserta konfigurasinya dibahas di Deteksi Berbasis Event ID dan Sysmon.
⚠️ Reset password krbtgt mengganggu autentikasi Kerberos yang sedang berjalan. Lakukan pada jendela perubahan yang disetujui, bukan saat jam sibuk.