RFC 5961 Linux TCP hatası için bir geçici çözüm var mı?


28

Geçenlerde bir saldırganın Linux çalıştıran iki makine (örneğin bir web sunucusu ve bir istemci) arasındaki bağlantıyı koparmasına ya da kopmasına izin veren bu Linux TCP hatasını ( CVE-2016-5696 ) okudum . Sorunun 2012'de Linux çekirdek sürüm 3.6'da ortaya çıktığını ve tüm yeni sürümleri de etkilediğini anlıyorum.

Şu anda bunun için bir düzeltme yayınlanmadı (bu yazının zamanı gibi), ancak bunun büyük bir hata olduğu için herhangi bir geçici çözüm var mı?


Ubuntu bir düzeltme yayınlamadı mı? Bazı diğer dağıtımlar, kusurun kamuya açıklanmasından önce yayınlanan bir düzeltme yaptı.
Michael Hampton

@ MichaelHampton: Anladığım kadarıyla -proposed kanalda bir düzeltme yapıldı, ancak henüz kararlı bir sürüm henüz yapılmamıştır.

Düzeltmeyi 27 'de yayınlamayı planladıklarını düşünüyorum.

@MichaelHampton: Cevabımı ilgili bilgilerle güncelledim.

Yanıtlar:


29

Not: Geçici Çözüm bölümü geçmiş nedenlerden dolayı korunmuştur, ancak lütfen aşağıdaki Düzeltme bölümüne geçin .

Çözüm:

Belirtildiği gibi burada :

İyi haber - ve evet, iyi haberler var - düzeltmesi kolaydır. İlk olarak, Linux'un kendisi saldırı vektörünü yolunda durdurmak için yamalanıyor. Ardından, saldırının işe yaramasını sağlayan yan kanal probleminden yararlanmanın neredeyse imkansız hale gelmesi için “ACK sınırını zorla” sınırını çok büyük bir değere yükseltiyorsunuz .

Bu sorun hem istemciyi hem de sunucuyu veya aslında ağ üzerinden konuşan herhangi iki Linux makinesini etkilediğinden, geçici çözümü hem de uygulamanın hem de düzeltmenin yayınlandığı anda uygulanması önemlidir.

Geçici çözümü uygulamak için aşağıdakileri yapın:

  1. Config dosyasını şununla aç: sudoedit /etc/sysctl.conf
  2. Satırı net.ipv4.tcp_challenge_ack_limit = 999999999dosyaya yerleştirin ve kaydedin
  3. sudo sysctl -pYapılandırmayı güncellemek için çalıştırın

İşlemi doğrudan Terminal'den de yapabilirsiniz:

sudo bash -c 'echo "net.ipv4.tcp_challenge_ack_limit = 999999999" >>/etc/sysctl.conf'

Veya:

echo 'net.ipv4.tcp_challenge_ack_limit = 999999999' | sudo tee -a /etc/sysctl.conf

O zaman koş:

sudo sysctl -p

Düzeltme:

Belirtildiği gibi burada :

net/ipv4/tcp_input.c in the Linux kernel before 4.7 does not properly
determine the rate of challenge ACK segments, which makes it easier for
man-in-the-middle attackers to hijack TCP sessions via a blind in-window
attack.
...
sbeattie> fix is going to land in Ubuntu kernels in this SRU cycle,  
with a likely release date of Aug 27. Earlier access to the kernels  
with the fix will be available from the -proposed pocket, though they 
come with the risk of being less tested.

Ve şimdi bir düzeltme yayınlandı:

linux (4.4.0-36.55) xenial; urgency=low

  [ Stefan Bader ]

  * Release Tracking Bug
    - LP: #1612305

  * I2C touchpad does not work on AMD platform (LP: #1612006)
    - SAUCE: pinctrl/amd: Remove the default de-bounce time

  * CVE-2016-5696
    - tcp: make challenge acks less predictable

 -- Stefan Bader <stefan.bader@canonical.com>  Thu, 11 Aug 2016 17:34:14 +0200

Koşmak:

sudo apt-get update
sudo apt-get dist-upgrade

En son sürüme sahip olduğunuzdan emin olmak için. Veya GUI üzerinden güncelleme yapmayı tercih ediyorsanız Yazılım Güncelleyiciyi kullanın.

Hangi sürümü çalıştırdığınızı ve hangilerinin mevcut olduğunu kontrol edebilirsiniz:

apt-cache policy linux-image-generic

Hızlı (ancak kalıcı değil) düzeltme:echo 999999999 > /proc/sys/net/ipv4/tcp_challenge_ack_limit
Ben Voigt
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.