{"id":251,"date":"2026-08-20T17:39:44","date_gmt":"2026-08-20T15:39:44","guid":{"rendered":"https:\/\/helloblog.io\/lt\/elementor-pro-kritine-php-failu-ikelimo-spraga-cve-2026-32475\/"},"modified":"2026-08-20T17:39:44","modified_gmt":"2026-08-20T15:39:44","slug":"elementor-pro-kritine-php-failu-ikelimo-spraga-cve-2026-32475","status":"publish","type":"post","link":"https:\/\/helloblog.io\/lt\/elementor-pro-kritine-php-failu-ikelimo-spraga-cve-2026-32475\/","title":{"rendered":"Elementor Pro pa\u0161alino kritin\u0119 PHP fail\u0173 \u012fk\u0117limo sprag\u0105"},"content":{"rendered":"\n<p>Elementor Pro \u012fskiepyje aptikta kritin\u0117 saugumo spraga CVE-2026-32475, kuri paveikia visas versijas iki 4.2.1 imtinai. Neautentifikuotas u\u017epuolikas gali \u012fkelti savavali\u0161k\u0105 fail\u0105, \u012fskaitant vykdom\u0105 PHP fail\u0105, o tai gali baigtis nuotoliniu kodo vykdymu ir visi\u0161ku WordPress svetain\u0117s per\u0117mimu.<\/p>\n\n\n\n<p>Spraga aktuali svetainei, kurioje paskelbtame puslapyje naudojamas Elementor Pro Form valdiklis ir jame yra bent vienas neprivalomas File Upload laukas. Elementor Pro turi apie 6 mln. aktyvi\u0173 diegim\u0173, tod\u0117l patikrinkite \u012fskiepio versij\u0105 kuo grei\u010diau.<\/p>\n\n\n\n<div class=\"wp-block-group callout callout-danger is-style-danger is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">K\u0105 daryti dabar<\/h4>\n\n\n<p>Atnaujinkite Elementor Pro \u012f 4.2.2 arba naujesn\u0119 pataisyt\u0105 versij\u0105. Versija 4.2.2, i\u0161leista 2026 m. rugpj\u016b\u010dio 19 d., i\u0161sprend\u017eia CVE-2026-32475.<\/p>\n\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Kam ir kokiomis s\u0105lygomis kyla rizika<\/h2>\n\n\n\n<p>Problema yra neribojamas failo tipo \u012fk\u0117limas per <code>ElementorProModulesFormsFieldsUpload<\/code> klas\u0117s <code>process_field()<\/code> funkcij\u0105. U\u017epuolikui nereikia WordPress paskyros, ta\u010diau jis turi rasti vie\u0161ai paskelbt\u0105 form\u0105 su neprivalomu failo \u012fk\u0117limo lauku.<\/p>\n\n\n\n<p>Pa\u017eeid\u017eiama forma turi priimti daugiau nei vien\u0105 \u012fk\u0117limo masyvo element\u0105. U\u017epuolikas pirm\u0105 element\u0105 pateikia tu\u0161\u010di\u0105, o antrajame \u012fkelia fail\u0105 su pasirinktu pl\u0117tiniu. Taip i\u0161vengiamas likusi\u0173 fail\u0173 pl\u0117tinio ir dyd\u017eio tikrinimas.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>WordPress administravimo skydelyje atidarykite Elementor Pro \u012fskiepi\u0173 s\u0105ra\u0161\u0105 ir patikrinkite versij\u0105.<\/li>\n\n\n<li>Jei naudojate 4.2.1 ar senesn\u0119 versij\u0105, nedelsdami \u012fdiekite 4.2.2 arba naujesn\u012f atnaujinim\u0105.<\/li>\n\n\n<li>Per\u017ei\u016br\u0117kite vie\u0161us puslapius su Elementor Pro Form valdikliais, ypa\u010d formas, kuriose File Upload laukas n\u0117ra pa\u017eym\u0117tas kaip privalomas.<\/li>\n\n\n<li>Kol atnaujinimas ne\u012fdiegtas, ribokite prieig\u0105 prie toki\u0173 form\u0173 arba laikinai pa\u0161alinkite neprivalomus fail\u0173 \u012fk\u0117limo laukus.<\/li>\n\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Kaip apeinamas tikrinimas<\/h2>\n\n\n\n<p>Form\u0173 pateikim\u0105 neautentifikuoti lankytojai pasiekia per <code>Ajax_Handler<\/code> klas\u0117s <code>ajax_send_form()<\/code> funkcij\u0105. \u012eskiepis vartotojo pateiktus formos duomenis ir \u012fkeltus failus sudeda \u012f <code>Form_Record<\/code> objekt\u0105, tada File Upload laukus perduoda <code>Upload<\/code> klas\u0117s <code>validation()<\/code> ir <code>process_field()<\/code> funkcijoms.<\/p>\n\n\n\n<p>Klaida slypi <code>validation()<\/code> cikle. Kai File Upload laukas neprivalomas ir pirmojo masyvo elemento klaida yra <code>UPLOAD_ERR_NO_FILE<\/code>, kodas vykdo <code>return<\/code>. \u0160i komanda nutraukia visos funkcijos darb\u0105, tod\u0117l \u012fskiepis nebetikrina likusi\u0173 to paties lauko fail\u0173.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>foreach ( $files[ $id ] as $index =&gt; $file ) {\n    \/\/ Neprivalomame lauke pirmasis elementas nebuvo pateiktas.\n    if ( ! $field['required'] &amp;&amp; UPLOAD_ERR_NO_FILE === $file['error'] ) {\n        return; \/\/ Nutraukia vis\u0173 v\u0117lesni\u0173 fail\u0173 tikrinim\u0105.\n    }\n\n    if ( ! $this-&gt;is_file_type_valid( $field, $file ) ) {\n        $ajax_handler-&gt;add_error( $id, 'This file type is not allowed.' );\n    }\n\n    if ( ! $this-&gt;is_file_size_valid( $field, $file ) ) {\n        $ajax_handler-&gt;add_error( $id, 'This file exceeds the maximum allowed size.' );\n    }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">foreach<\/span><span style=\"color:#E1E4E8\"> ( $files[ $id ] <\/span><span style=\"color:#F97583\">as<\/span><span style=\"color:#E1E4E8\"> $index <\/span><span style=\"color:#F97583\">=><\/span><span style=\"color:#E1E4E8\"> $file ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">    \/\/ Neprivalomame lauke pirmasis elementas nebuvo pateiktas.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#F97583\">!<\/span><span style=\"color:#E1E4E8\"> $field[<\/span><span style=\"color:#9ECBFF\">'required'<\/span><span style=\"color:#E1E4E8\">] <\/span><span style=\"color:#F97583\">&#x26;&#x26;<\/span><span style=\"color:#79B8FF\"> UPLOAD_ERR_NO_FILE<\/span><span style=\"color:#F97583\"> ===<\/span><span style=\"color:#E1E4E8\"> $file[<\/span><span style=\"color:#9ECBFF\">'error'<\/span><span style=\"color:#E1E4E8\">] ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">        return<\/span><span style=\"color:#E1E4E8\">; <\/span><span style=\"color:#6A737D\">\/\/ Nutraukia vis\u0173 v\u0117lesni\u0173 fail\u0173 tikrinim\u0105.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#F97583\">!<\/span><span style=\"color:#79B8FF\"> $this<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">is_file_type_valid<\/span><span style=\"color:#E1E4E8\">( $field, $file ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">        $ajax_handler<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">add_error<\/span><span style=\"color:#E1E4E8\">( $id, <\/span><span style=\"color:#9ECBFF\">'This file type is not allowed.'<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#F97583\">!<\/span><span style=\"color:#79B8FF\"> $this<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">is_file_size_valid<\/span><span style=\"color:#E1E4E8\">( $field, $file ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">        $ajax_handler<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">add_error<\/span><span style=\"color:#E1E4E8\">( $id, <\/span><span style=\"color:#9ECBFF\">'This file exceeds the maximum allowed size.'<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>Tu\u0161\u010di\u0105 \u012fk\u0117limo viet\u0105 reik\u0117jo praleisti su <code>continue<\/code>, nes \u0161i komanda pereina prie kito ciklo elemento. Vietoj to panaudotas <code>return<\/code> nutraukia tikrinim\u0105 dar prie\u0161 i\u0161kvie\u010diant <code>is_file_type_valid()<\/code> ir <code>is_file_size_valid()<\/code> funkcijas kitiems failams.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kod\u0117l tai leid\u017eia vykdyti PHP kod\u0105<\/h2>\n\n\n\n<p>Ataka naudoja du to paties \u012fk\u0117limo lauko masyvo elementus. Pirmasis yra tu\u0161\u010dias ir nustato <code>UPLOAD_ERR_NO_FILE<\/code>, tod\u0117l <code>validation()<\/code> funkcija i\u0161kart baigia darb\u0105. Antrajame elemente u\u017epuolikas pateikia PHP fail\u0105 su savo parinktu pl\u0117tiniu; jo tipas ir dydis nebetikrinami.<\/p>\n\n\n\n<p>Nors validavimas nutr\u016bksta per anksti, <code>process_field()<\/code> tu\u0161\u010di\u0105 pirm\u0105 element\u0105 praleid\u017eia teisingai, naudodama <code>continue<\/code>. Tod\u0117l ji apdoroja antr\u0105, nepatikrint\u0105 fail\u0105, pl\u0117tin\u012f paima tiesiai i\u0161 kliento pateikto failo vardo ir \u012fra\u0161o fail\u0105 \u012f serverio disk\u0105.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>foreach ( $files[ $id ] as $index =&gt; $file ) {\n    if ( UPLOAD_ERR_NO_FILE === $file['error'] ) {\n        continue; \/\/ Tu\u0161\u010dias elementas praleid\u017eiamas.\n    }\n\n    $uploads_dir = $this-&gt;get_ensure_upload_dir();\n    $file_extension = pathinfo( $file['name'], PATHINFO_EXTENSION );\n    $filename = wp_unique_filename( $uploads_dir, uniqid() . '.' . $file_extension );\n    $new_file = trailingslashit( $uploads_dir ) . $filename;\n\n    Plugin::instance()-&gt;php_api-&gt;move_uploaded_file( $file['tmp_name'], $new_file );\n    @chmod( $new_file, 0644 );\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">foreach<\/span><span style=\"color:#E1E4E8\"> ( $files[ $id ] <\/span><span style=\"color:#F97583\">as<\/span><span style=\"color:#E1E4E8\"> $index <\/span><span style=\"color:#F97583\">=><\/span><span style=\"color:#E1E4E8\"> $file ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#79B8FF\">UPLOAD_ERR_NO_FILE<\/span><span style=\"color:#F97583\"> ===<\/span><span style=\"color:#E1E4E8\"> $file[<\/span><span style=\"color:#9ECBFF\">'error'<\/span><span style=\"color:#E1E4E8\">] ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">        continue<\/span><span style=\"color:#E1E4E8\">; <\/span><span style=\"color:#6A737D\">\/\/ Tu\u0161\u010dias elementas praleid\u017eiamas.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $uploads_dir <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> $this<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">get_ensure_upload_dir<\/span><span style=\"color:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $file_extension <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> pathinfo<\/span><span style=\"color:#E1E4E8\">( $file[<\/span><span style=\"color:#9ECBFF\">'name'<\/span><span style=\"color:#E1E4E8\">], <\/span><span style=\"color:#79B8FF\">PATHINFO_EXTENSION<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $filename <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#B392F0\"> wp_unique_filename<\/span><span style=\"color:#E1E4E8\">( $uploads_dir, <\/span><span style=\"color:#79B8FF\">uniqid<\/span><span style=\"color:#E1E4E8\">() <\/span><span style=\"color:#F97583\">.<\/span><span style=\"color:#9ECBFF\"> '.'<\/span><span style=\"color:#F97583\"> .<\/span><span style=\"color:#E1E4E8\"> $file_extension );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $new_file <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#B392F0\"> trailingslashit<\/span><span style=\"color:#E1E4E8\">( $uploads_dir ) <\/span><span style=\"color:#F97583\">.<\/span><span style=\"color:#E1E4E8\"> $filename;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    Plugin<\/span><span style=\"color:#F97583\">::<\/span><span style=\"color:#B392F0\">instance<\/span><span style=\"color:#E1E4E8\">()<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#E1E4E8\">php_api<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">move_uploaded_file<\/span><span style=\"color:#E1E4E8\">( $file[<\/span><span style=\"color:#9ECBFF\">'tmp_name'<\/span><span style=\"color:#E1E4E8\">], $new_file );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    @<\/span><span style=\"color:#79B8FF\">chmod<\/span><span style=\"color:#E1E4E8\">( $new_file, <\/span><span style=\"color:#79B8FF\">0644<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>Kadangi i\u0161saugomas u\u017epuoliko nurodytas pl\u0117tinys, failas su <code>.php<\/code> pl\u0117tiniu patenka tiesiai \u012f <code>\/wp-content\/uploads\/elementor\/forms\/<\/code> katalog\u0105. U\u017epuolikas gali kreiptis \u012f tok\u012f fail\u0105 per nar\u0161ykl\u0119 ir serveryje \u012fvykdyti jo PHP kod\u0105. Savavali\u0161ko fail\u0173 \u012fk\u0117limo spragos da\u017enai leid\u017eia perimti vis\u0105 svetain\u0119 naudojant webshell ar kitus metodus.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paveiktos versijos ir spragos \u012fvertinimas<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>Paveiktas \u012fskiepis: Elementor Website Builder Pro (<code>elementor-pro<\/code>).<\/li>\n\n\n<li>Paveiktos versijos: iki 4.2.1 imtinai.<\/li>\n\n\n<li>Pataisyta versija: 4.2.2.<\/li>\n\n\n<li>CVE identifikatorius: <a href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2026-32475\">CVE-2026-32475<\/a>.<\/li>\n\n\n<li>CVSS \u012fvertinimas: 9,8 i\u0161 10, kritinis.<\/li>\n\n\n<li>Spragos tipas: neautentifikuotas savavali\u0161ko failo \u012fk\u0117limas, apeinant \u012fk\u0117limo lauko masyvo validavim\u0105.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Atskleidimo eiga<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>2026 m. liepos 24 d. buvo gautas prane\u0161imas apie neautentifikuot\u0105 savavali\u0161ko failo \u012fk\u0117limo sprag\u0105 Elementor Pro.<\/li>\n\n\n<li>2026 m. liepos 27 d. prane\u0161imas patvirtintas kartu su koncepcijos \u012frodymo ataka, o apie sprag\u0105 informuotas Elementor k\u016br\u0117jas.<\/li>\n\n\n<li>2026 m. rugpj\u016b\u010dio 2 d. k\u016br\u0117jas nurod\u0117, kad apie t\u0105 pa\u010di\u0105 sprag\u0105 prane\u0161\u0117 ir kitas saugumo tyr\u0117jas bei kad rengiamas pataisymas.<\/li>\n\n\n<li>2026 m. rugpj\u016b\u010dio 19 d. i\u0161leista visi\u0161kai pataisyta Elementor Pro 4.2.2 versija.<\/li>\n\n<\/ol>\n\n\n\n<p>I\u0161 prad\u017ei\u0173 \u0161iai spragai buvo priskirtas kitas CVE identifikatorius, ta\u010diau jis atmestas, nes k\u016br\u0117jas jau naudojo identifikatori\u0173, priskirt\u0105 po kito prane\u0161imo. Galutinis spragos identifikatorius yra CVE-2026-32475.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Atnaujinimas yra b\u016btinas<\/h2>\n\n\n\n<p>\u0160i spraga nereikalauja prisijungimo ir gali leisti vykdyti kod\u0105 serveryje, tod\u0117l vien form\u0173 konfig\u016bracijos patikrinimo nepakanka. \u012ediekite Elementor Pro 4.2.2 arba naujesn\u0119 versij\u0105 visuose projektuose, kuriuose naudojate \u0161\u012f \u012fskiep\u012f, ir tik tada gr\u0105\u017einkite laikinai apribotas fail\u0173 \u012fk\u0117limo formas.<\/p>\n\n\n<div class=\"references-section\">\n                <h2>Nuorodos \/ \u0160altiniai<\/h2>\n                <ul class=\"references-list\"><li><a href=\"https:\/\/www.wordfence.com\/blog\/2026\/08\/critical-arbitrary-file-upload-vulnerability-patched-in-elementor-pro-wordpress-plugin\/\" target=\"_blank\" rel=\"noopener noreferrer\">Critical Arbitrary File Upload Vulnerability Patched in Elementor Pro WordPress Plugin<\/a><\/li><li><a href=\"https:\/\/www.wordfence.com\/threat-intel\/vulnerabilities\/id\/0a32b02f-db40-42fe-b46c-4a5f2bc9ba09\" target=\"_blank\" rel=\"noopener noreferrer\">Elementor Pro &lt;= 4.2.1 &#8211; Unauthenticated Arbitrary File Upload via Upload Field Array Validation Bypass<\/a><\/li><li><a href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2026-32475\" target=\"_blank\" rel=\"noopener noreferrer\">CVE-2026-32475<\/a><\/li><\/ul>\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>Elementor Pro iki 4.2.1 versijos leido neautentifikuotam lankytojui apeiti fail\u0173 tikrinim\u0105 ir \u012fkelti vykdom\u0105 PHP fail\u0105. Jei svetain\u0117je turite tam tikr\u0105 Form valdiklio lauk\u0105, atnaujinkite \u012fskiep\u012f nedelsdami.<\/p>\n","protected":false},"author":2,"featured_media":250,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[153,151,26,152,10],"class_list":["post-251","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-saugumas","tag-cve-2026-32475","tag-elementor-pro","tag-php","tag-saugumo-spraga","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/posts\/251","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/comments?post=251"}],"version-history":[{"count":0,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/posts\/251\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/media\/250"}],"wp:attachment":[{"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/media?parent=251"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/categories?post=251"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helloblog.io\/lt\/wp-json\/wp\/v2\/tags?post=251"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}