SSLv3'ü devre dışı bırakıyor, ancak Apache'de SSLv2Hello'yu destekliyor


12

Birçok SSL istemcisi, özellikle JDK 6, sunucuyla el sıkışmak için SSLv2Hello protokolünü kullanır. Bu protokolü kullanarak yok değil SSL 2.0 veya bu konuda 3,0 kullanıyorsunuz anlamına; hangi protokolün kullanılacağını belirlemek sadece bir el sıkışmasıdır . [ http://tools.ietf.org/html/rfc5246#appendix-E.2]

Bununla birlikte, Apache'de SSLv3 desteğini devre dışı bırakırsanız, bu SSLv2Hello protokolü desteğini kaldırır. Apache Tomcat'in SSLv2Hello için açık desteği var; yani bunu etkinleştirebilirsiniz, ancak SSLv3'ü etkinleştiremezsiniz.

Apache'de bunu yapmanın bir yolu var mı?

[Güncelleme]

Bu benim protokol yapılandırma:

  SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2 -SSLv3

However, in Apache, if you disable SSLv3 support, this apparently removes support for the SSLv2Hello protocol. Apache 2.2 ile çalışıyorum SSLProtocol all -SSLv2 -SSLv3ve SSL 2 el sıkışma çalışıyor. Sorunla karşılaştığınız tam olarak hangi yapılandırmayı çalıştırıyorsunuz. SSL 2 El Sıkışma özelliğini devre dışı bırakmanın tek yolu FIPS modunu etkinleştirmektir.
Chris S

1
2014'te bu eski desteğin üstesinden gelmek ne acı ki :(. Herkesin SSLv2 ve SSLv3'ü nükleer silahlara çevirme ve evrensel uzantı desteği (ör. SNI) yapma zamanı.
Xavier Lucas

2
@XavierLucas Tüm -SSLv2, -SSLv3 yerine, desteklediğim TLS protokollerini belirtirim. Bunun neden farklı olacağını anlamıyorum, ama test edeceğim.
Matt Hughes

@ChrisS Her ikisini de denedim: SSLProtocol + TLSv1 + TLSv1.1 + TLSv1.2 -SSLv3 ve tümü -SSLv3 -SSLv2. Bu Apache 2.4.10 ile çalışıyor. Her iki yapılandırma da SSL 2 el sıkışmasına izin verecek şekilde görünmez. FIPS moduna dokunmadım; varsayılan, devre dışı bırakılmış olmasıdır.
Matt Hughes

Yanıtlar:


7

Görünüşe göre mod_ssl geçen yıl değişti (Ben kaynak kesin taahhüt bulamadık, ama "sorun" bulundu). Kaynak şimdi bunu yapıyor:

If SSLProtocol only includes only one Protocol:
    Handshake = That Protocol's Handshake Only
Else
    Handshake = SSLv2 Handshake

Bu ayar için geçersiz kılma yok. Yapabileceğiniz tek şey, kaynağı düzenlemek, kendi sürümünüzü yeniden derlemektir. Kendiniz derlemek istiyorsanız SSLv2 El Sıkışma uyumluluğunu zorlamak için bir fark oluşturdum .


1
Chris'in düzeltme ekinin yardımcı olduğunu doğrulayabilirim - curl (ve git gibi libcurl kullanan programlar), SSLv3 devre dışı bırakılmış olmasına rağmen, sslscanherhangi bir güvenlik açığını işaretlemeden sunucumuzla tekrar konuşabilir . Ancak yama biraz invaziv görünüyor ve Chris'ten bunu en kısa sürede incelenmek üzere Apache projesine göndermesini istiyorum. Kendime bir bilet vereceğim, eğer Chris yapmazsa :-) Çok teşekkür ederim, Chris!
Mikhail T.

1
Uyumluluk modunu zorlamak için ayrı bir yönerge eklemek daha iyi bir fikir olacaktır. Biraz boş zamanım varsa, bunu yazacağım, ama bu "yama" nın uzun vadede iyi bir fikir olduğunu düşünmüyorum.
Chris S

Evet, öyle görünüyor ki, Apache geliştiricileri ne düşünüyor. Bkz. [Thread] [1] Ben orada başladım ... [1] mail-archives.apache.org/mod_mbox/httpd-dev/201410.mbox/…
Mikhail T.

1

Yani bunun başından beri bir sorun olmadığı ortaya çıktı. Apache, yukarıda yayınladığım yapılandırmalardan herhangi biriyle SSLv2 anlaşmasını kabul edecek. Bu bir sorun olduğunu düşünürken bir el sıkışma hatasıyla yanıldım; bu sadece sunucunun istemcinin CA'sına güvenmediği bir yapılandırma sorunuydu.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.