Undersikers fan Netflix en Google
De problemen resultearre út komplikaasjes yntrodusearre yn it HTTP/2-protokol ferbûn mei it brûken fan binêre struktueren, in systeem foar it beheinen fan gegevensstreamen binnen ferbiningen, in meganisme foar streamprioritearing, en de oanwêzigens fan ICMP-like kontrôleberjochten dy't operearje by de HTTP/2-ferbining nivo (bygelyks ping-, reset- en streamynstellingen). In protte ymplemintaasjes beheinen de stream fan kontrôleberjochten net goed, behearden de prioriteitswachtrige net effisjint by it ferwurkjen fan oanfragen, of brûkten suboptimale ymplemintaasjes fan streamkontrôlealgoritmen.
De measte fan 'e identifisearre oanfalmetoaden komme del op it ferstjoeren fan bepaalde oanfragen nei de tsjinner, wat liedt ta it generearjen fan in grut oantal antwurden. As de kliïnt gjin gegevens fan 'e socket lêze en de ferbining net slute, foltôgje de antwurdbufferwachtrige oan' e serverkant kontinu. Dit gedrach soarget foar in lading op it wachtrige behearsysteem foar it ferwurkjen fan netwurkferbiningen en, ôfhinklik fan 'e ymplemintaasjefunksjes, liedt ta de útputting fan beskikbere ûnthâld of CPU-boarnen.
Identifisearre kwetsberens:
- CVE-2019-9511 (Data Dribble) - in oanfaller freget in grutte hoemannichte gegevens yn meardere diskusjes troch it manipulearjen fan de slide finstergrutte en threadprioriteit, wêrtroch de tsjinner twingt om de gegevens yn 1-byte blokken te wachtrige;
- CVE-2019-9512 (Ping Flood) - in oanfaller fergiftiget kontinu ping-berjochten oer in HTTP/2-ferbining, wêrtroch't de ynterne wachtrige fan ferstjoerde antwurden oan 'e oare kant oerstreamt;
- CVE-2019-9513 (Resource Loop) - in oanfaller makket meardere fersykthreads en feroaret kontinu de prioriteit fan 'e threads, wêrtroch't de prioriteitsbeam skodt;
- CVE-2019-9514 (Reset Flood) - in oanfaller makket meardere triedden
en stjoert in ûnjildich fersyk fia elke tried, wêrtroch't de tsjinner RST_STREAM-frames stjoert, mar se net akseptearje om de antwurdwachtrige te foljen; - CVE-2019-9515 (Settings Flood) - de oanfaller stjoert in stream fan lege "SETTINGS" frames, yn antwurd wêrop de tsjinner ûntfangst fan elk fersyk moat erkennen;
- CVE-2019-9516 (0-Length Headers Leak) - in oanfaller stjoert in stream fan kopteksten mei in nulnamme en in nulwearde, en de tsjinner jout in buffer yn it ûnthâld ta om elke koptekst op te slaan en lit it net los oant de sesje einiget ;
- CVE-2019-9517 (ynterne gegevensbuffering) - oanfaller iepenet
HTTP / 2 sliding finster foar de tsjinner te stjoeren gegevens sûnder beheinings, mar hâldt it TCP finster ticht, foarkomt dat gegevens werklik wurde skreaun nei de socket. Dêrnei stjoert de oanfaller fersiken dy't in grut antwurd fereaskje; - CVE-2019-9518 (Empty Frames Flood) - In oanfaller stjoert in stream fan frames fan type DATA, HEADERS, CONTINUATION, of PUSH_PROMISE, mar mei lege lading en gjin flagge foar streambeëiniging. De tsjinner besteget tiid oan it ferwurkjen fan elk frame, net evenredich oan de bânbreedte dy't konsumearre wurdt troch de oanfaller.
Boarne: opennet.ru