Kerberos Attack: AS-REP Roasting

Kerberos Attack: AS-REP Roasting. Oke masih artikel seputar Active Directory, khususnya serangan pada layanan Kerberos, kali ini kita akan membahas AS-REP Roasting. Jadi untuk "roasting attack" sendiri di Kerberos ada tiga yang populer, Kerberoasting, AS-REP Roasting, dan juga AS-REQ Roasting. Nah di tutorial ini kita akan membahas AS-REP Roasting.

Penjelasan Singkat

Protokol autentikasi Kerberos beroperasi dengan menggunakan tiket untuk memberikan akses. Sebuah ST (Service Ticket) bisa diperoleh dengan menyajikan TGT (Ticket Granting Ticket). TGT tersebut bisa didapatkan dengan memvalidasi langkah pertama yang disebut "pre-authentication" (kecuali jika persyaratan itu secara eksplisit dihapus untuk beberapa akun, menjadikannya rentan terhadap AS-REP Roasting).

Pre-authentication membutuhkan pengguna yang meminta untuk menyediakan kunci rahasia (DES, RC4, AES128, atau AES256) yang berasal dari kata sandi pengguna. Secara teknis, ketika meminta KDC (Key Distribution Center) untuk TGT (Ticket Granting Ticket), pengguna yang meminta perlu memvalidasi pre-authentication dengan mengirimkan timestamp yang dienkripsi dengan kredensialnya sendiri. Ini memastikan bahwa pengguna meminta TGT untuk dirinya sendiri. Setelah divalidasi, TGT kemudian dikirimkan kepada pengguna dalam pesan KRB_AS_REP, tetapi pesan tersebut juga berisi kunci sesi. Kunci sesi tersebut dienkripsi dengan NT hash pengguna yang diminta.

Serangan ini dapat terjadi pada user domain yang tidak mengaktifkan pre-authentication pada akunnya.

Detection

Jika kalian sudah berhasil melakukan compromise salahsatu Domain User, kalian bisa melakukan collecting data dengan query ke LDAP dan melakukan mapping melalui Bloodhound. User yang rentan terhadap serangan AS-REP Roasting akan terlihat disana.

Exploitation

Untuk eksploitasinya, masih sama seperti Kerberoasting, kita akan menggunakan impacket-script. Kali ini kita menggunakan impacket-GetNPUsers.

impacket-GetNPUsers 'EVANGELION.lab/shinji' -dc-ip 172.16.8.139 -no-pass -request -format hashcat

Terlihat disana kita tidak memerlukan password ataupun NTLM hashes untuk autentikasi.

Atau cara kedua adalah menggunakan NetExec, dengan melakukan query ke LDAP, menggunakan valid Domain User.

netexec ldap 172.16.8.139 -u 'asuka' -p 'P@ssw0rd2033' --kdcHost EVANGELION.lab --asreproast output.txt

Keduanya sama-sama akan menghasilkan TGT hash dengan format hashcat.

Cracking Hashes

Dengan hashcat, kita langsung saja jalankan perintah berikut:

hashcat -m 18200 -a 0 output.txt /usr/share/wordlists/rockyou-utf8.txt

Mitigasi

Oke, mitigasinya cukup straighforward. Aktifkan Kerberos Pre-authentication, dan gunakan strong password.

Posting Komentar untuk "Kerberos Attack: AS-REP Roasting"