2 ДоС рањивости је идентификовано у различитим имплементацијама ХТТП/8 протокола

Истраживачи из Нетфлик-а и Гоогле-а открио Постоји осам рањивости у различитим имплементацијама ХТТП/2 протокола које могу да изазову ускраћивање услуге слањем низа мрежних захтева на одређени начин. Проблем утиче на већину ХТТП сервера са подршком за ХТТП/2 до одређеног степена и доводи до тога да радник остаје без меморије или ствара превелико оптерећење ЦПУ-а. Ажурирања која елиминишу рањивости су већ представљена у нгинк 1.16.1/1.17.3 и Х2О 2.2.6, али за сада недоступан за Апацхе хттпд и остали производи.

Проблеми су настали због компликација уведених у ХТТП/2 протокол повезаних са употребом бинарних структура, система за ограничавање токова података унутар веза, механизма за одређивање приоритета тока и присуства контролних порука сличних ИЦМП-у које раде на ХТТП/2 вези ниво (на пример, подешавања пинга, ресетовања и протока). Многе имплементације нису правилно ограничиле ток контролних порука, нису ефикасно управљале редом приоритета приликом обраде захтева или су користиле неоптималне имплементације алгоритама контроле тока.

Већина идентификованих метода напада своди се на слање одређених захтева серверу, што доводи до генерисања великог броја одговора. Ако клијент не чита податке са утичнице и не затвори везу, ред за баферовање одговора на страни сервера се непрекидно попуњава. Ово понашање ствара оптерећење на систему управљања редовима за обраду мрежних веза и, у зависности од карактеристика имплементације, доводи до исцрпљивања расположиве меморије или ЦПУ ресурса.

Идентификоване рањивости:

  • ЦВЕ-2019-9511 (Дриббле података) – нападач захтева велику количину података у више нити манипулишући величином клизног прозора и приоритетом нити, приморавајући сервер да стави податке у ред у блоковима од 1 бајта;
  • ЦВЕ-2019-9512 (Пинг Флоод) – нападач непрекидно трује пинг поруке преко ХТТП/2 везе, узрокујући да се унутрашњи ред послатих одговора преплави на другој страни;
  • ЦВЕ-2019-9513 (петља ресурса) – нападач креира више нити захтева и непрекидно мења приоритет нити, узрокујући мешање стабла приоритета;
  • ЦВЕ-2019-9514 (Ресет Флоод) - нападач креира више нити
    и шаље неважећи захтев кроз сваку нит, што доводи до тога да сервер шаље РСТ_СТРЕАМ оквире, али их не прихвата да попуни ред одговора;

  • ЦВЕ-2019-9515 (Сеттингс Флоод) – нападач шаље ток празних оквира „СЕТТИНГС“, као одговор на које сервер мора да потврди пријем сваког захтева;
  • ЦВЕ-2019-9516 (цурење заглавља 0 дужине) – нападач шаље ток заглавља са нултим именом и нултом вредношћу, а сервер додељује бафер у меморији за складиштење сваког заглавља и не ослобађа га док се сесија не заврши ;
  • ЦВЕ-2019-9517 (Интерно баферовање података) - нападач се отвара
    ХТТП/2 клизни прозор за сервер да шаље податке без ограничења, али држи ТЦП прозор затвореним, спречавајући да се подаци стварно уписују у сокет. Затим, нападач шаље захтеве који захтевају велики одговор;

  • ЦВЕ-2019-9518 (поплава празних оквира) – Нападач шаље ток оквира типа ДАТА, ХЕАДЕРС, ЦОНТИНУАТИОН или ПУСХ_ПРОМИСЕ, али са празним корисним оптерећењем и без ознаке за завршетак тока. Сервер троши време на обраду сваког оквира, несразмерно пропусном опсегу који користи нападач.

Извор: опеннет.ру

Додај коментар