Kolme Linux TCP -pinoista löydettyä haavoittuvuutta johtaa palvelun etähallintaan

Linux-kaatuminen

äskettäin julkaisi uutisen useiden kriittisten haavoittuvuuksien tunnistamisesta Linux TCP -pinoissa ja FreeBSD antaa hyökkääjälle mahdollisuuden aloittaa ydinvika etänä tai aiheuttaa liikaa resurssien kulutusta käsittelemällä erityisesti muotoiltuja TCP-paketteja (paketti kuolemaan).

Ongelmat johtuvat virheistä datalohkon enimmäiskoon kahvoissa TCP-paketissa (MSS, Segmentin maksimikoko) ja mekanismissa selektiivistä yhteyden tunnistusta (SACK, Selective TCP tunnustaminen).

Mikä on valikoiva tunnustus?

Valikoiva TCP-tunnistus (SACK) se on mekanismi, jossa datavastaanotin voi ilmoittaa lähettäjälle kaikista onnistuneesti hyväksytyistä segmenteistä.

tämä Antaa lähettäjän lähettää uudelleen puuttuvat stream-segmentit hänen "hyvin tunnetusta" sarjastaan. Kun TCP SACK on poistettu käytöstä, koko jakson uudelleenlähettämiseen tarvitaan paljon suurempi joukko uudelleenlähetyksiä.

Linux-ytimessä ongelmat korjataan versioissa 4.4.182, 4.9.182, 4.14.127, 4.19.52 ja 5.1.11. Ratkaisu FreeBSD: lle on saatavana korjaustiedostona.

Ytimen pakettipäivitykset julkaistaan ​​Debianille, RHEL: lle, SUSE / openSUSE: lle, ALT: lle, Ubuntuille, Fedoralle ja Arch Linuxille.

CVE-2019-11477 (SACK-paniikki)

Ongelma ilmenee Linux-ytimissä 2.6.29 alkaen ja antaa sinun kaataa ydin (paniikki), kun lähetetään sarja SACK-paketteja johtuen kokonaisluvun ylivuodosta ohjaimessa.

Hyökkäystä varten riittää, että asetetaan MSS-arvo 48 tavuksi TCP-yhteydelle ja lähetetään järjestettyjen SACK-pakettien sarja tietyllä tavalla.

Ongelman ydin on, että rakenne tcp_skb_cb (Socket Buffer) on suunniteltu tallentamaan 17 fragmenttia ("Määritä MAX_SKB_FRAGS (65536 / PAGE_SIZE + 1) => 17").

Pakettia lähetettäessä se sijoitetaan lähetysjonoon ja tcp_skb_cb tallentaa paketin yksityiskohdat, kuten järjestysnumeron, liput, sekä "tcp_gso_segs" ja "tcp_gso_size" -kentät, joita käytetään lähettämiseen Segmentointitiedot ohjaimelle (TSO, Segment Segment Download) segmenttien käsittelyyn verkkokortin puolella.

Palaset tallennetaan, kun pakettihäviö tai pakettien valikoivan uudelleenlähetyksen tarve ilmenee, jos SACK on käytössä ja ohjain tukee siirtoverkonhaltijaa.

Suojauksen kiertotavaksi voit poistaa SACK-käsittelyn käytöstä tai estää yhteydet pienellä MSS: llä (toimii vain, kun asetat sysctl net.ipv4.tcp_mtu_probing arvoon 0 ja saatat rikkoa normaalin) matalalla MSS: llä).

CVE-2019-11478 (SACK Hitaus)

Tämä epäonnistuminen aiheuttaa SACK-mekanismin keskeytymisen (kun käytetään Linux-ydintä 4.15: ssä) tai liiallinen resurssien kulutus.

Ongelma ilmenee, kun käsitellään erityisesti muotoiltuja SACK-paketteja, joita voidaan käyttää uudelleenlähetysjonon (TCP-uudelleenlähetys) fragmentointiin. Suojausratkaisut ovat samanlaisia ​​kuin edelliset haavoittuvuudet

CVE-2019-5599 (SACK Hitaus)

Antaa aiheuttaa pirstoutumisen lähetettyjen pakettien kartasta, kun prosessoidaan SACK-sekvenssiä yhden TCP-yhteyden sisällä ja aiheuttaa resursseja kuluttavan luettelohakutoiminnon suorittamisen.

Ongelma ilmenee FreeBSD 12: ssa RACK-pakettihäviöiden ilmaisumekanismin kanssa. Kiertotapana voit poistaa RACK-moduulin käytöstä (ei ladattu oletuksena, poistettu käytöstä määrittämällä sysctl net.inet.tcp.functions_default = freebsd)

CVE-2019-11479

Virhe antaa hyökkääjälle mahdollisuuden saada Linux-ydin jakamaan vastaukset useisiin TCP-segmentteihin, joista kukin sisältää vain 8 tavua dataa, mikä voi johtaa merkittävään liikenteen kasvuun, lisääntyneeseen suorittimen kuormitukseen ja tukkeutuneeseen tietoliikennekanavaan.

Lisäksi se kuluttaa lisäresursseja (prosessorin virta ja verkkokortti).

Tämä hyökkäys vaatii jatkuvia ponnisteluja hyökkääjältä ja osumat loppuvat pian sen jälkeen kun hyökkääjä lopettaa liikenteen lähettämisen.

Tämän hyökkäyksen aikana järjestelmä toimii pienemmällä kapasiteetilla aiheuttaen joillekin käyttäjille palveluneston.

Etäkäyttäjä voi laukaista tämän ongelman asettamalla segmentin enimmäiskoon (MSS) TCP-yhteydelle sen alimmalla rajalla (48 tavua) ja lähettämällä sarja erityisen muotoiltuja SACK-paketteja.

Kiertotapana on suositeltavaa estää yhteydet matalalla MSS: llä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.