Vulnerabilità in l'implementazioni di u protocolu HTTP/2 chì facilita l'attacchi DoS

Una nova tecnica d'attaccu contr'à l'implementazioni HTTP/2 hè presentata chì simplifica l'attacchi di denegazione di serviziu esaurendu e risorse di u servitore. A vulnerabilità, chjamata in codice MadeYouReset, permette a manipulazione di i frame di cuntrollu HTTP/2 per inundà un servitore cù un gran numeru di richieste, bypassendu e restrizioni stabilite.

U prublema hè chì un cliente pò creà un numeru assai grande di flussi trattati cuncurrentemente, indipendentemente da u limite SETTINGS_MAX_CONCURRENT_STREAMS, scartendu ogni flussu in a fase iniziale. Questu scartà significa chì u cliente ùn hà micca bisognu d'aspittà una risposta da u servitore per mandà una nova dumanda in una cunnessione HTTP/2 stabilita. servitore è hè pussibule d'invià subitu un grande flussu cuntinuu di richieste, finu à chì a larghezza di banda di u canale di cumunicazione u permette.

U cliente si ferma secondu i ritardi trà l'inviu di una dumanda è a ricezione di una risposta (RTT, tempu di andata è ritornu) è pò realizà un attaccu cù un overhead minimu, mentre u servitore cuntinueghja à spende risorse per u trattamentu di e dumande entranti. Per esempiu, u servitore alloca strutture di dati per i novi flussi, analizza a dumanda, decomprime l'intestazione è currisponde à l'URL cù a risorsa. Quandu si attaccanu proxy inversi, l'attaccu pò sparghjesi à i backend à i quali u proxy hà u tempu di ridirizionà a dumanda prima ch'ella sia abbandunata.

A vulnerabilità s'assumiglia à u prublema Rapid Reset cunnisciutu prima (CVE-2023-44487) è hè causata da una discrepanza in a logica di reset di u flussu definita in a specificazione di u protocolu HTTP/2 è implementata in i prudutti finali. A specificazione permette à u cliente è à u servitore di resettà un flussu in ogni mumentu, ma in parechje implementazioni HTTP/2servitori Dopu à un tale reset, a dumanda cuntinueghja à esse trattata. A differenza chjave in questu novu attaccu hè chì a dumanda hè resettata da u servitore, invece di u cliente chì manda un frame cù a bandera RST_STREAM.

Un reset iniziatu da u servitore si verifica quandu si ricevenu richieste invalide, ma tali richieste sò scartate immediatamente senza inizià u so trattamentu cumpletu è senza trasmetteli à u backend. Per ottene un ciclu cumpletu di trattamentu di e richieste, un attaccante pò prima mandà una richiesta HTTP curretta, ma poi trasmette una sequenza incorretta di frame di cuntrollu HTTP/2. Tale attività porterà u servitore à inizià u trattamentu cumpletu di a richiesta, ma poi, per via di un errore in u trattamentu di i frame seguenti, resetterà u flussu (trasferisce u flussu cù a richiesta curretta à u statu RST_STREAM).


Vulnerabilità in l'implementazioni di u protocolu HTTP/2 chì facilita l'attacchi DoS

U prublema hè statu cunfirmatu in i servitori HTTP Apache Tomcat, Netty, Eclipse Jetty, Fastly, varnish, lighttpd, Zephyr RTOS. U prublema si verifica ancu in i siti è i servizii di u servitore Mozilla. Apache httpd, Apache Traffic Server, Node.js, LiteSpeed è HAProxy ùn sò micca affettati da u prublema. U statu di a vulnerabilità in nginx ùn hè micca determinatu.

Source: opennet.ru

Cumprate un hosting affidabile per i siti cù prutezzione DDoS, servitori VPS VDS 🔥 Cumprate un hosting di siti web affidabile cù prutezzione DDoS, servitori VPS VDS | ProHoster