it-swarm-tr.com

SSL 2.0 ve BEAST nasıl IIS

Bu yayında görebileceğiniz gibi TeamMentor.net BEAST ve SSL 2.0'a karşı savunmasız, şimdi ne olacak? Şu anda geliştirdiğim uygulama SSL Labs tarafından SSL 2.0 ve BEAST için işaretlendi.

IIS 7.0 en son yamalar ile kullanıyorum ve bu soruların cevaplarını bulamıyorum:

  • Bu güvenlik açığının http://teammentor.net gibi bir site üzerindeki risk etkisi nedir?
  • İstismar senaryoları nelerdir?
  • IIS 7.0) kullanımıyla herhangi bir hafifletme (veya etmeme) var mı?
  • Bunu IIS 7.0'da nasıl düzeltebilirim?
  • Uygulama Katmanında herhangi bir şey yapılabilir mi?

Başvuru için bu konuyla ilgili birkaç security.stackexchange.com sorusu var:

31
Dinis Cruz

IIS 7 (ve 7.5) sürümlerinde iki şey vardır:

  1. Başlat> 'gpedit.msc'> Bilgisayar Yapılandırması> Yönetici Şablonları> Ağ> SSL Yapılandırma Ayarları> SSL Şifreleme Paketi Siparişi'ne (sağ bölmede, açmak için çift tıklayın) gidin. Orada, aşağıdakileri kopyalayıp yapıştırın (girişler tek bir virgülle ayrılır, satır kaydırma olmadığından emin olun):

    TLS_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_RC4_128_MD5, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P521, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P521, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P521, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P521, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P521, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P384, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P521, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH _AES_128_CBC_SHA_P256

  2. Aşağıdaki PowerShell komutlarını yönetici olarak çalıştırın (Not Defteri'ne kopyalayıp yapıştırın, 'fix-beast-in-iis.ps1' kaydedin ve yükseltilmiş ayrıcalıklarla çalıştırın):

    #make TSL 1.2 protocol reg keys
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2"
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server"
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client"
    
    # Enable TLS 1.2 for client and server SCHANNEL communications
    new-itemproperty -path     "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" -name "Enabled" -value 1 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" -name "DisabledByDefault" -value 0 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" -name "Enabled" -value 1 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" -name "DisabledByDefault" -value 0 -PropertyType "DWord"
    
    # Make and Enable TLS 1.1 for client and server SCHANNEL communications
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1"
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server"
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client" 
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" -name "Enabled" -value 1 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" -name "DisabledByDefault" -value 0 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client" -name "Enabled" -value 1 -PropertyType "DWord"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client" -name "DisabledByDefault" -value 0 -PropertyType "DWord"
    
    # Disable SSL 2.0 (PCI Compliance)
    md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server"
    new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server" -name Enabled -value 0 -PropertyType "DWord"
    

Komut dosyasını çalıştırdıktan sonra, 'regedit'i çalıştırabilir ve komut dosyasındaki anahtarların gerçekten doğru şekilde oluşturulduğundan emin olabilirsiniz. Ardından değişikliğin geçerli olması için yeniden başlatın.

UYARI: SSL 3.0'ı kapatmadım dikkat et - bunun nedeni, beğen ya da beğenme, orada hala Windows kullanan insanlar var olması XP IE 6/7. SSL 3.0 etkin olmasaydı, bu kişilerin geri çekilmesi için bir protokol olmazdı. Yine de bir Qualys SSL Labs taramasında mükemmel bir sonuç alamayabilirsiniz, ancak deliklerin çoğu Mutlak PCI uyumluluğu istiyorsanız, satırları Powershell betiğinin SSL 2.0'ı Devre Dışı Bırak bölümünden kopyalayabilir, betiğin sonuna yapıştırabilir ve aşağıdaki şekilde değiştirebilirsiniz:

# Disable SSL 3.0 (PCI Compliance)
md "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server"
new-itemproperty -path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server" -name Enabled -value 0 -PropertyType "DWord"

Ardından, komut dosyasını çalıştırdığınızda SSL 2.0, SSL 3.0'ı devre dışı bırakır ve TLS 1.1 ve 1.2'yi etkinleştirirsiniz.

28
Josh

Ben sadece schannel kayıt defteri anahtarlarını ayarlar ve RC4 tek bir tıklama ile SSL şifreleme paketi sırasının üstüne koyar ücretsiz bir araçtır IIS Kripto için bir güncelleme yayınladı. Bu, Windows Server 2008 ve 2012'deki BEAST saldırısını azaltır.

19
Jeff

Gerçek risklere gelince, söylemek zor görünüyor. SSL Labs gibi araçlar bunu yüksek öncelik olarak bildirirken, vahşi doğada bu durumdan yararlanan gerçek saldırıların farkında değilim ve saldırının nasıl çalıştığına dair (çok sınırlı) anlayışımdan yürütmek oldukça karmaşık ve çok sayıda ön -gerçek bir tehdit haline getirme koşulları. Zaten çok sayıda kaynağa bağlandınız, bu yüzden zaten kapsanan şeyi tekrarlamanın anlamı yok.

IIS RC4 kullanmak için 7 yapılandırmak gelince, belki bu pdf yardımcı olabilir mi?

2
Yoav Aner

"RC4" ile ilgili her şeyi IIS Kripto'nun Server 2008'de PCI uyumluluk testini geçmesine izin verildi/IIS 7.0

1

Aşağıdaki kayıt defteri dosyası, çoğu Windows uygulamasında SSLv2 ve SSLv3'ü devre dışı bırakır.

Aşağıdaki ayrıntılarla bir .reg dosyası oluşturun ve çalıştırın.

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client]
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client]
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]
"Enabled"=dword:00000000

Doğrulamanın en kolay yolu SSL laboratuvarlarını tekrar kullanmak veya OpenSSL kullanarak test etmektir. OpenSSL'nin bazı sürümlerinin SSL Sürüm 2'yi desteklememesi hiçbir şeye değmez.

OpenSSL 0.9.8t bunu destekliyor ve test için kullandığım sürüm.

openssl s_client -connect subdomain.domain.tld: 44 -ssl2

Bu benim openssl kullanarak zincir blok şifrelerini kontrol etmek için benim komut gidin. Fikir, bunların hiçbiriyle bağlantı kurmamamız gerektiğidir.

openssl s_client -connect subdomain.domain.tld: 44 -tls1 -sürücü SRP-DSS-AES-256-CBC-SHA: SRP-RSA-AES-256-CBC-SHA: SRP-AES- 256 CBC SHS PSK-AES256-CBC SHS: SRP DSS- AES-128-CBC SHS RP-RSA-AES-128-CBC SHS: SRP AES-128-CBC SHS: fikir- CBC SHS PSK-AES128-CBC SHS: SRP DSS- 3DES-EDE-CBC SHS: SRP-RSA 3DES-EDE-CBC SHS: SRP-3DES-EDE-CBC SHS PSK-3DES- EDE-CBC SHS: edh-RSA, DES-CBC SHS: edh DSS-, DES-CBC SHS DH-RSA, DES-CBC SHS DH DSS-, DES-CBC SHS DES-CBC- SHA

0
david_k