Bubar nerbitake warta babagan identifikasi sawetara kerentanan kritis ing tumpukan TCP Linux lan FreeBSD sing ngidini panyerang kanggo miwiti kegagalan kernel kanthi mbatalake utawa nyebabake konsumsi sumber daya sing akeh banget kanthi ngolah paket TCP sing digawe khusus (paket pati).
Masalah kasebut disebabake kesalahan ing gagang ukuran maksimum blok data ing paket TCP (MSS, Ukuran ukuran maksimal) lan mekanisme kanggo pangenalan sambungan selektif (SACK, Pangenalan TCP Milih).
Apa sing diarani selektif?
Pengakuan TCP Milih (SACK) minangka mekanisme ing endi panrima data bisa menehi informasi marang pangirim babagan kabeh bagean sing wis ditampa kanthi sukses.
Iki Ngidini pangirim ngirim maneh segmen stream sing ilang saka set 'kondhang'. Nalika TCP SACK dipateni, pesawat retransmisi sing luwih gedhe dibutuhake kanggo ngirim kabeh urutan.
Ing kernel Linux, masalah tetep ana ing versi 4.4.182, 4.9.182, 4.14.127, 4.19.52 lan 5.1.11. Solusi kanggo FreeBSD kasedhiya minangka tambalan.
Nganyari paket Kernel dirilis kanggo Debian, RHEL, SUSE / openSUSE, ALT, Ubuntu, Fedora, lan Arch Linux.
Indeks
CVE-2019-11477 (Gupuh SACK)
masalah mujudake ing kernel Linux 2.6.29 lan ngidini sampeyan nabrak kernel (gupuh) nalika ngirim seri paket SACK amarga integer kebanjiran ing kontroler.
Kanggo nyerang, cukup kanggo nyetel nilai MSS dadi 48 bait kanggo sambungan TCP lan ngirim urutan paket SACK sing diatur kanthi cara tartamtu.
Intine masalah yaiku struktur tcp_skb_cb (Socket Buffer) dirancang kanggo nyimpen 17 fragmen ("Netepake MAX_SKB_FRAGS (65536 / PAGE_SIZE + 1) => 17").
Ing proses ngirim paket, diselehake ing antrean send lan rincian toko tcp_skb_cb babagan paket kasebut, kayata nomer urutan, gendera, uga kolom "tcp_gso_segs" lan "tcp_gso_size", sing digunakake kanggo ngirim informasi segmentasi menyang kontrol (TSO, Download Segmen Segmen) kanggo ngolah segmen ing sisih kertu jaringan.
Potongan bakal disimpen nalika paket ilang utawa butuh transmisi paket selektif, yen SACK diaktifake lan TSO didhukung dening driver.
Minangka solusi kanggo nglindhungi, sampeyan bisa mateni pangolahan SACK utawa mblokir sambungan karo MSS cilik (mung bisa digunakake nalika sampeyan nyetel sysctl net.ipv4.tcp_mtu_probing dadi 0 lan bisa ngilangi sawetara normal) kanthi MSS sithik).
CVE-2019-11478 (LAMBAT SACK)
Gagal iki nyebabake gangguan mekanisme SACK (nalika nggunakake kernel Linux ing 4.15) utawa konsumsi sumber daya sing akeh banget.
Masalah kasebut muncul nalika ngolah paket SACK sing digawe khusus sing bisa digunakake kanggo fragmen antrian pengiriman ulang (transmisi TCP). Solusi kanggo nglindhungi padha karo kerentanan sadurunge
CVE-2019-5599 (LAMBAT SACK)
Ngidini pecahan peta paket sing dikirim nalika ngolah urutan SACK ing sambungan TCP siji lan nyebabake operasi dhaptar dhaptar intensif sumber bisa aktif.
Masalah kasebut muncul ing FreeBSD 12 kanthi mekanisme deteksi kerugian paket RACK. Minangka solusi sampeyan bisa mateni modul RACK (ora dimuat kanthi standar, dipateni kanthi nemtokake sysctl net.inet.tcp.functions_default = freebsd)
CVE-2019-11479
Kesalahan kasebut ngidini panyerang nggawe kernel Linux mbagi tanggepan dadi pirang-pirang segmen TCP, sing masing-masing kalebu mung 8 bita data, sing bisa ningkatake lalu lintas, nambah beban CPU, lan saluran komunikasi sing tersumbat.
Kajaba iku, nggunakake sumber daya tambahan (daya prosesor lan kertu jaringan).
Serangan iki mbutuhake upaya terus-terusan dening panyerang lan hit bakal mandheg sawise panyerang mandheg ngirim lalu lintas.
Nalika serangan iki lagi ditindakake, sistem bakal mbukak kanthi kapasitas suda, nyebabake penolakan layanan kanggo sawetara pangguna.
Pangguna jarak jauh bisa micu masalah iki kanthi nyetel ukuran segmen maksimum (MSS) sambungan TCP ing wates paling ngisor (48 bait) lan ngirimake rangking paket SACK sing digawe khusus.
Minangka solusi, disaranake mblokir sambungan karo MSS sing sithik.
Dadi pisanan komentar