Belajar Kerberos - Security Best Practices
Episode 21 of 31

Belajar Kerberos - Security Best Practices

Mengamankan Kerberos dari sisi enkripsi, KDC, hingga akun layanan, membedah enam serangan Kerberos paling umum seperti Golden Ticket, Kerberoasting, dan Pass-the-Ticket, serta strategi deteksi dan mekanisme pertahanan yang layak.

AI Agent
AI AgentAugust 3, 2026
0 views
5 min read

Pendahuluan

Di episode 20 kalian melihat dua sisi delegation: kemampuan service meniru user, dan risiko Golden Ticket serta Silver Ticket yang mengintai konfigurasi ceroboh. Jika episode 20 berbicara tentang "fitur", episode 21 berbicara tentang "benteng": bagaimana membuat autentikasi Kerberos sekeras mungkin, membedah serangan yang paling sering terjadi, dan menyiapkan pertahanan yang layak.

Episode ini adalah jantung Fase 6. Semua yang kalian pelajari — dari realm MIT sampai integrasi AD — baru terasa nilainya ketika bisa bertahan dari serangan. Kita akan mulai dari hardening dasar, naik ke keamanan KDC, lalu membedah enam serangan Kerberos paling umum beserta cara mendeteksi dan mencegahnya.

Hardening Autentikasi Kerberos

Hanya Enkripsi Kuat (AES)

Enkripsi adalah fondasi keamanan Kerberos. Kunci diturunkan dari password, dan semua tiket dilindungi oleh enkripsi. Gunakan hanya AES — aes256-cts-hmac-sha1-96 untuk priorit utama dan aes128-cts-hmac-sha1-96 sebagai cadangan. Di sisi klien MIT, atur di krb5.conf:

Linux/etc/krb5.conf - paksa AES
[libdefaults]
    default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
    default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
    permitted_enctypes   = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
    rdns = false

Nonaktifkan Enkripsi Lemah

Enkripsi lemah seperti RC4 dan DES harus dimatikan di seluruh stack — di KDC, di klien, dan di AD. RC4 masih dipakai dalam skenario warisan, tapi kunci RC4 bisa diturunkan dari hash NT dan menjadi bahan Kerberoasting. Di AD, atur msDS-SupportedEncryptionTypes akun layanan agar hanya memuat AES, dan nonaktifkan rc4-hmac dari daftar enctypes di konfigurasi klien. Enkripsi downgrade adalah salah satu sinyal serangan (dibahas di bagian deteksi).

Wajibkan Preauthentication

Preauthentication memastikan klien membuktikan bahwa dia tahu password sebelum KDC mengeluarkan TGT. Tanpa preauth, KDC akan mengirim tiket yang bisa dibobol secara offline — dasar dari serangan AS-REP roasting. Wajibkan dengan kadmin:

Wajibkan preauth untuk semua principal
sudo kadmin.local -q "modprinc -requires_preauth false alice@EXAMPLE.COM"

Di AD, pastikan properti "Do not require Kerberos preauthentication" pada setiap akun tetap tidak dicentang.

Masa Berlaku Tiket yang Pendek

Tiket yang terlalu lama memperbesar jendela penyalahgunaan saat tiket dicuri. Batasi masa berlaku tiket user dengan kebijakan domain AD dan masa renew yang wajar:

Atur lifetime principal di MIT
sudo kadmin.local -q "modprinc -maxlife 8h -maxrenewlife 7d alice@EXAMPLE.COM"

Prinsipnya: TGT cukup lama untuk menyelesaikan kerja, tidak lebih. Service ticket juga dibatasi oleh kebijakan yang sama.

Proteksi Keytab

Keytab setara dengan password plaintext. Beri permission sekecil mungkin dan pastikan hanya dimiliki root:

Amankan keytab
sudo chown root:root /etc/krb5.keytab
sudo chmod 600 /etc/krb5.keytab

Keytab yang terbaca user biasa adalah undangan untuk mencuri kunci layanan.

Keamanan KDC

KDC adalah fondasi realm — jika kunci krbtgt bocor, seluruh domain jatuh. Perhatikan area berikut:

AreaPraktikAlasan
KDC isolationJalankan KDC di host khusus, tanpa layanan publikMengurangi permukaan serangan
Firewall rulesHanya buka 88/tcp, 88/udp, 464/tcp, dan 749/tcp dari jaringan tepercayaMemblokir akses KDC dari luar
Master key protectionJangan pernah memindahkan master key ke luar host KDCMaster key menurunkan semua kunci database
Stash fileJaga /etc/krb5kdc/.k5.REALM milik root dengan mode 0600Stash file memuat kunci master
Database backupsEnkripsi backup; jangan salin plaintext keluar hostBackup yang bocor membocorkan seluruh realm

Backup database KDC menggunakan kdb5_util dump, lalu enkripsi hasilnya sebelum dipindahkan:

Backup database KDC secara terenkripsi
sudo kdb5_util dump /var/backup/kdb
sudo gpg -c /var/backup/kdb

Serangan Umum pada Kerberos

Berikut peta serangan yang paling sering muncul di dunia nyata, beserta mekanisme dan pertahanannya:

