{"id":2168,"date":"2026-05-16T07:25:17","date_gmt":"2026-05-16T07:25:17","guid":{"rendered":"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/"},"modified":"2026-05-16T07:25:17","modified_gmt":"2026-05-16T07:25:17","slug":"cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda","status":"publish","type":"post","link":"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/","title":{"rendered":"CVE-2026-42945: kritinis 18 met\u0173 Nginx pa\u017eeid\u017eiamumas leid\u017eia nuotoliniu b\u016bdu vykdyti kod\u0105"},"content":{"rendered":"<p><\/p>\n<div id=\"\">\n<p>Vie\u0161ai buvo atskleistas kritinis Nginx perra\u0161ymo modulio pa\u017eeid\u017eiamumas, atskleid\u017eiantis kr\u016bvos buferio perpildym\u0105, kuris egzistuoja nuo 2008 m. \u0160is pa\u017eeid\u017eiamumas, pa\u017eym\u0117tas kaip CVE-2026-42945 ir pavadintas \u201eNginx Rift\u201c, leid\u017eia neautentifikuotai nuotoliniu b\u016bdu vykdyti kod\u0105 serveriuose ir naudojant konkre\u010dias rewrite direktyvas. Atradimas buvo atliktas savaranki\u0161kai, naudojant AI varom\u0105 saugos analiz\u0117s sistem\u0105, pabr\u0117\u017edama tiek automatinio pa\u017eeid\u017eiamumo aptikimo gali\u0105, tiek skub\u0173 poreik\u012f nedelsiant pataisyti.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_83 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Turinys:<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Pazeidziamumo_apzvalga\" >Pa\u017eeid\u017eiamumo ap\u017evalga<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Pagrindine_priezastis_klasikine_dvieju_praejimu_variklio_klaida\" >Pagrindin\u0117 prie\u017eastis: klasikin\u0117 dviej\u0173 pra\u0117jim\u0173 variklio klaida<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Eksploatavimo_grandine\" >Eksploatavimo grandin\u0117<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#1_veiksmas_suaktyvinkite_buferio_perpildyma\" >1 veiksmas: suaktyvinkite buferio perpildym\u0105<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#2_veiksmas_pritraukite_Feng_Shui_uz_korupcija\" >2 veiksmas: pritraukite Feng Shui u\u017e korupcij\u0105<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#3_veiksmas_kodo_vykdymas_per_baseino_valyma\" >3 veiksmas: kodo vykdymas per baseino valym\u0105<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Paveiktos_Nginx_versijos\" >Paveiktos Nginx versijos<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Isnaudojimo_prielaidos\" >I\u0161naudojimo prielaidos<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Dazni_pazeidziami_modeliai\" >Da\u017eni pa\u017eeid\u017eiami modeliai<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#ASLR_ir_realaus_pasaulio_rizika\" >ASLR ir realaus pasaulio rizika<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Kodel_ASLR_ne_visiskai_apsaugo\" >Kod\u0117l ASLR ne visi\u0161kai apsaugo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Istorinis_precedentas\" >Istorinis precedentas<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Svelninimo_strategijos\" >\u0160velninimo strategijos<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Neatideliotini_veiksmai\" >Neatid\u0117liotini veiksmai<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Laikini_sprendimai\" >Laikini sprendimai<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Atradimo_metodas_AI_padedamas_pazeidziamumo_aptikimas\" >Atradimo metodas: AI padedamas pa\u017eeid\u017eiamumo aptikimas<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Poveikis_saugumui\" >Poveikis saugumui<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Dviasmenis_kardas\" >Dvia\u0161menis kardas<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Poveikio_vertinimas\" >Poveikio vertinimas<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Rinkos_dalis\" >Rinkos dalis<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Paveikti_naudojimo_atvejai\" >Paveikti naudojimo atvejai<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Pardavejo_atsakymas\" >Pardav\u0117jo atsakymas<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Koncepcijos_irodymas\" >Koncepcijos \u012frodymas<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Rekomendacijos_sistemos_administratoriams\" >Rekomendacijos sistemos administratoriams<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Rekomendacijos_kurejams\" >Rekomendacijos k\u016br\u0117jams<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/infonaujiena.lt\/index.php\/2026\/05\/16\/cve-2026-42945-kritinis-18-metu-nginx-pazeidziamumas-leidzia-nuotoliniu-budu-vykdyti-koda\/#Isvada\" >I\u0161vada<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Pazeidziamumo_apzvalga\"><\/span>Pa\u017eeid\u017eiamumo ap\u017evalga<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><strong>CVE ID<\/strong>: CVE-2026-42945<br \/><strong>Paveiktas komponentas<\/strong>: ngx_http_perra\u0161ymo_modulis<br \/><strong>Pa\u017eeid\u017eiamumo tipas<\/strong>: kr\u016bvos buferio perpildymas<br \/><strong>CVSS balas<\/strong>: Kritinis<br \/><strong>Paveiktos versijos<\/strong>: Nginx 0.6.27\u20131.30.0<br \/><strong>Fiksuotos versijos<\/strong>: Nginx 1.31.0, 1.30.1<br \/><strong>Poveikis<\/strong>: neautentifikuotas nuotolinis kodo vykdymas (RCE)<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Pagrindine_priezastis_klasikine_dvieju_praejimu_variklio_klaida\"><\/span>Pagrindin\u0117 prie\u017eastis: klasikin\u0117 dviej\u0173 pra\u0117jim\u0173 variklio klaida<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u201eNginx\u201c scenarij\u0173 variklis naudoja dviej\u0173 eig\u0173 proces\u0105, kad tvarkyt\u0173 kintam\u0173j\u0173 pakeitim\u0105:<\/p>\n<ol>\n<li><strong>Pirmasis prava\u017eiavimas (ilgio skai\u010diavimas)<\/strong>: Apskai\u010diuokite reikiam\u0105 buferio dyd\u012f<\/li>\n<li><strong>Antrasis leidimas (kopija)<\/strong>: nukopijuokite duomenis \u012f skirt\u0105 bufer\u012f<\/li>\n<\/ol>\n<p>Pa\u017eeid\u017eiamumas kyla d\u0117l nenuoseklumo, kaip <code>is_args<\/code> v\u0117liava tvarkoma tarp \u0161i\u0173 dviej\u0173 pra\u0117jim\u0173:<\/p>\n<p><strong>Klaida:<\/strong><\/p>\n<ul>\n<li>The <code>is_args<\/code> v\u0117liav\u0117l\u0117 nustatoma pagrindiniame variklyje, kai perra\u0161ymo pakeitime yra a <code>?<\/code> charakteris<\/li>\n<li>Ta\u010diau ilgio skai\u010diavimo leidimas veikia su naujai nuliniu antriniu varikliu, kur <code>is_args = 0<\/code><\/li>\n<li>D\u0117l to ilgio skai\u010diavimas gr\u0105\u017eina neapdorot\u0105 fiksavimo ilg\u012f<\/li>\n<li>Kopijavimo leidimas mato <code>is_args = 1<\/code> ir skambina <code>ngx_escape_uri<\/code> su <code>NGX_ESCAPE_ARGS<\/code><\/li>\n<li>\u0160is pa\u0161alinimas i\u0161ple\u010dia kiekvien\u0105 i\u0161einam\u0105 bait\u0105 iki 3 bait\u0173 (pvz., tarpas tampa <code>%20<\/code>)<\/li>\n<li>Kopijavimo operacija perpildo per ma\u017eo dyd\u017eio kr\u016bvos bufer\u012f u\u017epuoliko valdomais URI duomenimis<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Eksploatavimo_grandine\"><\/span>Eksploatavimo grandin\u0117<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Vie\u0161asis koncepcijos \u012frodymas (PoC) parodo vis\u0105 naudojimo grandin\u0119:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"1_veiksmas_suaktyvinkite_buferio_perpildyma\"><\/span>1 veiksmas: suaktyvinkite buferio perpildym\u0105<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Pa\u017eeid\u017eiamum\u0105 sukelia konkretus Nginx konfig\u016bracijos modelis:<\/p>\n<pre><code class=\"language-nginx\">location ~ ^\/api\/(.*)$ {\n    rewrite ^\/api\/(.*)$ \/backend?path=$1 break;\n    set $captured $1;\n}\n<\/code><\/pre>\n<p>Kai siun\u010diama u\u017eklausa su ilgu URI su specialiaisiais simboliais, perra\u0161ymo operacijos metu \u012fvyksta buferio perpildymas.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"2_veiksmas_pritraukite_Feng_Shui_uz_korupcija\"><\/span>2 veiksmas: pritraukite Feng Shui u\u017e korupcij\u0105<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>I\u0161naudojimas naudoja \u201ekry\u017emini\u0173 u\u017eklaus\u0173 kr\u016bvos feng shui\u201c, kad b\u016bt\u0173 nustatyta a <code>ngx_pool_t<\/code> strukt\u016bra \u0161alia perpildyto buferio. Tai apima:<\/p>\n<ol>\n<li>Keli\u0173 POST u\u017eklaus\u0173 siuntimas su kruop\u0161\u010diai sukurtais korpusais<\/li>\n<li>Kr\u016bvos apipur\u0161kimas duomenimis, kurie bus paskirstyti \u0161alia pa\u017eeid\u017eiamo buferio<\/li>\n<li>Sugadindamas <code>cleanup<\/code> \u017eymekl\u012f gretimame baseino strukt\u016broje<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"3_veiksmas_kodo_vykdymas_per_baseino_valyma\"><\/span>3 veiksmas: kodo vykdymas per baseino valym\u0105<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Kai baseinas sunaikinamas, sugadintas valymo \u017eymeklis nukreipiamas \u012f klastot\u0119 <code>ngx_pool_cleanup_s<\/code> strukt\u016bra, kuri skambina <code>system()<\/code> su u\u017epuoliko valdomais argumentais.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Paveiktos_Nginx_versijos\"><\/span>Paveiktos Nginx versijos<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><strong>Nginx atviras \u0161altinis:<\/strong><\/p>\n<ul>\n<li>Paveikta: nuo 0.6.27 iki 1.30.0<\/li>\n<li>I\u0161taisyta: 1.31.0, 1.30.1<\/li>\n<\/ul>\n<p><strong>Nginx Plus:<\/strong><\/p>\n<ul>\n<li>Paveikta: R32\u2013R36<\/li>\n<li>Pataisyta: R36 P4, R35 P2, R32 P6<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Isnaudojimo_prielaidos\"><\/span>I\u0161naudojimo prielaidos<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Nors pa\u017eeid\u017eiamumas yra rimtas, i\u0161naudojimui reikia tam tikr\u0173 s\u0105lyg\u0173:<\/p>\n<ol>\n<li><strong>Perra\u0161yti direktyv\u0105<\/strong>: B\u016btina naudoti <code>rewrite<\/code> su ne\u012fvardytais \u012fra\u0161ais (pvz., <code>$1<\/code>, <code>$2<\/code>) ir a <code>?<\/code> pakaitin\u0117je eilut\u0117je<\/li>\n<li><strong>Nustatyti direktyv\u0105<\/strong>: Turi b\u016bti paskesnis <code>set<\/code> direktyv\u0105, kuri nurodo fiksavimo grup\u0119<\/li>\n<li><strong>ASLR aplinkkelis<\/strong>: Vie\u0161asis PoC daro prielaid\u0105, kad ASLR yra i\u0161jungtas, nors visas \u012fra\u0161as rodo, kad ASLR galima apeiti<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"Dazni_pazeidziami_modeliai\"><\/span>Da\u017eni pa\u017eeid\u017eiami modeliai<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Nors konkretus modelis gali atrodyti ne\u012fprastas, kelios realaus pasaulio konfig\u016bracijos yra pa\u017eeid\u017eiamos:<\/p>\n<p><strong>PHP integracija:<\/strong><\/p>\n<pre><code class=\"language-nginx\">fastcgi_split_path_info ^(.+?\\.php)(\/.*)$;\nset $path_info $fastcgi_path_info;\n<\/code><\/pre>\n<p><strong>URL perra\u0161ymas:<\/strong><\/p>\n<pre><code class=\"language-nginx\">rewrite ^\/old-path\/(.*)$ \/new-path?id=$1 break;\nset $request_id $1;\n<\/code><\/pre>\n<p><strong>API mar\u0161rutas:<\/strong><\/p>\n<pre><code class=\"language-nginx\">rewrite ^\/api\/v1\/(.*)$ \/backend?endpoint=$1 break;\nset $endpoint $1;\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"ASLR_ir_realaus_pasaulio_rizika\"><\/span>ASLR ir realaus pasaulio rizika<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Vie\u0161asis PoC d\u0117l paprastumo i\u0161jungia ASLR, tod\u0117l kai kurie pa\u017eeid\u017eiamum\u0105 atmeta kaip ma\u017eos rizikos. Ta\u010diau \u0161is vertinimas yra pavojingai neteisingas:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kodel_ASLR_ne_visiskai_apsaugo\"><\/span>Kod\u0117l ASLR ne visi\u0161kai apsaugo<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li>\n<p><strong>Nginx Forking modelis<\/strong>: Nginx naudoja pagrindin\u012f proces\u0105, kuris sujungia darbuotoj\u0173 procesus. Antriniai procesai paveldi pirminio atminties i\u0161d\u0117stym\u0105, o tai rei\u0161kia, kad kelios u\u017eklausos gali b\u016bti nukreiptos \u012f t\u0105 pa\u010di\u0105 adres\u0173 erdv\u0119 be pakartotinio atsitiktinio atrankos.<\/p>\n<\/li>\n<li>\n<p><strong>Informacijos nutek\u0117jimas<\/strong>: pats pa\u017eeid\u017eiamumas gali nutek\u0117ti informacij\u0105 apie atminties i\u0161d\u0117stym\u0105 arba u\u017epuolikai gali susieti j\u012f su kitais pa\u017eeid\u017eiamumu, kad gaut\u0173 \u0161i\u0105 informacij\u0105.<\/p>\n<\/li>\n<li>\n<p><strong>Brute Force galimyb\u0117<\/strong>: Su neribotais bandymais strigti prie\u0161 darbuotoj\u0173 procesus (kurie automati\u0161kai paleid\u017eiami i\u0161 naujo), u\u017epuolikai laikui b\u0117gant gali priverstinai sunaikinti ASLR entropij\u0105.<\/p>\n<\/li>\n<li>\n<p><strong>Laiko atakos<\/strong>: Sud\u0117tingi u\u017epuolikai gali naudoti laiko nustatymo \u0161oninius kanalus, kad nustatyt\u0173 atminties i\u0161d\u0117stymo informacij\u0105.<\/p>\n<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"Istorinis_precedentas\"><\/span>Istorinis precedentas<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>BROP (angl. Blind Return Oriented Programming) ataka parod\u0117, kad ASLR galima apeiti kruop\u0161\u010diai i\u0161naudojant \u0161akute pagr\u012fstus serverius. Nginx architekt\u016bra yra ypa\u010d pa\u017eeid\u017eiama \u0161i\u0173 metod\u0173.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Svelninimo_strategijos\"><\/span>\u0160velninimo strategijos<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Neatideliotini_veiksmai\"><\/span>Neatid\u0117liotini veiksmai<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li>\n<p><strong>Atnaujinkite Nginx<\/strong>: Nedelsdami atnaujinkite \u012f 1.31.0 arba 1.30.1 versij\u0105<\/p>\n<\/li>\n<li>\n<p><strong>Naudokite pavadintus fiksavimus<\/strong>: Pakeiskite ne\u012fvardytus fiksavimus pavadintais fiksacijomis:<\/p>\n<pre><code class=\"language-nginx\"># Vulnerable\nrewrite ^\/api\/(.*)$ \/backend?path=$1 break;\n\n# Safe\nrewrite ^\/api\/(?&lt;path&gt;.*)$ \/backend?path=$path break;\n<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Pa\u0161alinkite pa\u017eeid\u017eiamas direktyvas<\/strong>: Jei \u012fmanoma, pa\u0161alinkite <code>rewrite<\/code> ir <code>set<\/code> direktyvas, atitinkan\u010dias pa\u017eeid\u017eiam\u0105 model\u012f<\/p>\n<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"Laikini_sprendimai\"><\/span>Laikini sprendimai<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li><strong>I\u0161jungti perra\u0161ymo modul\u012f<\/strong>: Jei nereikia, visi\u0161kai i\u0161junkite perra\u0161ymo modul\u012f<\/li>\n<li><strong>Naudokite alternatyvius metodus<\/strong>: perkelkite URL perra\u0161ymo logik\u0105 \u012f programos kod\u0105<\/li>\n<li><strong>\u012egyvendinti WAF taisykles<\/strong>: \u012ediekite \u017einiatinklio program\u0173 ugniasien\u0117s taisykles, kad aptiktum\u0117te i\u0161naudojimo bandymus<\/li>\n<li><strong>Steb\u0117ti \u017eurnalus<\/strong>: steb\u0117kite, ar prieigos \u017eurnaluose n\u0117ra ne\u012fprast\u0173 \u0161ablon\u0173, kurie gali rodyti i\u0161naudojimo bandymus<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Atradimo_metodas_AI_padedamas_pazeidziamumo_aptikimas\"><\/span>Atradimo metodas: AI padedamas pa\u017eeid\u017eiamumo aptikimas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0160\u012f pa\u017eeid\u017eiamum\u0105 \u201eDepthFirst\u201c saugos analiz\u0117s sistema aptiko savaranki\u0161kai, vienu spustel\u0117jimu \u012fdiegus \u201eNginx\u201c \u0161altinio kod\u0105. \u0160is atradimo metodas kelia svarbi\u0173 klausim\u0173:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Poveikis_saugumui\"><\/span>Poveikis saugumui<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li><strong>Automatinis aptikimas<\/strong>: AI varomi \u012frankiai gali nustatyti pa\u017eeid\u017eiamum\u0105, kurio \u017emon\u0117s praleido daugel\u012f met\u0173<\/li>\n<li><strong>Skal\u0117<\/strong>: \u0160ie \u012frankiai gali greitai analizuoti did\u017eiules kod\u0173 bazes<\/li>\n<li><strong>Nuoseklumas<\/strong>: Automatin\u0117 analiz\u0117 nepatiria nuovargio ar neapsi\u017ei\u016br\u0117jimo<\/li>\n<li><strong>Gr\u0117sm\u0117<\/strong>: Kenk\u0117ji\u0161ki veik\u0117jai gali naudoti pana\u0161ius \u012frankius, kad aptikt\u0173 pa\u017eeid\u017eiamum\u0105 prie\u0161 pardav\u0117jus<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"Dviasmenis_kardas\"><\/span>Dvia\u0161menis kardas<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Nors automatizuotas pa\u017eeid\u017eiamumo aptikimas yra galingas, tai taip pat rei\u0161kia:<\/p>\n<ul>\n<li>Pa\u017eeid\u017eiamumas bus rastas grei\u010diau<\/li>\n<li>Langas tarp atradimo ir i\u0161naudojimo susiaur\u0117ja<\/li>\n<li>Organizacijos turi grei\u010diau pataisyti<\/li>\n<li>Nulin\u0117s dienos pa\u017eeid\u017eiamumas gali tapti da\u017enesnis<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Poveikio_vertinimas\"><\/span>Poveikio vertinimas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Rinkos_dalis\"><\/span>Rinkos dalis<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u201eNginx\u201c valdo ma\u017edaug 39\u201343 % vie\u0161\u0173j\u0173 interneto serveri\u0173 visame pasaulyje. \u0160is pa\u017eeid\u017eiamumas gali paveikti milijonus serveri\u0173.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Paveikti_naudojimo_atvejai\"><\/span>Paveikti naudojimo atvejai<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li><strong>Atvirk\u0161tiniai tarpiniai serveriai<\/strong>: \u201eNginx\u201c egzemplioriai apima program\u0173 serverius<\/li>\n<li><strong>Apkrovos balansuotojai<\/strong>: Nginx naudojamas apkrovai balansuoti<\/li>\n<li><strong>API \u0161liuzai<\/strong>: Nginx veikia kaip API \u0161liuzas<\/li>\n<li><strong>PHP integracija<\/strong>: Nginx su PHP-FPM naudojant perra\u0161ymo taisykles<\/li>\n<li><strong>Senas URL perra\u0161ymas<\/strong>: serveriai, migruojantys i\u0161 \u201eApache\u201c su perra\u0161ymo taisykl\u0117mis<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Pardavejo_atsakymas\"><\/span>Pardav\u0117jo atsakymas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><strong>F5 (\u201eNginx\u201c savininkas):<\/strong><\/p>\n<p><strong>OpenResty:<\/strong><\/p>\n<p><strong>Linux platinimai:<\/strong><\/p>\n<ul>\n<li>Ubuntu: pataisyta nuo 2026 m. gegu\u017e\u0117s 15 d<\/li>\n<li>\u201eDebian\u201c: galimi pataisymai, skirti nestabiliems (\u201etrixie\u201c)<\/li>\n<li>Kiti platinimai: i\u0161leid\u017eiami pataisymai<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Koncepcijos_irodymas\"><\/span>Koncepcijos \u012frodymas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Vie\u0161\u0105 PoC galima rasti adresu https:\/\/github.com\/DepthFirstDisclosures\/Nginx-Rift<\/p>\n<p><strong>Saugyklos turinys:<\/strong><\/p>\n<ul>\n<li><code>poc.py<\/code>: Python i\u0161naudojimo scenarijus<\/li>\n<li><code>setup.sh<\/code>: Docker konteinerio s\u0105ranka<\/li>\n<li><code>env\/<\/code>: Docker aplinkos konfig\u016bracija<\/li>\n<li><code>README.md<\/code>: I\u0161samus naudojimo vadovas<\/li>\n<\/ul>\n<p><strong>PoC paleidimas:<\/strong><\/p>\n<pre><code class=\"language-bash\">.\/setup.sh\ndocker compose -f env\/docker-compose.yml up\npython3 poc.py --shell\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Rekomendacijos_sistemos_administratoriams\"><\/span>Rekomendacijos sistemos administratoriams<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ol>\n<li><strong>Nedelsiant<\/strong>: patikrinkite \u201eNginx\u201c konfig\u016bracijas, ar n\u0117ra pa\u017eeid\u017eiam\u0173 modeli\u0173<\/li>\n<li><strong>Skubiai<\/strong>: planuokite ir vykdykite \u201eNginx\u201c atnaujinimus \u012f pataisytas versijas<\/li>\n<li><strong>Trumpalaikis<\/strong>: \u012ediekite i\u0161naudojimo bandym\u0173 steb\u0117jim\u0105<\/li>\n<li><strong>Ilgalaikis<\/strong>: apsvarstykite galimyb\u0119 pereiti prie atminties saugi\u0173 alternatyv\u0173 arba \u012fdiegti papildomus saugos sluoksnius<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Rekomendacijos_kurejams\"><\/span>Rekomendacijos k\u016br\u0117jams<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ol>\n<li><strong>Kodo per\u017ei\u016bra<\/strong>: per\u017ei\u016br\u0117kite \u201eNginx\u201c konfig\u016bracijas, ar n\u0117ra pa\u017eeid\u017eiam\u0173 modeli\u0173<\/li>\n<li><strong>Testavimas<\/strong>: I\u0161bandykite programas naudodami pataisytas Nginx versijas<\/li>\n<li><strong>Alternatyvos<\/strong>: vietoj Nginx perra\u0161ymo taisykli\u0173 apsvarstykite galimyb\u0119 naudoti Lua modulius arba programos lygio mar\u0161rut\u0105<\/li>\n<li><strong>Saugumas<\/strong>: \u012fgyvendinkite nuodugnias gynybos strategijas, kurios nesiremia vien ASLR<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Isvada\"><\/span>I\u0161vada<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>CVE-2026-42945 rei\u0161kia kritin\u012f pa\u017eeid\u017eiamum\u0105, kuris nebuvo aptiktas 18 met\u0173. Jo atradimas naudojant automatizuot\u0105 dirbtinio intelekto analiz\u0119 rodo, kad pa\u017eeid\u017eiamumas bus rastas ir naudojamas ateityje.<\/p>\n<p>Pa\u017eeid\u017eiamumas yra rimtas, ta\u010diau rizik\u0105 galima suma\u017einti nedelsiant pataisius ir pakeitus konfig\u016bracij\u0105. Organizacijos, kuriose veikia \u201eNginx\u201c, tur\u0117t\u0173 tai laikyti kritiniu saugumo incidentu ir atitinkamai teikti pirmenyb\u0119 naujinimams.<\/p>\n<p>Platesn\u0117 pamoka yra ta, kad net subrendusi, pla\u010diai naudojama programin\u0117 \u012franga gali ilg\u0105 laik\u0105 tur\u0117ti kritini\u0173 sprag\u0173. Norint i\u0161laikyti saugi\u0105 infrastrukt\u016br\u0105, b\u016btina nuolatin\u0117 saugumo analiz\u0117, tiek automatizuota, tiek rankiniu b\u016bdu.<\/p>\n<p><strong>Veiksmo elementai:<\/strong><\/p>\n<\/p><\/div>\n<p>Jei tekste radote klaid\u0105, si\u0173skite prane\u0161im\u0105 autoriui pa\u017eym\u0117dami klaid\u0105 ir paspausdami Ctrl-Enter.<\/p>\n<div>\n<p>        Nor\u0117dami komentuoti, turite b\u016bti prisijung\u0119.<\/p>\n<p>                <i class=\"fa icon-login\"\/>  Prisijunkite<\/p>\n<\/p><\/div>\n<p><a href=\"https:\/\/techplanet.today\/post\/cve-2026-42945-critical-18-year-old-nginx-vulnerability-enables-remote-code-execution\"> Nuoroda \u012f informacijos \u0161altin\u012f <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vie\u0161ai buvo atskleistas kritinis Nginx perra\u0161ymo modulio pa\u017eeid\u017eiamumas, atskleid\u017eiantis kr\u016bvos buferio perpildym\u0105, kuris egzistuoja nuo 2008 m. \u0160is pa\u017eeid\u017eiamumas, pa\u017eym\u0117tas kaip CVE-2026-42945 ir pavadintas \u201eNginx Rift\u201c, leid\u017eia neautentifikuotai nuotoliniu b\u016bdu vykdyti kod\u0105 serveriuose ir naudojant konkre\u010dias rewrite direktyvas. Atradimas buvo atliktas savaranki\u0161kai, naudojant AI varom\u0105 saugos analiz\u0117s sistem\u0105, pabr\u0117\u017edama tiek automatinio pa\u017eeid\u017eiamumo aptikimo gali\u0105, tiek [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[3],"tags":[2771,4123,4127,1059,1154,133,4124,4126,4125,3838],"class_list":["post-2168","post","type-post","status-publish","format-standard","hentry","category-technologijos","tag-budu","tag-cve202642945","tag-koda","tag-kritinis","tag-leidzia","tag-metu","tag-nginx","tag-nuotoliniu","tag-pazeidziamumas","tag-vykdyti"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts\/2168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/comments?post=2168"}],"version-history":[{"count":0,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/posts\/2168\/revisions"}],"wp:attachment":[{"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/media?parent=2168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/categories?post=2168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infonaujiena.lt\/index.php\/wp-json\/wp\/v2\/tags?post=2168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}