{"id":182826,"date":"2026-08-11T04:54:22","date_gmt":"2026-08-11T02:54:22","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve"},"modified":"2026-08-11T04:54:22","modified_gmt":"2026-08-11T02:54:22","slug":"v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve","title":{"rendered":"In freenginx e nginx \u00e8 stata aggiunta una verifica della dimensione della variabile testuale prima di scriverci i dati (+ CVE)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>          <a rel=\"nofollow\" id=\"memories_button\" href=\"#\" title=\"Monitorare\"><i class=\"icon-bell\"><\/i><\/a><br \/>3                            <\/p>\n<p><b>TL;DR<\/b>: Affrontando il terzo overflow del buffer scoperto nel 2026 (e, secondo F5, RCE se non c'\u00e8 ASLR) durante l'uso di espressioni regolari e variabili, lo sviluppatore di freenginx Maxim Dunin ha deciso che era giunto il momento di porre fine a questa situazione e ha aggiunto al suo prodotto un controllo della dimensione della variabile prima di scriverci i dati. Questa novit\u00e0 \u00e8 stata successivamente adottata anche da nginx, il che offre speranza per la cessazione di nuove CVE su questo argomento.<\/p>\n<p>Ora i dettagli.<\/p>\n<p> Il 19 giugno \u00e8 stato fatto <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/d172f506ab5f\">commit<\/a> in freenginx, aggiungendo nel descrittore della variabile un campo end, che indica la fine del buffer. In precedenza c'era solo un puntatore all'inizio (pos), mentre la lunghezza necessaria veniva calcolata (e ora viene calcolata) in anticipo, e al momento della copia dei dati nella variabile si presumeva che la lunghezza calcolata in precedenza garantisse che i dati entrassero nel buffer. Sfortunatamente, gi\u00e0 due volte a maggio 2026 a causa di diverse omissioni questo non si \u00e8 verificato (<a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/security\/18295901\">1 (linux.org.ru)<\/a>, <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/security\/18300022\">2 (linux.org.ru)<\/a>), il che ha portato a overflow del buffer e conseguenze sfavorevoli. Ora, al momento della creazione del buffer della variabile, viene riempito anche il puntatore alla sua fine e prima di scrivere i dati nella variabile, se i dati non ci stanno, l'elaborazione della richiesta terminer\u00e0 in modo controllato con un errore. Ci\u00f2 significa che gli errori di calcolo della lunghezza potrebbero persistere, ma ora non danneggeranno la memoria, ma falliranno solo una specifica richiesta http. I commit successivi (<a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/7e4d7feb4c77\">2 (freenginx.org)<\/a>, <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/ceff7ca7785a\">3 (freenginx.org)<\/a>) hanno aggiunto una protezione analoga in altre parti del codice, incluso il codice di gestione del log di accesso. Il 7 luglio \u00e8 stata pubblicata la versione <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/download\/freenginx-1.31.3.tar.gz\">freenginx 1.31.3<\/a>, che includeva questa correzione.<\/p>\n<p><noindex><\/p>\n<p>Il 15 luglio questi commit sono stati adottati da nginx (<a rel=\"nofollow\" href=\"https:\/\/github.com\/nginx\/nginx\/commit\/b767540492e8c79a58bc26034d3bab2f708b7bd1\">1 (github.com)<\/a>, <a rel=\"nofollow\" href=\"https:\/\/github.com\/nginx\/nginx\/commit\/4d32a2703c79f92b7a99ce3547759cc599d6f83e\">2 (github.com)<\/a>, <a rel=\"nofollow\" href=\"https:\/\/github.com\/nginx\/nginx\/commit\/25f920eca977139dc6fc7638b419169a602a0064\">3 (github.com)<\/a>, per qualche motivo invertendo il secondo e il terzo nella catena), al problema \u00e8 stato assegnato <a rel=\"nofollow\" href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2026-42533\">CVE-2026-42533<\/a>, e F5 ha rilasciato un ufficiale <a rel=\"nofollow\" href=\"https:\/\/my.f5.com\/manage\/s\/article\/K000162097\">SA (f5.com)<\/a>.<\/p>\n<p><\/noindex><\/p>\n<p>Riguardo a una specifica vulnerabilit\u00e0 stavolta: si manifesta durante l'uso della direttiva map con regex e parametri evidenziati. A proposito delle altre condizioni necessarie per il suo attivarsi, il testo nella descrizione del commit e il testo in SA differiscono leggermente: in SA si indica che successivamente dovrebbe esserci il calcolo di una certa stringa che utilizza il parametro evidenziato rimasto da map, prima del risultato di questo stesso map. Nella descrizione del commit, nell'esempio tra questi passaggi \u00e8 coinvolta anche la resettazione di una variabile contenente il parametro evidenziato. Ad ogni modo, nella maggior parte degli nginx avviati \u00e8 probabile che tale cosa non venga riscontrata e la vulnerabilit\u00e0 in tal modo ha interessato pochi. \u00c8 anche importante notare che non sembra esserci una correzione del calcolo della lunghezza specificamente in questo caso nelle modifiche commit, c'\u00e8 solo una protezione che trasforma il problema in un fallimento controllato della richiesta http. Anche se il 19 luglio in freenginx sono stati aggiunti alcuni correttivi (<a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/5bfb1aa8b443\">5bfb<\/a>, <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/762271b9b20c\">7622<\/a>, <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/hg\/nginx\/rev\/b9068e5a711c\">b906<\/a>) al calcolo della lunghezza per una situazione simile, ma non \u00e8 chiaro al volo se sia o meno. <\/p>\n<p>La vulnerabilit\u00e0 \u00e8 apparsa nella versione nginx 0.9.6, le correzioni sono state incluse nelle versioni freenginx 1.31.3, nginx 1.30.4, nginx 1.31.3.<\/p>\n<p> In SA nginx sono espressi ringraziamenti a diverse persone per le segnalazioni indipendenti sulle vulnerabilit\u00e0 e per il rispetto dei \u00abstandard di divulgazione coordinata\u00bb:<\/p>\n<blockquote><p><noindex><\/p>\n<p> F5 riconosce Ming Xuan, DKD (@pidifn), Ji\u2019an Zhou e Zhen Yan di AntAISecurityLab, Rafael Gacek, Sergii Negodiuk di EVO.company, Lam Jun Rong di Calif.io, Mufeed VH di Winfunc Research (winfunc.com), Vexera AI (<a rel=\"nofollow\" href=\"https:\/\/vexera.ai\">https:\/\/vexera.ai<\/a>), Tu Tran Dinh (@1w4y), Stan Shaw (cyberstan), qianshuidewajueji, zenneth (randomguy6407), Zhenpeng (Leo) Lin di depthfirst, Lukas Johannes Moeller, Melih Tolga Sahin di Vodafone T\u00fcrkiye, Ayoub Nabil Boubagrat (GitHub: @ayoubnabil) e Milan Jovic (Kljunowsky) per aver portato questa questione alla nostra attenzione in modo indipendente e per aver seguito i massimi standard di divulgazione coordinata.<\/p>\n<p><\/noindex><\/p><\/blockquote>\n<p>In freenginx le informazioni associate alla correzione si limitano fondamentalmente a un messaggio nel commit. In <a rel=\"nofollow\" href=\"https:\/\/freenginx.org\/ru\/CHANGES.ru\">changelog<\/a>-questa correzione non \u00e8 neppure contrassegnata con il termine \u00absicurezza\u00bb (security) n\u00e9 con \u00abcorrezione\u00bb (bugfix), ma semplicemente con \u00abaggiunta\u00bb (feature). Probabilmente, l'autore non ha ritenuto questa problematica critica. Non \u00e8 stato possibile verificare come si ricolleghino le segnalazioni del problema da parte delle persone menzionate in F5 e il commit preso da freenginx, se abbiano informato (o qualcun altro) l'autore di freenginx riguardo al problema. <\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/security\/18354205\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>3 TL;DR: \u0421\u0442\u043e\u043b\u043a\u043d\u0443\u0432\u0448\u0438\u0441\u044c \u0441 \u0442\u0440\u0435\u0442\u044c\u0438\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0437\u0430 2026 \u0433\u043e\u0434 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u0431\u0443\u0444\u0435\u0440\u0430 (\u0438, \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u0438 F5, RCE \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 ASLR) \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0440\u0435\u0433\u044d\u043a\u0441\u043f\u0430\u043c\u0438 \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a freenginx \u041c\u0430\u043a\u0441\u0438\u043c \u0414\u0443\u043d\u0438\u043d \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u043f\u043e\u0440\u0430 \u044d\u0442\u043e \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u0442\u044c, \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0432 \u0441\u0432\u043e\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043d\u0435\u0451 \u0434\u0430\u043d\u043d\u044b\u0435. \u041e\u0442\u0442\u0443\u0434\u0430 \u044d\u0442\u043e \u043d\u043e\u0432\u043e\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0443\u0442\u0430\u0449\u0438\u043b\u0438 \u043a \u0441\u0435\u0431\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-182826","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=\"3 TL;DR: \u0421\u0442\u043e\u043b\u043a\u043d\u0443\u0432\u0448\u0438\u0441\u044c \u0441 \u0442\u0440\u0435\u0442\u044c\u0438\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0437\u0430 2026 \u0433\u043e\u0434 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u0431\u0443\u0444\u0435\u0440\u0430 (\u0438, \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u0438 F5.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Emin Berklin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve\" \/>\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\u0412 freenginx \u0438 nginx \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043d\u0435\u0451 \u0434\u0430\u043d\u043d\u044b\u0435 (+ CVE) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"3 TL;DR: \u0421\u0442\u043e\u043b\u043a\u043d\u0443\u0432\u0448\u0438\u0441\u044c \u0441 \u0442\u0440\u0435\u0442\u044c\u0438\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0437\u0430 2026 \u0433\u043e\u0434 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u0431\u0443\u0444\u0435\u0440\u0430 (\u0438, \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u0438 F5.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve\" \/>\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=\"2026-08-11T02:54:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-08-11T02:54:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47In freenginx e nginx \u00e8 stata aggiunta una verifica della dimensione della variabile di testo prima di scrivere i dati al suo interno (+ CVE) | ProHoster","description":"3 TL;DR: Affrontando il terzo overflow buffer rilevato nel 2026 (e, secondo F5.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve","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\u0412 freenginx \u0438 nginx \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043d\u0435\u0451 \u0434\u0430\u043d\u043d\u044b\u0435 (+ CVE) | ProHoster","og:description":"3 TL;DR: \u0421\u0442\u043e\u043b\u043a\u043d\u0443\u0432\u0448\u0438\u0441\u044c \u0441 \u0442\u0440\u0435\u0442\u044c\u0438\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0437\u0430 2026 \u0433\u043e\u0434 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u0431\u0443\u0444\u0435\u0440\u0430 (\u0438, \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u0438 F5.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/v-freenginx-i-nginx-dobavili-proverku-razmera-tekstovoj-peremennoj-pered-tem-kak-zapisyvat-v-neyo-dannye-cve","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":"2026-08-11T02:54:22+00:00","article:modified_time":"2026-08-11T02:54:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"182826","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"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-08-11 06:43:49","updated":"2026-08-11 06:43:49","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\/182826","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\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=182826"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/182826\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=182826"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=182826"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=182826"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}