Trīs Linux TCP atrastās ievainojamības rada attālinātu pakalpojumu atteikumu

linux avārija

Nesen izlaida ziņas par vairāku kritisku ievainojamību identificēšanu Linux TCP skursteņos un FreeBSD to ļauj uzbrucējam attālināti sākt kodola kļūmi vai izraisīt pārmērīgu resursu patēriņu, apstrādājot īpaši izveidotas TCP paketes (nāves pakete).

Problēmas rada kļūdas datu bloka maksimālā lieluma rokturos TCP paketē (MSS, maksimālais segmenta lielums) un selektīvās savienojuma atpazīšanas mehānismā (SACK, selektīvā TCP atpazīšana).

Kas ir selektīva atpazīšana?

Selektīvā TCP atpazīšana (SACK) tas ir mehānisms, kurā datu uztvērējs var informēt sūtītāju par visiem veiksmīgi pieņemtajiem segmentiem.

Šis Ļauj sūtītājam atkārtoti nosūtīt trūkstošos straumes segmentus no viņa 'labi zināmā' komplekta. Kad TCP SACK ir atspējots, ir nepieciešams daudz lielāks retranslāciju komplekts, lai atkārtoti nosūtītu visu secību.

Linux kodolā problēmas tiek novērstas versijās 4.4.182, 4.9.182, 4.14.127, 4.19.52 un 5.1.11. FreeBSD risinājums ir pieejams kā plāksteris.

Kodola pakotnes atjauninājumi tiek izlaisti Debian, RHEL, SUSE / openSUSE, ALT, Ubuntu, Fedora un Arch Linux.

CVE-2019-11477 (SACK panika)

Problēma izpaužas Linux kodolos no 2.6.29 un ļauj avarēt kodolu (panika), nosūtot SACK pakešu sēriju, jo kontrolierī ir pārpildīts vesels skaitlis.

Uzbrukumam ir pietiekami iestatīt MSS vērtību līdz 48 baitiem TCP savienojumam un sakārtotu SACK paku secības nosūtīšana noteiktā veidā.

Problēmas būtība ir tāda, ka struktūra tcp_skb_cb (ligzdas buferis) ir paredzēts 17 fragmentu glabāšanai ("Definējiet MAX_SKB_FRAGS (65536 / PAGE_SIZE + 1) => 17").

Paketes sūtīšanas laikā tā tiek ievietota sūtīšanas rindā, un tcp_skb_cb tiek glabāta informācija par paketi, piemēram, kārtas numurs, karodziņi, kā arī lauki "tcp_gso_segs" un "tcp_gso_size", kurus izmanto nosūtīšanai. Segmentācijas informācija kontrolierim (PSO, Segment Segment Download), lai apstrādātu segmentus tīkla kartes pusē.

Gabali tiek saglabāti, kad rodas pakešu zudums vai nepieciešama selektīva pakešu atkārtota pārraide, ja SACK ir iespējots un draiveris atbalsta TSO.

Kā risinājumu aizsardzībai varat atspējot SACK apstrādi vai bloķēt savienojumus ar nelielu MSS (darbojas tikai tad, ja iestatāt sysctl net.ipv4.tcp_mtu_probing uz 0 un var izjaukt dažas normālas) ar zemu MSS).

CVE-2019-11478 (SACK lēnums)

Šī neveiksme izraisa SACK mehānisma pārtraukumu (lietojot Linux kodolu 4.15. versijā) vai pārmērīgs resursu patēriņš.

Problēma rodas, apstrādājot īpaši izstrādātas SACK paketes, kuras var izmantot retranslācijas rindas fragmentēšanai (TCP retranslācija). Aizsardzības risinājumi ir līdzīgi iepriekšējām ievainojamībām

CVE-2019-5599 (SACK lēnums)

Ļauj izraisīt paketes kartes sadrumstalotību, apstrādājot SACK secību vienā TCP savienojumā un izraisīt resursu ietilpīgu sarakstu uzmeklēšanas darbību.

Problēma izpaužas FreeBSD 12 ar RACK pakešu zaudēšanas noteikšanas mehānismu. Kā risinājumu varat atspējot moduli RACK (pēc noklusējuma nav ielādēts, atspējots, norādot sysctl net.inet.tcp.functions_default = freebsd)

CVE-2019-11479

Kļūda ļauj uzbrucējam likt Linux kodolam sadalīt atbildes vairākos TCP segmentos, katrā no tiem ir tikai 8 baiti datu, kas var izraisīt ievērojamu trafika pieaugumu, palielinātu procesora slodzi un aizsērējušu komunikācijas kanālu.

Turklāt tas patērē papildu resursus (procesora jauda un tīkla karte).

Šis uzbrukums prasa nepārtrauktus uzbrucēja centienus, un sitieni beigsies neilgi pēc tam, kad uzbrucējs pārtrauks sūtīt trafiku.

Kamēr šis uzbrukums notiek, sistēma darbosies ar samazinātu jaudu, dažiem lietotājiem izraisot pakalpojumu atteikumu.

Attālais lietotājs var izraisīt šo problēmu, iestatot maksimālo segmenta lielumu (MSS) TCP savienojumam pie tā zemākās robežas (48 baiti) un sūtot speciāli izstrādātu SACK pakešu sēriju.

Kā risinājumu ieteicams bloķēt savienojumus ar zemu MSS.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.