Ranljivosti v skladih TCP za Linux in FreeBSD, ki vodijo do oddaljene zavrnitve storitve

Podjetje Netflix razkrila več kritičnih ranljivosti v skladih TCP za Linux in FreeBSD, ki vam omogočajo, da na daljavo sprožite zrušitev jedra ali povzročite prekomerno porabo virov pri obdelavi posebej oblikovanih paketov TCP (packet-of-death). Težave povzročil napake v obdelovalcih za največjo velikost podatkovnega bloka v paketu TCP (MSS, Maximum segment size) in mehanizmu za selektivno potrditev povezav (SACK, TCP Selective Acknowledgment).

  • CVE-2019-11477 (SACK Panic) - težava, ki se pojavi v jedrih Linuxa od 2.6.29 dalje in vam omogoča, da povzročite paniko jedra s pošiljanjem niza paketov SACK zaradi prelivanja celega števila v upravljalniku. Za napad je dovolj, da vrednost MSS za povezavo TCP nastavimo na 48 bajtov (spodnja meja določa velikost segmenta na 8 bajtov) in pošljemo zaporedje paketov SACK, urejenih na določen način.

    Kot varnostne rešitve lahko onemogočite obdelavo SACK (zapišite 0 v /proc/sys/net/ipv4/tcp_sack) ali blokirati nizke povezave MSS (deluje samo, če je sysctl net.ipv4.tcp_mtu_probing nastavljen na 0 in lahko prekine nekatere običajne nizke povezave MSS);

  • CVE-2019-11478 (SACK Slowness) - vodi do motenj v delovanju mehanizma SACK (pri uporabi jedra Linuxa, mlajšega od 4.15) ali prekomerne porabe virov. Težava se pojavi pri obdelavi posebej oblikovanih paketov SACK, ki jih je mogoče uporabiti za fragmentacijo čakalne vrste za ponovno pošiljanje (TCP ponovno pošiljanje). Varnostne rešitve so podobne prejšnji ranljivosti;
  • CVE-2019-5599 (SACK Slowness) – omogoča, da povzročite razdrobljenost zemljevida poslanih paketov pri obdelavi posebnega zaporedja SACK znotraj ene povezave TCP in povzročite izvedbo operacije oštevilčenja seznama, ki zahteva veliko virov. Težava se pojavi v FreeBSD 12 z mehanizmom za zaznavanje izgube paketov RACK. Kot rešitev lahko onemogočite modul RACK;
  • CVE-2019-11479 - napadalec lahko povzroči, da jedro Linuxa razdeli odgovore na več segmentov TCP, od katerih vsak vsebuje samo 8 bajtov podatkov, kar lahko povzroči znatno povečanje prometa, povečano obremenitev procesorja in zamašitev komunikacijskega kanala. Priporočljivo je kot rešitev za zaščito. blokirati povezave z nizkim MSS.

    V jedru Linuxa so bile težave odpravljene v izdajah 4.4.182, 4.9.182, 4.14.127, 4.19.52 in 5.1.11. Popravek za FreeBSD je na voljo kot obliž. V distribucijah so že izdane posodobitve paketov jedra za Debian, RHEL, SUSE/openSUSE. Popravek med pripravo Ubuntu, Fedora и Arch Linux.

    Vir: opennet.ru

  • Dodaj komentar