Yo te divilge enfòmasyon sou metòd atak "Inondasyon Kontinyasyon" ki afekte plizyè aplikasyon pwotokòl HTTP/2, tankou Apache httpd, Apache Traffic Server, Node.js, oghttp, Go net/http2, Envoy, oghttp ak nghttp2. Ou ka itilize vilnerabilite a pou fè atak sou serveurs ki sipòte HTTP/2.0 epi, tou depann de aplikasyon an, mennen nan fatig memwa (sispann pwosesis demann oswa ekraze pwosesis) oswa kreye yon chaj CPU segondè (ralantiman nan pwosesis demann). Dapre chèchè a ki te dekouvri vilnerabilite a, pwoblèm nan idantifye pi danjere pase vilnerabilite "Rapid Reset" yo te jwenn ane pase a, ki te itilize pou fè pi gwo atak DDoS nan moman sa a.
Gwo nivo danje a eksplike pa lefèt ke pou deranje travay la sèvèPou lakòz yon aksidan, oubyen yon degradasyon pèfòmans siyifikatif, li sifi pou kreye yon pakèt demann espesyalman fèt ki soti nan yon sèl òdinatè òdinè. Nan sèten ka, menm yon sèl koneksyon TCP sifi pou fè yon atak. Anplis, trafik ki gen rapò ak atak la pa parèt byen nan jounal yo parapò ak demann itilizatè òdinè yo.
Se vilnerabilite a ki te koze pa pwosesis la nan HEATERS ak CONTINUATION ankadreman nan demann HTTP/2. Yo itilize ankadreman HEADER nan HTTP/2 pou voye antèt HTTP, epi yo itilize ankadreman CONTINUATION pou divize antèt HTTP yo an plizyè etap (pa egzanp, lè tèt yo pa anfòm nan yon sèl ankadreman, oswa lè tèt yo ka ranpli. nan etap aktyèl la yo ta dwe voye an premye, ak Lè sa a, renvoie headers ki gen valè yo poko ka detèmine). Lè w ap voye tèt yo nan plizyè etap, yo voye yon ankadreman HEADERS san END_HEADERS drapo a an premye, ki te swiv pa plizyè ankadreman CONTINUATION ak tèt adisyonèl, epi yon ankadreman CONTINUATION ak drapo END_HEADERS la fini lis la.
Metòd atak la konsiste de voye yon kouran kontinyèl ankadreman KONTINYASYON san yo pa mete drapo END_HEADERS la. Aktivite sa a lakòz transmisyon sèvè Yon gwo kantite header, ke sèvè a estoke nan RAM jiskaske memwa ki disponib la fin itilize. Pou kreye yon gwo chaj CPU, anplis fatig memwa, yon atakè ka eksplwate konpresyon ankadreman CONTINUATION lè l sèvi avèk fòma HPACK la, ki mande efò enfòmatik pou analize. Nan aplikasyon HTTP/1.1 yo, limit gwosè header ak delè koneksyon yo te itilize pou pwoteje kont inondasyon header. Akòz konpleksite pwotokòl la ki ogmante, anpil aplikasyon HTTP/2 pa t aplike pwoteksyon sa a kont voye header enfini.
Vilnerabilite a pi danjere pou itilizatè Node.js (CVE-2024-27983), paske aplikasyon sa a ka lakòz yon aksidan lè yo voye jis kèk ankadreman sou sèvè a. Akòz kondisyon ras yo nan Node.js, yo nan lòd yo lakòz yon avòtman atravè yon chèk Assert, li sifi pou mete fen nan koneksyon pandan w ap voye yon kouran header enkonplè (kraze si yon ankadreman CONTINUATION ak drapo END_HEADERS la poko rive lè koneksyon yo fèmen. ). Vilnerabilite a fiks nan Node.js 18.20.1, 21.7.2 ak 20.12.1, osi byen ke nan dènye degaje bibliyotèk llhttp ak undici. Nouvo vèsyon Node.js elimine tou yon vilnerabilite mwens danjere (CVE-2024-27982) nan klas "demann kontrebann", ki pèmèt, atravè manipilasyon valè "Content Length", antre nan sa ki nan demann lòt itilizatè yo. trete nan menm fil ant frontend a ak backend.
KONTINYASYON jere vilnerabilite nan lòt aplikasyon HTTP/2.0:
- oghttp (CVE-2024-27919) - konsomasyon memwa san limit.
- Tempesta FW (CVE-2024-2758) - restriksyon kontoune.
- PHP bibliyotèk amphp/http, amphp/http-client ak amphp/http-sèvè (CVE-2024-2653) - konsomasyon memwa san limit, jiska fatig konplè nan memwa ki disponib.
- Ale pake net/http (CVE-2023-45288) - kreye gwo chaj CPU.
- nghttp2 library (CVE-2024-28182) - refi sèvis.
- Apache Httpd (CVE-2024-27316 - twòp konsomasyon memwa ak chaj CPU).
- Apache Traffic Server (CVE-2024-31309 - twòp konsomasyon resous.
- Envoy (CVE-2024-30255) - kreye yon gwo chaj sou CPU a (yon fil 300Mbit/s oblije chaje konplètman yon sèl CPU nwayo).
Sous: opennet.ru
