CVE-2026-62303 in Pistache
Riassunto
di VulDB • 30/10/2026
Pistache è un toolkit REST ad alte prestazioni scritto in C++. Dalla versione 0.0.5 alla 0.4.26, la funzione `SegmentTreeNode::sanitizeResource()` nel file `src/server/router.cc` utilizza `std::regex_replace()` con l'espressione regolare `//+` per comprimere le barre consecutive. Con libstdc++, un percorso contenente decine di migliaia di caratteri slash consecutivi può causare una ricorsione profonda tale da esaurire lo stack e far crashare il processo. Le funzioni `Router::route()`, `Router::addRoute()` e `Router::removeRoute()` raggiungono questa fase di normalizzazione. Lo sfruttamento remoto non autenticato è condizionato a un deployment che consenta percorsi di richiesta sufficientemente lunghi, ad esempio aumentando il valore di `Endpoint::Options::maxRequestSize()` oltre il limite predefinito di 4096 byte o inoltrando percorsi lunghi attraverso un front-end. L'uso diretto dell'API del router è anch'esso interessato quando le stringhe controllate dall'attaccante per route o risorse raggiungono il normalizzatore. Le build native hanno riprodotto un crash con circa 24.000 slash consecutivi, sebbene la soglia esatta dipenda dallo stack e dalla libreria standard; il guasto dimostrato è l'esaurimento dello stack (stack exhaustion) piuttosto che l'uso di memoria non inizializzata. Una correzione nel codice sorgente sostituisce la normalizzazione ricorsiva basata su espressioni regolari con un passaggio iterativo, ma al momento della pubblicazione nessuna release del repository contenitore era stata verificata come corretta.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.