CVE-2026-67228 in RabbitMQ
Riassunto
di VulDB • 23/09/2026
RabbitMQ è un broker di messaggistica e streaming. Prima delle versioni 4.2.7 e 4.3.1, il percorso di ricerca dei parametri runtime forza la conversione del segmento URL :component in un atomo tramite rabbit_data_coercion:to_atom/1 all'interno della funzione lookup_component/1 (deps/rabbit/src/rabbit_runtime_parameters.erl), creando un nuovo atomo per qualsiasi valore mai visto prima. Esiste già una helper sicura, rabbit_registry:binary_to_type/1, che utilizza binary_to_existing_atom con gestione delle eccezioni, ma non viene utilizzata in questo punto di chiamata. lookup_component/1 chiama rabbit_data_coercion:to_atom(Component) sul segmento :component dell'URL della richiesta, convertendo una stringa fornita dall'attaccante in un nuovo atomo. Poiché la tabella degli atomi Erlang ha una dimensione limitata e gli atomi non vengono mai raccolti come spazzatura (garbage collected), un policy maker autorizzato che emette circa un milione di richieste con valori component distinti può esaurire la tabella degli atomi e far crashare il nodo, causando una negazione del servizio (DoS). I prerequisiti per l'exploit richiedono privilegi da policymaker e circa un milione di richieste. Questo problema è risolto nelle versioni 4.2.7 e 4.3.1.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.