Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
PowerShell Uzaktan İletişimi, Windows sistemlerini yönetmek için önerilen yoldur. PowerShell Uzaktan İletişimi, Windows Server 2012 R2 ve üzeri sürümlerde varsayılan olarak etkindir. Bu belge PowerShell uzaktan iletişimini kullanırken güvenlikle ilgili endişeleri, önerileri ve en iyi yöntemleri kapsar.
PowerShell Uzaktan Yönetimi nedir?
PowerShell Uzaktan İletişimi, kullanıcıların uzak bilgisayarlarda PowerShell komutlarını çalıştırmasına izin vermek için Windows Uzaktan Yönetim (WinRM)
PowerShell Uzaktan İletişimi, cmdlet'in ComputerName parametresini kullanarak bunu temel protokol olarak Uzaktan Yordam Çağrısı (RPC) kullanan uzak bir bilgisayarda çalıştırmakla aynı değildir.
PowerShell Uzaktan İşletim varsayılan ayarları
PowerShell Uzak Bağlantı (ve WinRM) aşağıdaki portları dinler:
- HTTP: 5985
- HTTPS: 5986
Varsayılan olarak, PowerShell Uzaktan İletişimi yalnızca Yöneticiler grubunun üyelerinden gelen bağlantılara izin verir. Oturumlar kullanıcının bağlamı altında başlatılır, bu nedenle tek tek kullanıcılara ve gruplara uygulanan tüm işletim sistemi erişim denetimleri, PowerShell Uzaktan İletişimi üzerinden bağlanırken bunlara uygulanmaya devam eder.
Özel ağlarda, PowerShell Uzaktan İletişimi için varsayılan Windows Güvenlik Duvarı kuralı tüm bağlantıları kabul eder. Genel ağlarda, varsayılan Windows Güvenlik Duvarı kuralı PowerShell Uzaktan İletişim bağlantılarına yalnızca aynı alt ağ içinden izin verir. PowerShell Uzaktan İletişimi'ni genel ağdaki tüm bağlantılarla açmak için bu kuralı açıkça değiştirmeniz gerekir.
Uyarı
Genel ağlar için güvenlik duvarı kuralı, bilgisayarı kötü amaçlı olabilecek dış bağlantı girişimlerine karşı korumaya yöneliktir. Bu kuralı kaldırırken dikkatli olun.
İşlem yalıtımı
PowerShell Uzaktan İletişimi, bilgisayarlar arasındaki iletişim için WinRM kullanır. WinRM, Ağ Hizmeti hesabı altında bir hizmet olarak çalışır ve PowerShell örneklerini barındırmak için kullanıcı hesabı olarak çalışan yalıtılmış işlemler oluşturur. Bir kullanıcı olarak çalışan bir PowerShell örneğinin, PowerShell örneğini başka bir kullanıcı olarak çalıştıran bir işleme erişimi yoktur.
PowerShell Uzaktan İletişimi tarafından oluşturulan olay günlükleri
FireEye, PowerShell Uzaktan İletişim oturumları tarafından oluşturulan olay günlüklerinin ve diğer güvenlik kanıtlarının iyi bir özetini PowerShell Saldırılarını Araştırmasayfasında sağlamıştır.
Şifreleme ve aktarım protokolleri
PowerShell Uzaktan İletişim bağlantısının güvenliğini iki açıdan ele almak yararlı olur: ilk kimlik doğrulaması ve sürekli iletişim.
Kullanılan aktarım protokolünden (HTTP veya HTTPS) bağımsız olarak, WinRM ilk kimlik doğrulamasından sonra her zaman tüm PowerShell uzaktan iletişim iletişimini şifreler.
İlk kimlik doğrulaması
Kimlik doğrulaması, istemcinin kimliğini sunucuya ve ideal olarak istemciye doğrular.
İstemci, bilgisayar adını kullanarak bir etki alanı sunucusuna bağlandığında, varsayılan kimlik doğrulama protokolü Kerberos. Kerberos, yeniden kullanılabilir herhangi bir kimlik bilgisi göndermeden hem kullanıcı kimliğini hem de sunucu kimliğini garanti eder.
İstemci IP adresini kullanarak bir etki alanı sunucusuna bağlandığında veya bir çalışma grubu sunucusuna bağlandığında, Kerberos kimlik doğrulaması mümkün değildir. Bu durumda PowerShell Uzaktan İletişimi, NTLM kimlik doğrulama protokolüüzerine dayanır. NTLM kimlik doğrulama protokolü, temsilci seçilebilir herhangi bir kimlik bilgisi göndermeden kullanıcı kimliğini garanti eder. NtLM protokolü, kullanıcı kimliğini kanıtlamak için hem istemcinin hem de sunucunun parolanın kendisini değiştirmeden kullanıcının parolasından bir oturum anahtarı hesaplamasını gerektirir. Sunucu genellikle kullanıcının parolasını bilmez, bu nedenle kullanıcının parolasını bilen ve sunucu için oturum anahtarını hesaplayan etki alanı denetleyicisiyle iletişim kurar.
Ancak NTLM protokolü sunucu kimliğini garanti etmez. Kimlik doğrulaması için NTLM kullanan tüm protokollerde olduğu gibi, etki alanına katılmış bir bilgisayarın makine hesabına erişimi olan bir saldırgan, bir NTLM oturum anahtarını hesaplamak ve böylece sunucunun kimliğine bürünmek için etki alanı denetleyicisini çağırabilir.
NTLM tabanlı kimlik doğrulaması varsayılan olarak devre dışıdır, ancak hedef sunucuda SSL yapılandırılarak veya istemcide WinRM TrustedHosts ayarı yapılandırılarak izin verilebilir.
NTLM tabanlı bağlantılar sırasında sunucu kimliğini doğrulamak için SSL sertifikaları kullanma
NTLM kimlik doğrulama protokolü hedef sunucunun kimliğini sağlayamadığı için (sadece zaten parolanızı bildiğini doğrulayabilir), hedef sunucuları PowerShell Uzaktan İletişimi için SSL kullanacak şekilde yapılandırabilirsiniz. Hedef sunucuya SSL sertifikası atamak (istemcinin de güvendiği bir Sertifika Yetkilisi tarafından verildiyse), hem kullanıcı kimliğini hem de sunucu kimliğini garanti eden NTLM tabanlı kimlik doğrulamasını etkinleştirir.
NTLM tabanlı sunucu kimliği hatalarını yok sayma
NTLM bağlantıları için bir sunucuya SSL sertifikası dağıtmak mümkün değilse, sunucuyu WinRM TrustedHosts listesine ekleyerek ortaya çıkan kimlik hatalarını gizleyebilirsiniz. NTLM kimlik doğrulama protokolü aslında bağlanmak istediğiniz konağa bağlandığınızdan emin olmadığından, TrustedHosts listesine bir sunucu adı eklemenin konakların kendilerine güvenen bir deyim biçimi olarak düşünülmemesi gerektiğini lütfen unutmayın. Bunun yerine, TrustedHosts ayarını, sunucunun kimliğini doğrulamanın mümkün olmaması nedeniyle üretilen hatayı bastırmak istediğiniz konakların listesi olarak düşünmelisiniz.
Devam Eden İletişim
İlk kimlik doğrulaması tamamlandıktan sonra WinRM devam eden iletişimi şifreler. HTTPS üzerinden bağlanırken, verileri taşımak için kullanılan şifrelemeyi anlaşmak için TLS protokolü kullanılır. HTTP üzerinden bağlanırken, ileti düzeyinde şifreleme kullanılan ilk kimlik doğrulama protokolü tarafından belirlenir.
- Temel kimlik doğrulaması şifreleme sağlamaz.
- NTLM kimlik doğrulaması, 128 bit anahtara sahip bir RC4 şifrelemesi kullanır.
- Kerberos kimlik doğrulaması şifrelemesi, TGS biletindeki
etype
tarafından belirlenir. Bu, modern sistemlerde AES-256'dır. - CredSSP şifrelemesi, el sıkışmada anlaşmaya varılan TLS şifreleme paketini kullanır.
İkinci atlamanın yapılması
PowerShell Uzaktan İletişimi varsayılan olarak kimlik doğrulaması için Kerberos (varsa) veya NTLM kullanır. Bu protokollerin her ikisi de kimlik bilgilerini göndermeden uzak makinede kimlik doğrulaması yapar. Kimlik doğrulamasının en güvenli yolu budur, ancak uzak makine kullanıcının kimlik bilgilerine sahip olmadığından, kullanıcı adına diğer bilgisayarlara ve hizmetlere erişemez. Bu, "ikinci atlama sorunu" olarak bilinir.
Bu sorundan kaçınmanın çeşitli yolları vardır. Bu yöntemlerin açıklamaları ve her birinin artıları ve eksileri için bkz. PowerShell Uzaktan İletişimde İkinci Atlama Yapma .
Kaynaklar
- Windows Uzaktan Yönetimi (WinRM)
- Yönetim için Web Hizmetleri (WS-Management)
- 2.2.9.1 Şifrelenmiş İleti Türleri
- Kerberos
- NTLM kimlik doğrulama protokolü
- PowerShell Saldırılarını Araştırma
PowerShell