{"id":113646,"date":"2024-02-16T22:02:41","date_gmt":"2024-02-16T20:02:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/uyazvimosti-v-node-js-i-libuv"},"modified":"2024-02-16T22:02:41","modified_gmt":"2024-02-16T20:02:41","slug":"uyazvimosti-v-node-js-i-libuv","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/uyazvimosti-v-node-js-i-libuv","title":{"rendered":"Vulnerabilit\u00e0 in Node.js e libuv","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Sono disponibili patch correttive per la piattaforma server JavaScript Node.js 21.6.2, 20.11.1, 18.19.1, che risolvono 8 vulnerabilit\u00e0, di cui 4 classificate come ad alto rischio:    <\/p>\n<ul>\n<li class=\"l\"> CVE-2024-21892 \u2014 vulnerabilit\u00e0 che consente a un utente non privilegiato di inserire codice ereditato da privilegi elevati, sotto cui viene eseguito il processo. La vulnerabilit\u00e0 \u00e8 causata da un errore nell'implementazione delle eccezioni che consente di gestire le variabili di ambiente impostate da un utente non privilegiato durante un processo con privilegi elevati. L'eccezione avrebbe dovuto essere conceduta solo per le autorizzazioni CAP_NET_BIND_SERVICE, ma a causa di un errore \u00e8 stata applicata anche ad alcune altre autorizzazioni.\n<li class=\"l\"> CVE-2024-22019 \u2014 denial of service dovuto all'esaurimento delle risorse disponibili (carico sulla CPU e consumo di larghezza di banda) durante l'elaborazione di richieste chunked formattate appositamente da un server HTTP incorporato, portando alla lettura di un numero illimitato di byte in una sola connessione.\n<li class=\"l\"> CVE-2024-21896 \u2014 uscita dai limiti della directory di base nei percorsi dei file. La vulnerabilit\u00e0 consente di eludere la normalizzazione dei percorsi dei file utilizzando path.resolve() quando il percorso \u00e8 passato tramite la classe Buffer. Per ottenere un simile percorso, dopo la verifica viene invocato il metodo Buffer.from(), ma nell'applicazione potrebbe essere utilizzato Buffer.prototype.utf8Write, portando a una sostituzione del contenuto dopo l'esecuzione di path.resolve() e causando la vulnerabilit\u00e0.\n<li class=\"l\"> CVE-2024-22017 \u2014 la chiamata a setuid() non annulla tutte le autorizzazioni. In particolare, setuid() non influisce sulle operazioni io_uring utilizzate in libuv se queste sono state inizializzate prima della chiamata a setuid().\n<li class=\"l\"> CVE-2023-46809 \u2014 vulnerabilit\u00e0 nell'API privateDecrypt() che consente l'applicazione dell'attacco Marvin per decrittografare RSA basato sulla misurazione dei tempi delle operazioni.\n<li class=\"l\"> CVE-2024-21891 \u2014 possibilit\u00e0 di eludere il modello di controllo degli accessi utilizzando gestori personalizzati per la normalizzazione dei percorsi dei file.\n<li class=\"l\"> CVE-2024-21890 \u2014 gestione errata delle maschere nei parametri \u2018--allow-fs-read\u2019 e \u2018--allow-fs-write\u2019. Ad esempio, \u2018--allow-fs-read=\/home\/node\/.ssh\/*.pub\u2019 porter\u00e0 a concedere accesso all'intero contenuto di \u2018.ssh\/\u2019, e non solo ai file con estensione \u2018.pub\u2019, poich\u00e9 la maschera \u2018*\u2019 viene elaborata come ultimo elemento del percorso.\n<li class=\"l\"> CVE-2024-22025 \u2014 denial of service a causa dell'esaurimento delle risorse durante la decodifica di dati compressi nel formato Brotli ottenuti tramite una chiamata fetch().          <\/ul>\n<p>In aggiunta, si segnala la pubblicazione della libreria libuv 1.48.0, utilizzata in Node.js per il multiplexing delle connessioni e l'elaborazione asincrona di input\/output. Oltre a Node.js, la libreria \u00e8 utilizzata anche nei server DNS BIND 9 e Knot DNS, nel server HTTP H2O, nel framework Lua Luvit,  <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/vps\/abuzoustojchivye-vps\/\"   title=\"macchina virtuale\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4302\">macchina virtuale<\/a> MoarVM, nel linguaggio Julia e nel framework Python uvloop. Nella nuova versione \u00e8 stata corretta una vulnerabilit\u00e0 (CVE-2024-24806) che si manifesta nei progetti che utilizzano libuv, consentendo di effettuare un attacco SSRF (Server-side request forgery) per accedere all'API interna. La vulnerabilit\u00e0 \u00e8 originata dal troncamento del nome host da parte della funzione uv_getaddrinfo() a 256 caratteri durante la fase di risoluzione del dominio tramite la funzione getaddrinfo(), il che pu\u00f2 portare a definire quello sbagliato <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/lir\/ipv4\/\"   title=\"Indirizzi IP\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"665\">Indirizzi IP<\/a> e l'elusione dei controlli. Ad esempio, i servizi come MySpace, che creano sottodomini del tipo 'username.example.com', possono essere attaccati specificando un nome utente lungo.      <\/p>\n<p>\u00c8 stata rilasciata anche un'aggiornamento del client HTTP undici utilizzato in Node.js, versione 5.28.3, in cui \u00e8 stata corretta una vulnerabilit\u00e0 (CVE-2024-24758) causata dalla mancanza di pulizia dell'intestazione HTTP Proxy-Authorization durante il reindirizzamento delle richieste.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60612\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 21.6.2, 20.11.1, 18.19.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e 8 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 4 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: CVE-2024-21892 &#8212; \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u0435\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u043a\u043e\u0434\u0430, \u043d\u0430\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0438, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u044b\u0437\u0432\u0430\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u043e\u0439 \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0441 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u044f\u043c\u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043d\u0435\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c. \u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-113646","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 21.6.2, 20.11.1, 18.19.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e 8 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 4 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: CVE-2024-21892 -.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/uyazvimosti-v-node-js-i-libuv\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 Node.js \u0438 libuv | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 21.6.2, 20.11.1, 18.19.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e 8 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 4 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: CVE-2024-21892 -.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/uyazvimosti-v-node-js-i-libuv\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-02-16T20:02:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-02-16T20:02:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Vulnerabilit\u00e0 in Node.js e libuv | ProHoster","description":"Sono disponibili rilasci correttivi per la piattaforma server JavaScript Node.js versioni 21.6.2, 20.11.1, 18.19.1, in cui sono state corrette 8 vulnerabilit\u00e0, di cui 4 hanno un alto livello di gravit\u00e0: CVE-2024-21892 -.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/uyazvimosti-v-node-js-i-libuv","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 Node.js \u0438 libuv | ProHoster","og:description":"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 21.6.2, 20.11.1, 18.19.1, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e 8 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 4 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438: CVE-2024-21892 -.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/uyazvimosti-v-node-js-i-libuv","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-02-16T20:02:41+00:00","article:modified_time":"2024-02-16T20:02:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"113646","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-02-08 20:23:59","updated":"2026-02-08 20:23:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/113646","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=113646"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/113646\/revisions"}],"predecessor-version":[{"id":164177,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/113646\/revisions\/164177"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=113646"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=113646"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=113646"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}