2 Kerentanan DoS parantos diidentifikasi dina sababaraha palaksanaan protokol HTTP/8

Panaliti ti Netflix sareng Google diungkabkeun Aya dalapan kerentanan dina sababaraha palaksanaan protokol HTTP / 2 anu tiasa nyababkeun panolakan jasa ku ngirim aliran pamundut jaringan ku cara anu tangtu. Masalahna mangaruhan paling server HTTP kalawan HTTP / 2 rojongan kana sababaraha gelar tur ngakibatkeun worker kaluar memori atawa nyieun teuing beban CPU. Pembaruan anu ngaleungitkeun kerentanan parantos dibere nginx 1.16.1/1.17.3 и H2O 2.2.6, tapi pikeun ayeuna teu sadia pikeun Apache httpd jeung produk lianna.

Masalah disababkeun ku komplikasi diwanohkeun kana protokol HTTP / 2 pakait sareng pamakéan struktur binér, sistem pikeun ngawatesan aliran data dina sambungan, mékanisme prioritization aliran, sarta ayana pesen kontrol kawas ICMP beroperasi dina sambungan HTTP / 2. tingkat (contona, ping, reset, sareng setélan aliran). Seueur palaksanaan henteu leres ngawates aliran pesen kontrol, henteu éfisién ngatur antrian prioritas nalika ngolah pamundut, atanapi nganggo palaksanaan suboptimal tina algoritma kontrol aliran.

Seuseueurna metode serangan anu diidentipikasi turun pikeun ngirim pamenta anu tangtu ka server, ngarah ngahasilkeun sajumlah ageung réspon. Mun klien nu teu maca data tina stop kontak jeung teu nutup sambungan, antrian buffering respon di sisi server terus ngeusi. Paripolah ieu nyiptakeun beban dina sistem manajemen antrian pikeun ngolah sambungan jaringan sareng, gumantung kana fitur palaksanaan, nyababkeun kacapean mémori atanapi sumber CPU anu sayogi.

Kerentanan anu diidentifikasi:

  • CVE-2019-9511 (Data Dribble) - panyerang nyuhunkeun jumlah data anu ageung kana sababaraha utas ku cara ngamanipulasi ukuran jandela ngageser sareng prioritas utas, maksa server pikeun ngantri data dina blok 1-bait;
  • CVE-2019-9512 (Ping Banjir) - panyerang terus-terusan ngaracun pesen ping dina sambungan HTTP/2, nyababkeun antrian internal tina réspon anu dikirim ka banjir di sisi séjén;
  • CVE-2019-9513 (Resource Loop) - panyerang nyiptakeun sababaraha utas pamundut sareng terus-terusan ngarobih prioritas utas, nyababkeun tangkal prioritas ngacak;
  • CVE-2019-9514 (Reset Banjir) - panyerang nyiptakeun sababaraha utas
    sarta ngirimkeun hiji pamundut sah ngaliwatan unggal thread, ngabalukarkeun server ngirim pigura RST_STREAM, tapi teu nampa aranjeunna ngeusian antrian respon;

  • CVE-2019-9515 (Setélan Banjir) - panyerang ngirimkeun aliran pigura "SETTINGS" kosong, pikeun ngaréspon anu server kedah ngaku nampi unggal pamundut;
  • CVE-2019-9516 (0-Length Headers Leak) - panyerang ngirimkeun aliran header kalayan nami nol sareng nilai nol, sareng server nyayogikeun panyangga dina mémori pikeun nyimpen unggal header sareng henteu ngaleupaskeun dugi sési réngsé. ;
  • CVE-2019-9517 (Panyangga Data Internal) - panyerang dibuka
    HTTP / 2 ngageser jandela pikeun server ngirim data tanpa palarangan, tapi ngajaga jandela TCP ditutup, nyegah data sabenerna ditulis kana stop kontak. Salajengna, panyerang ngirimkeun pamundut anu peryogi réspon anu ageung;

  • CVE-2019-9518 (Banjir Bingkai Kosong) - Panyerang ngirimkeun aliran pigura tipe DATA, HEADERS, CONTINUATION, atanapi PUSH_PROMISE, tapi kalayan muatan kosong sareng henteu aya bandéra terminasi aliran. Server nyéépkeun waktos ngolah unggal pigura, teu saimbang sareng bandwidth anu dikonsumsi ku panyerang.

sumber: opennet.ru

Tambahkeun komentar