Come posso proteggere il mio sistema dall'exploit TCP Off-path in Linux?


9

Secondo cve.mitre.org , il kernel Linux prima della 4.7 è vulnerabile agli exploit TCP "Off-path"

Descrizione

net / ipv4 / tcp_input.c nel kernel di Linux prima della 4.7 non determina correttamente la percentuale di segmenti ACK di sfida, il che rende più facile per gli aggressori man-in-the-middle dirottare le sessioni TCP attraverso un attacco cieco nella finestra.

Questa vulnerabilità è considerata pericolosa perché l'attaccante ha solo bisogno di un indirizzo IP per eseguire un attacco.

L'aggiornamento del kernel di Linux all'ultima versione stabile 4.7.1diventa l'unico modo per proteggere il mio sistema?

Risposte:


10

Secondo LWN esiste una mitigazione che può essere utilizzata mentre non si dispone di un kernel con patch:

c'è una mitigazione disponibile sotto forma di tcp_challenge_ack_limit sysctlmanopola. Impostare quel valore su qualcosa di enorme (ad es. 999999999) Renderà molto più difficile per gli attaccanti sfruttare il difetto.

Dovresti impostarlo creando un file /etc/sysctl.de quindi implementandolo con sysctl -a. Apri un terminale (premi Ctrl+ Alt+ T) ed esegui:

sudo -i

echo "# CVE-2016-5696
net.ipv4.tcp_challenge_ack_limit = 999999999
" > /etc/sysctl.d/security.conf

sysctl -a
exit

A proposito, puoi tenere traccia dello stato di questa vulnerabilità su Debian nel tracker di sicurezza .


6

Hai taggato questa domanda , quindi suppongo che tu stia eseguendo un sistema Debian basato su Linux.

La patch pertinente che risolve questo errore è piccola e relativamente isolata, rendendola la prima candidata per il backport.

Debian di solito è abbastanza bravo a eseguire il backport delle correzioni relative alla sicurezza alle versioni del software che stanno distribuendo su versioni di distribuzione supportate. Il loro elenco di avvisi di sicurezza per il 2016 attualmente elenca otto avvisi di sicurezza relativi al kernel ( linuxe ai linux-2.6pacchetti) Linux , il più recente è DSA-3616 il 4 luglio. La patch per il bug menzionato è stata assegnata all'albero del codice sorgente una settimana dopo, l'11 luglio.

Il supporto di sicurezza per Wheezy è disponibile con il team LTS (supporto a lungo termine) fino al 31 maggio 2018 e Jessie sta attualmente ricevendo i normali aggiornamenti di sicurezza in virtù della versione corrente.

Mi aspetterei presto una patch di sicurezza contro le versioni Debian supportate che soffrono di questo errore.

È anche possibile che i kernel spediti da Debian non siano vulnerabili. Il CVE fa dire "prima di 4.7", ma dubito che la dichiarazione può essere preso per oro colato letterale; il codice rilevante probabilmente non era stato introdotto nella prima versione pubblica del kernel Linux (nel 1991 o giù di lì), quindi devono esistere logicamente versioni del kernel che soddisfano i criteri di essere precedenti alla versione 4.7 ma che non sono vulnerabili. Non ho controllato per vedere se questo vale per quei kernel spediti dalle attuali versioni di Debian.

Se stai eseguendo una versione di Debian non supportata che è vulnerabile a questo bug, o se hai bisogno di una correzione immediata, potresti dover eseguire il backport della correzione manualmente o aggiornare a una versione più recente almeno del kernel stesso.


3
Il kernel attualmente fornito da Debian è vulnerabile come si può vedere nel loro tracker di sicurezza . Il kernel Linux incontaminato è vulnerabile dal 3.6. Apparentemente, anche wheezy che sta usando Linux 3.2 è vulnerabile perché la funzionalità (e il bug) è stata backportata.
ysdx,

Vedi il log delle modifiche per Linux 3.2.37 che include questo commit.
ysdx,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.