Golden Ticket Activities and Reseting Methods

KRBTGT Golden Ticket ile aktiviteler ve Golden Ticket’ı etkisiz hale getirme yöntemleri.

Golden Ticket nedir ve nasıl elde edilir ile ilgili bilgiler aşağıdaki linkte detaylı olarak anlatılmıştır. Bu yazımız ile Golden Ticket’ı geçersiz hale getirme yöntemleri üzerine testler yapacağız.

https://volkandemirci.org/2019/12/24/golden-ticket-compromise-krbtgt/

İlk olarak elde etiğimiz Golden Ticket’ımızı Mimikatz toolu kullanılarak aktif hale getiriyoruz.

Ayşe kullanıcı Domain Admin grubundan çıkarıyoruz.

Ayşe kullanıcısı Domain Admins grubundan çıkarıldıktan sonra Disable ediyoruz.

Aşağıda da görüleceği üzere Golden Ticket’ı olan bir kullanıcı Domain Admin grubundan çıkarıldıktan sonra Disable edilirse, Ticket aktif olsa dahi herhangi bir aktivite yapılamamaktadır. Logon Failure: account currently disabled. uyarısı alınmaktadır.

Ayşe kullanıcısını enable yapıyoruz ancak Domain Admin grubunun üyesi değil.

Ayşe kullanıcısının Domain Admin yetkisi olmamasına rağmen Golden Ticket’dan gelen yetkileri ile DC’ye bağlanabiliyor.

Domain’de VolsysHacker isimli bir kullanıcı oluşturuyorum.

DC’de Administrators grubuna VolsysHacker isimli kullanıcıyı ekliyoruz.

Domain Controller’da Administrators grubunu kontrol edilyoruz ve VolsysHacker kullanısının burada olduğunu görüyoruz.

Önceden Domain Admin olan Ayse kullanıcısının su anda hiçbir yetkisinin olmamasına ragmen, daha öneden oluşturulmuş olan golden ticket ile  her türlü işlem yapılmaktadır.

Şimdi Ayşe kullanısının parolası 2 defa resetlenecektir,

ilk restart

2. Restart

Şimdi tekrar mimikatz ile testlerimi yapmaya devam ediyoruz.

Domain’de ResetedAyse isimli bir user oluşturuldu. Şimdi Mimikatz’in oluşturduğu session’I iptal edicez ve tekrar testler yapacağız.

Mimikatz ile Pass to Ticket yazpıyoruz.

Golden Ticket’ı aktif hale getiriyoruz.

Ayşe kullanıcısının ticket’ının 10 yıllık olduğunu halen görüyorum.

Bekir isimli kullanıcı oluşturuyorum.

Bekir kullancısını Administrator grubuna ekliyorum.

2 defa kerberos reset yapıyoruz. 10 saat beklememek için Kerberos policy’ değiştireceğiz.

Kerberos Reset’ten sonra Ayse Golden Ticker’I kullanarak user oluşturmaya çalışacağım.  (Not: Kerberos policy değişmeden yani üst üste 2 restart yapıldı 10 saat beklenmeden)

Domain admin hakları devam ediyor. DC’nin c diskinin içeriğini listeleyebiliyoruz.

Kerberos policy’I değiştirdikten sonra 2 defa restart yapacağız.

Minimum 1 saat yapılabiliyor. 1 saatten sonra krbtgt 2. Restart yapacağız ve Ayse’nin accountunu resetlemeden tekrar Golden Tickerı kullanmaya çalışacağız ve en son olarakta Ayse’nin accountunu resetledikten sonra Golden Ticket’I iptal etmiş olduğumuzu göreceğiz.

DC’de policy değişiklikleri yapıldıktan sonra gpupdate /force komutu kullanarak policy’nin uygulanmasını force ediyoruz.

Yeterli süre (1 saat) geçtkten sonra Ayşe’nin parolasını reset’liyoruz. (Kerberos 2. Restartını yapmadan).

Mimikatz ile Golden Ticket kullanarak gerekli testleri yapacağız.

Golden Ticket’ın halen aktif olduğunu  görüyoruz.

Şimdi KRBGTG’nin 2. Resetini yapıyoruz, ve tekrar mimikatz ile test ediyoruz.

Golden Ticket halen aktif durumdadır.

Şimdi, KRBTGT 2 defa resetlendikten sonra Ayşe’nin parolasını değiştireceğiz ve aynı senaryoyu tekrar gerçekleştireceğiz.

Testleri tekrar yapıyoruz.

Sonuç olarak,

KRBTGT, 1 restart’tan sonra kerberos policy’de belirtilen maximum life time süresi kadar beklendikten sonra ( default’da 10 saattir), 2. restart yapıldı ve compromised olan Ayse account’u 2 defa resetlendikten sonra Golden Ticket expire edildi. Ayrıca başka account’larında compromise olması ihtimali için tüm accountların resetlenmesi kesinlikle önerilmektedir. Domainimiz de Compromize olan ve Golden Ticket’ı ele geçirilen accountları ATA Advanced Threat Analytics ile tespit edebiliyoruz.

Öneriler,

Domain’iniz de Pass to Hash, Pass to Ticket yada Golden Ticket aktiviteleri var ise öncelikli olarak Insident Respons çalışması yapılmalıdır. Yani domaininizde bulunan sistemlerin araştırılması ve ele geçirilen sistemlerin tespit edilmesi çalışması yapılmalıdır. Ardından da compromise recovery çalışması yapılmalıdır. Yani domininizin saldırılardan arındırılarak stabil hale getirilmesi, son olarakta bir daha böyle bir durum ile karşılaşmamak için pro-aktive security hardening çalışmaları yapılmalıdır.

Not: KRBTGT Reset için link’te bulunan script’i kullanabilirsiniz.

https://gallery.technet.microsoft.com/Reset-the-krbtgt-account-581a9e51


ATA yada Azure ATP kullanınız.

PAW kullanınız

Tiering Modeli domininiz için uygulayınız.

Logon to yada Authentication Policy Silos kullanınız.(Tier 0 kullanıcılarınız ile sadece Tier 0 sunucularda oturum açınız)

Düzenli olarak delegasyon kontrolü yapınız.

Sistemlerinizi güncel tutunuz.

Anti virüs ve EDR yazılımları mutlaka kullanınız.