Vulnerabilità Linux e FreeBSD

19/06/2019

FreeBSD Linux TCP SACK

Sono state recentemente scoperte quattro vulnerabilità nel kernel linux riguardanti la gestione del protocollo TCP SACK (Selective Acknowledgements). Il TCP SACK permette di accelerare il trasferimento di dati tra computer e consente a una macchina, di riconoscere quali dati/pacchetti abbia ricevuto e ritrasmettere solo i segmenti di dati mancanti, come evidenziato dalla figura seguente:

Di fatto, a causa alcuni bug nella gestione della memoria insite nelle funzionalità Selective Acknowledgement (SACK) dello stack-TCP di sistema, un attaccante di rete potrebbe causare disservizi e crash di sistema, semplicemente trasmettendo particolari sequenze di pacchetti con opportuni valori di Maximum Segment Size, verso la macchina bersaglio. Tale vulnerabilità consentirebbe quindi attacchi da remoto, generando Denial of Service e innescando in tal modo un kernel panic nei sistemi vulnerabili. Si evidenzia che l’implementazione TCP SACK è abilitata di default nei kernel Linux.

Dettagli delle vulnerabilità

  • La vulnerabilità identificata con CVE-2019-11477 denominata SACK Panic è stata classificata con punteggio base CVSS di 7.5 ovvero impatto importante per la sicurezza dei sistemi. Il bug colpisce le versioni del kernel Linux dalla 2.6.29, che porta quindi a un kernel panic.
  • La vulnerabilità identificata con CVE-2019-11478, denominata SACK Slowness, riguarda i kernel di Linux precedenti alla versione 4.15 classificata con impatto moderato .
  • La vulnerabilità identificata con CVE-2019-11479, riguarda tutte le versioni del kernel Linux ed è legata al consumo di risorse in eccesso a causa dei bassi valori del Maximum segment size (MSS) nel TCP header, ed è classificata con impatto moderato.
  • La vulnerabilità identificata con CVE-2019-5599, è un’altra vulnerabilità definita SACK Slowness ma riguarda esclusivamente le installazioni di FreeBSD 12 che utilizzano lo stack TCP RACK, in questo caso non non risulta abilitato di default sul kernel della distribuzione.

Remediation

Apposite patch di sicurezza sono già state rilasciate per versioni kernel Linux a partire dalla 2.6.29 relativamente a “SACK Panic” (CVE-2019-11477), e fino alla versione 4.15 in riferimento a “SACK Slowness” (CVE-2019-11478). Inoltre, sono già state rese disponibili patch a livello di codice sorgente, insieme a soluzioni alternative che consentono di disabilitare le funzioni di elaborazione SACK. Infine si segnala che le seguenti distribuzioni Linux hanno già rilasciato appositi bollettini di sicurezza o discusso i piani per il rilascio delle correzioni:

• Amazon Web Services
• Debian
• Ubuntu
• Grsecurity
• Red Hat
• SUSE

Pertanto si consiglia la consultazione dei relativi bollettini di sicurezza per gli opportuni suggerimenti finalizzati ad eliminare o arginare la vulnerabilità descritta.

Riferimenti:

https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001.md
https://aws.amazon.com/security/security-bulletins/AWS-2019-005/
https://security-tracker.debian.org/tracker/CVE-2019-11477
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-11477.html
https://twitter.com/grsecurity/status/1140678999410188293
https://access.redhat.com/security/cve/cve-2019-11477
https://www.suse.com/de-de/support/kb/doc/?id=7023928