8.9 KiB
Kerberos Çift Atlama Sorunu
AWS hackleme konusunda sıfırdan kahramana dönüşün htARTE (HackTricks AWS Kırmızı Takım Uzmanı)ile öğrenin!
- Bir cybersecurity şirketinde çalışıyor musunuz? Şirketinizi HackTricks'te reklamını görmek ister misiniz? veya PEASS'ın en son sürümüne veya HackTricks'i PDF olarak indirmek ister misiniz? ABONELİK PLANLARINI kontrol edin!
- The PEASS Ailesi'ni keşfedin, özel NFT koleksiyonumuz
- Resmi PEASS & HackTricks ürünlerini edinin
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter'da beni takip edin 🐦@carlospolopm.
- Hacking hilelerinizi hacktricks repo ve hacktricks-cloud repo göndererek paylaşın.
Giriş
Kerberos "Çift Atlama" sorunu, bir saldırganın Kerberos kimlik doğrulamasını iki atlama üzerinden kullanmaya çalıştığında ortaya çıkar, örneğin PowerShell/WinRM kullanarak.
Kerberos ile kimlik doğrulama gerçekleştiğinde, kimlik bilgileri bellekte önbelleğe alınmaz. Bu nedenle, mimikatz çalıştırsanız bile, kullanıcının kimlik bilgilerini makinede bulamazsınız, hatta kullanıcı işlemler çalıştırıyorsa bile.
Bunun nedeni, Kerberos ile bağlantı kurulduğunda şu adımların izlenmesidir:
- Kullanıcı1 kimlik bilgilerini sağlar ve alan denetleyicisi Kullanıcı1'e bir Kerberos TGT döndürür.
- Kullanıcı1, Server1'e bağlanmak için bir hizmet biletiği talep etmek için TGT'yi kullanır.
- Kullanıcı1, Server1'e bağlanır ve hizmet biletiğini sağlar.
- Server1, Kullanıcı1'in kimlik bilgilerini veya Kullanıcı1'in TGT'sini önbelleğe almadığı için, Server1'den ikinci bir sunucuya giriş yapmaya çalıştığında, kimlik doğrulama yapamaz.
Sınırsız Delege
Eğer PC'de sınırsız delege etkinse, bu olmaz çünkü Sunucu, üzerine erişen her kullanıcının bir TGT alır. Dahası, sınırsız delege kullanılıyorsa, muhtemelen Etki Alanı Denetleyicisini etkileyebilirsiniz.
Sınırsız delege sayfasında daha fazla bilgi.
CredSSP
Bu sorunu önlemenin başka bir yolu da önemli ölçüde güvensiz olan Kimlik Güvenlik Destek Sağlayıcısı'dır. Microsoft'tan:
CredSSP kimlik doğrulaması, kullanıcı kimlik bilgilerini yerel bilgisayardan uzak bir bilgisayara aktarır. Bu uygulama, uzaktaki işlemin güvenlik riskini artırır. Uzak bilgisayar tehlikeye düştüğünde, kimlik bilgileri ona iletilirse, kimlik bilgileri ağ oturumunu kontrol etmek için kullanılabilir.
CredSSP'nin üretim sistemlerinde, hassas ağlarda ve benzeri ortamlarda güvenlik endişeleri nedeniyle devre dışı bırakılması şiddetle önerilir. CredSSP'nin etkin olup olmadığını belirlemek için Get-WSManCredSSP
komutu çalıştırılabilir. Bu komut, CredSSP durumunun kontrol edilmesine olanak sağlar ve hatta WinRM etkinse uzaktan çalıştırılabilir.
Invoke-Command -ComputerName bizintel -Credential ta\redsuit -ScriptBlock {
Get-WSManCredSSP
}
Çözümler
Invoke Command
Çift atlama sorununu çözmek için, iç içe geçmiş bir Invoke-Command
yöntemi sunulmaktadır. Bu, sorunu doğrudan çözmez, ancak özel yapılandırmalara ihtiyaç duymadan bir çözüm sunar. Bu yaklaşım, birincil saldıran makineden veya önceden kurulmuş bir PS-Session ile ilk sunucudan bir PowerShell komutu (hostname
) aracılığıyla ikincil bir sunucuda bir komutun (hostname
) yürütülmesine izin verir. İşte nasıl yapılır:
$cred = Get-Credential ta\redsuit
Invoke-Command -ComputerName bizintel -Credential $cred -ScriptBlock {
Invoke-Command -ComputerName secdev -Credential $cred -ScriptBlock {hostname}
}
Alternatif olarak, ilk sunucuyla bir PS-Session kurmak ve $cred
kullanarak Invoke-Command
çalıştırmak, görevleri merkezileştirmek için önerilir.
PSSession Yapılandırması Kaydetme
Çift atlama sorununu atlamak için Register-PSSessionConfiguration
ve Enter-PSSession
kullanarak bir çözüm önerilmektedir. Bu yöntem, evil-winrm
'den farklı bir yaklaşım gerektirir ve çift atlama kısıtlamasından etkilenmeyen bir oturum sağlar.
Register-PSSessionConfiguration -Name doublehopsess -RunAsCredential domain_name\username
Restart-Service WinRM
Enter-PSSession -ConfigurationName doublehopsess -ComputerName <pc_name> -Credential domain_name\username
klist
Port Yönlendirme
Ara bir hedef üzerindeki yerel yöneticiler için, port yönlendirme son sunucuya isteklerin gönderilmesine olanak sağlar. netsh
kullanılarak, port yönlendirme için bir kural eklenir ve yönlendirilen portun izin verilmesi için bir Windows güvenlik duvarı kuralı eklenir.
netsh interface portproxy add v4tov4 listenport=5446 listenaddress=10.35.8.17 connectport=5985 connectaddress=10.35.8.23
netsh advfirewall firewall add rule name=fwd dir=in action=allow protocol=TCP localport=5446
winrs.exe
winrs.exe
, PowerShell izleme endişesi varsa daha az tespit edilebilir bir seçenek olarak kullanılabilir. Aşağıdaki komut kullanımını göstermektedir:
winrs -r:http://bizintel:5446 -u:ta\redsuit -p:2600leet hostname
OpenSSH
İlk sunucuya OpenSSH kurmak, çift atlama sorunu için özellikle atlamalı kutu senaryoları için kullanışlı bir çözüm sağlar. Bu yöntem, OpenSSH'nin Windows için CLI kurulumu ve yapılandırması gerektirir. Parola Kimlik Doğrulama için yapılandırıldığında, aracı sunucunun kullanıcı adına bir TGT almasına izin verir.
OpenSSH Kurulum Adımları
- En son OpenSSH sürümünü indirin ve zip dosyasını hedef sunucuya taşıyın.
- Zip dosyasını açın ve
Install-sshd.ps1
betiğini çalıştırın. - Port 22'yi açmak için bir güvenlik duvarı kuralı ekleyin ve SSH hizmetlerinin çalıştığını doğrulayın.
Bağlantı sıfırlandı
hatalarını çözmek için, izinlerin OpenSSH dizininde herkese okuma ve çalıştırma erişimi sağlamak için güncellenmesi gerekebilir.
icacls.exe "C:\Users\redsuit\Documents\ssh\OpenSSH-Win64" /grant Everyone:RX /T
Referanslar
- https://techcommunity.microsoft.com/t5/ask-the-directory-services-team/understanding-kerberos-double-hop/ba-p/395463?lightbox-message-images-395463=102145i720503211E78AC20
- https://posts.slayerlabs.com/double-hop/
- https://learn.microsoft.com/en-gb/archive/blogs/sergey_babkins_blog/another-solution-to-multi-hop-powershell-remoting
- https://4sysops.com/archives/solve-the-powershell-multi-hop-problem-without-using-credssp/
AWS hackleme konusunda sıfırdan kahramana dönüşmek için htARTE (HackTricks AWS Red Team Expert)'ı öğrenin!
- Bir cybersecurity şirketinde çalışıyor musunuz? Şirketinizi HackTricks'te reklamını yapmak veya PEASS'ın en son sürümüne veya HackTricks'i PDF olarak indirmek ister misiniz? ABONELİK PLANLARINI kontrol edin!
- The PEASS Family koleksiyonumuz olan özel NFT'leri keşfedin.
- Resmi PEASS & HackTricks ürünlerini edinin.
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦@carlospolopm'u takip edin.
- Hacking hilelerinizi hacktricks repo ve hacktricks-cloud repo ile göndererek paylaşın.