Shadow Credentials

Support HackTricks

Intro

Check the original post for all the information about this technique.

Özetle: Eğer bir kullanıcı/bilgisayarın msDS-KeyCredentialLink özelliğine yazabiliyorsanız, o nesnenin NT hash'ini alabilirsiniz.

Gönderide, hedefin NTLM hash'ini içeren benzersiz bir Service Ticket almak için public-private key authentication credentials kurma yöntemi özetlenmiştir. Bu süreç, şifrelenmiş NTLM_SUPPLEMENTAL_CREDENTIAL'in de bulunduğu Privilege Attribute Certificate (PAC) ile ilgilidir ve bu, deşifre edilebilir.

Requirements

Bu tekniği uygulamak için belirli koşulların sağlanması gerekir:

  • En az bir Windows Server 2016 Domain Controller gereklidir.

  • Domain Controller'da bir sunucu kimlik doğrulama dijital sertifikası yüklü olmalıdır.

  • Active Directory, Windows Server 2016 Fonksiyonel Seviyesinde olmalıdır.

  • Hedef nesnenin msDS-KeyCredentialLink niteliğini değiştirmek için yetkilendirilmiş bir hesaba ihtiyaç vardır.

Abuse

Bilgisayar nesneleri için Key Trust'un kötüye kullanımı, Ticket Granting Ticket (TGT) ve NTLM hash'ini elde etmenin ötesinde adımlar içerir. Seçenekler şunlardır:

  1. Hedef ana bilgisayarda ayrıcalıklı kullanıcılar olarak hareket etmek için bir RC4 silver ticket oluşturmak.

  2. S4U2Self ile TGT'yi kullanarak ayrıcalıklı kullanıcıların taklit edilmesi, bu da hizmet adını eklemek için Service Ticket'te değişiklikler gerektirir.

Key Trust kötüye kullanımının önemli bir avantajı, saldırgan tarafından üretilen özel anahtarla sınırlı olmasıdır; bu, potansiyel olarak savunmasız hesaplara devredilmesini önler ve kaldırılması zor olabilecek bir bilgisayar hesabı oluşturulmasını gerektirmez.

Tools

### Whisker

Bu saldırı için bir C# arayüzü sağlayan DSInternals'a dayanmaktadır. Whisker ve Python karşılığı pyWhisker, Active Directory hesapları üzerinde kontrol sağlamak için msDS-KeyCredentialLink niteliğini manipüle etmeyi mümkün kılar. Bu araçlar, hedef nesneden anahtar kimlik bilgilerini ekleme, listeleme, kaldırma ve temizleme gibi çeşitli işlemleri destekler.

Whisker işlevleri şunlardır:

  • Add: Bir anahtar çifti oluşturur ve bir anahtar kimlik bilgisi ekler.

  • List: Tüm anahtar kimlik bilgisi girişlerini görüntüler.

  • Remove: Belirtilen bir anahtar kimliğini siler.

  • Clear: Tüm anahtar kimlik bilgilerini siler, bu da meşru WHfB kullanımını bozabilir.

Whisker.exe add /target:computername$ /domain:constoso.local /dc:dc1.contoso.local /path:C:\path\to\file.pfx /password:P@ssword1

Whisker işlevselliğini UNIX tabanlı sistemler için genişletir, kapsamlı istismar yetenekleri için Impacket ve PyDSInternals'dan yararlanarak KeyCredentials'ı listeleme, ekleme ve kaldırma işlemlerini gerçekleştirir ve bunları JSON formatında içe ve dışa aktarır.

python3 pywhisker.py -d "domain.local" -u "user1" -p "complexpassword" --target "user2" --action "list"

ShadowSpray, genel kullanıcı gruplarının alan nesneleri üzerinde sahip olabileceği GenericWrite/GenericAll izinlerini istismar etmeyi amaçlar ve ShadowCredentials'ı geniş bir şekilde uygulamak için kullanılır. Bu, alanın işlevsel seviyesini doğrulamak, alan nesnelerini listelemek ve TGT edinimi ve NT hash ifşası için KeyCredentials eklemeye çalışmak üzere alanına giriş yapmayı içerir. Temizlik seçenekleri ve yinelemeli istismar taktikleri, kullanımını artırır.

References

Support HackTricks

Last updated