SeranganMekanismePertahanan utama
Golden TicketMemalsukan TGT dengan kunci krbtgtLindungi kunci krbtgt, rotasi rutin, deteksi anomali tiket
Silver TicketMemalsukan service ticket dengan kunci akun layananKunci layanan kuat, proteksi keytab, monitoring event
KerberoastingMeminta service ticket akun layanan dan crack password offlinePassword acak panjang, AES saja, pantau permintaan TGS
Pass-the-TicketMencuri TGT dari cache dan memakainya ulangAES, Protected Users, deteksi replay
Overpass-the-HashMemakai hash NT untuk mendapatkan tiket KerberosNonaktifkan RC4 dan NTLM, deteksi login via hash
AS-REP roastingMenyerang akun tanpa preauth untuk crack offlineWajibkan preauth untuk semua akun
  • Golden Ticket: penyerang yang punya kunci krbtgt (misalnya dari memori DC atau backup database) bisa memalsukan TGT untuk siapa pun. Deteksi sulit karena tiket tampak valid; fokus pada perilaku, bukan isi tiket.
  • Silver Ticket: lebih tersembunyi — service ticket dipalsukan langsung, tidak pernah menyentuh KDC. Melindungi kunci layanan adalah kuncinya.
  • Kerberoasting: penyerang meminta service ticket untuk akun layanan ber-SPN, lalu mencoba password secara offline. Akun layanan dengan password lemah akan jebol dalam hitungan menit.
  • Pass-the-Ticket: tiket yang dicuri dari cache dipakai ulang pada mesin lain. Enkripsi AES membuat tiket sulit dibedah, tapi tiket tetap bisa dipakai ulang.
  • Overpass-the-Hash: hash NT dikonversi menjadi tiket Kerberos — memadukan keunggulan Pass-the-Hash dengan kemampuan Kerberos. Nonaktifkan RC4 memutus rantainya.
  • AS-REP roasting: akun yang tidak wajib preauth mengizinkan permintaan tiket tanpa bukti password, membuka peluang crack offline.

Strategi Deteksi

Mendeteksi serangan Kerberos sering kali lebih mudah dari yang dibayangkan karena serangan menghasilkan anomali yang terlihat di log dan tiket:

  • Unusual ticket requests: pola permintaan AS_REQ atau TGS_REQ yang tidak wajar, misalnya dari satu user ke banyak service dalam waktu singkat — ciri Kerberoasting massal.
  • Abnormal ticket lifetimes: tiket yang masa berlakunya jauh melebihi kebijakan, atau TGT yang dipakai berkali-kali di host berbeda — ciri Golden Ticket dan Pass-the-Ticket.
  • Service ticket anomalies: permintaan service ticket untuk akun yang biasanya tidak pernah diakses, atau dari host yang tidak pernah memintanya sebelumnya.
  • Encryption downgrade attempts: permintaan yang tiba-tiba jatuh ke RC4 atau DES padahal AES sudah tersedia — indikasi penyerang mengeksploitasi kunci lemah.

Di AD, event 4768 (TGT diminta) dan 4769 (service ticket diminta) adalah sumber utama; di MIT Kerberos, log KDC memberi sinyal yang sama. Deteksi yang baik adalah campuran aturan di SIEM dan observasi metrik — topik episode 22.

Mekanisme Pertahanan

Setelah mengenal serangan, giliran membangun pertahanan berlapis:

  • Protected Users group (AD): anggota grup ini tidak bisa didelegasikan, tidak memakai NTLM atau RC4, dan tidak memiliki kredensial yang di-cache. Masukkan semua akun admin dan service sensitif.
  • Credential Guard (Windows): mengisolasi kredensial di luar proses OS dengan Virtualization-Based Security, sehingga tool pencurian kredensial tidak bisa membacanya.
  • FAST armoring: melindungi preauthentication Kerberos dengan armor. Di MIT, aktifkan lewat krb5.conf:
Linux/etc/krb5.conf - aktifkan FAST armoring
[libdefaults]
    fast_armoring = required
  • Regular password rotation: rotasi rutin untuk kunci krbtgt (dengan reset dua kali), dan untuk semua akun layanan. Semakin lama kunci dipakai, semakin besar peluangnya bocor.
  • Service account hardening: gunakan password acak panjang (140 karakter atau lebih), akun yang tidak pernah dipakai login interaktif, dan SPN yang tidak pernah berpindah akun.
  • Monitoring dan alerting: aktifkan alert untuk perubahan delegation, permintaan tiket tidak biasa, dan downgrade enkripsi. Monitoring adalah mata kalian setelah semua gerbang ditutup.

Important

Kerberoasting dan AS-REP roasting adalah serangan offline — firewall tidak menolong. Satu-satunya pertahanan nyata adalah akun layanan dengan password acak panjang, enkripsi AES saja, preauth yang diwajibkan, dan monitoring permintaan tiket yang tidak wajar.

Penutup

Episode 21 ini mengubah Kerberos dari sekadar protokol menjadi pertahanan yang harus dijaga. Kalian telah melihat hardening dari sisi enkripsi, preauth, masa tiket, dan keytab; keamanan KDC dari isolasi, firewall, sampai backup terenkripsi; peta enam serangan umum; strategi deteksi lewat anomali tiket; serta mekanisme pertahanan seperti Protected Users, Credential Guard, dan FAST armoring.

Inti yang harus dibawa pulang:

  • Hanya AES, wajibkan preauth, perpendek lifetime tiket, dan lindungi keytab dengan permission ketat.
  • KDC adalah fondasi realm: isolasi, batasi port, lindungi stash file, dan enkripsi backup database.
  • Golden Ticket menyerang kunci krbtgt, Silver Ticket menyerang kunci layanan; keduanya butuh proteksi kunci yang disiplin.
  • Kerberoasting dan AS-REP roasting hanya bisa ditangkal dengan akun layanan berpengaman kuat dan monitoring permintaan tiket.

Di episode 22 kalian akan membangun mata realm: Kerberos Monitoring & Logging — konfigurasi logging KDC dan klien, analisis log untuk mendeteksi kegagalan, hingga metrik yang dipantau dengan Grafana dan SIEM. Sampai jumpa!