На 26 октомври 2026 г. Wordfence оповести уязвимост в Kirki, плъгина на Themeum за настройките на темата и визуалното изграждане на страници (CVE-2026-75891), а на 27 октомври записът се появи и в NVD. Става дума за повишаване на правата. Всеки, който има акаунт в сайта, дори с най-ниската роля Subscriber (абонат), може да смени паролата на администратор и да влезе на негово място. Засегнати са всички версии до 6.2.5 включително, а оценката по CVSS е 8.8 („висока“). Според wordpress.org Kirki има над 500 000 активни инсталации.
Поправката е във версия 6.3.0 от 2 септември, а текущата версия е 6.4.0 от 13 октомври. Ако плъгинът се обновява автоматично, сайтът Ви вероятно вече е защитен. Проверете обаче и дали темата не съдържа свое копие на Kirki, защото то не се обновява заедно с плъгина.
Как става повишаването на правата
Редакторът на Kirki праща заявки към сайта във фонов режим (AJAX). Според записа в CVE една от тях, get-single-symbol, не проверява дали потребителят има право да я използва. Плъгинът взема данни от заявката и ги превръща обратно в PHP обекти, без да ги проверява. Това се нарича вмъкване на обект (PHP object injection). В кода на сайта има подходяща верига от класове (POP chain), с която нападателят презаписва паролата на администратор и влиза в администрацията с пълни права.
Атаката не изисква нищо от администратора, нито клик, нито отворено писмо. Достатъчен е акаунт с роля Subscriber, а такъв акаунт може да си направи всеки, ако регистрацията в сайта е отворена и новите потребители получават тази роля. Какво означава оценка 8.8, обясняваме в ръководството за CVSS.
Wordfence е уведомила Themeum на 18 август, а поправката излезе две седмици по-късно. Към 27 октомври уязвимостта не е в каталога на CISA с уязвимости, използвани при атаки, и никой от източниците по-долу не съобщава за атаки. Записът обаче вече е публичен и назовава уязвимата заявка, така че това може бързо да се промени.
Защо Kirki може да е в сайта, без да сте го избирали
До версия 5 Kirki беше рамка за Customizer, екрана Appearance > Customize, в който темата показва настройките си за цветове, шрифтове и оформление. Някои теми го изискват или препоръчват при инсталация, така че плъгинът може да е в сайта само заради темата.
С версия 6.0.0 Kirki стана визуален строител на страници, а частта за Customizer остана. Сайт, който е обновявал плъгина, е получил строителя заедно с кода, за който се отнася уязвимостта. В последната версия от поредицата 5 (5.2.3) този код липсва. Записът в CVE обаче посочва всички версии до 6.2.5, а поправката е само в 6.3.0 и по-новите, затова обновете и сайт, който още е на 5.x.
Някои теми и плъгини слагат Kirki направо в своите файлове, както споменава и бележката към версия 6.0.3. Такова копие не се вижда в списъка с плъгини и се обновява само когато обновите темата или плъгина, който го съдържа.
Засегнат ли е Вашият сайт?
Засегнат е, ако Kirki е на версия 6.2.5 или по-стара. Версията се вижда в Plugins > Installed Plugins, на реда на Kirki. В Terminal на cPanel първата команда по-долу показва версията на плъгина. Втората търси в темите и плъгините файлове с обработчика на заявките kirki_post_apis, в който е уязвимостта, а третата показва версията на всяко копие на Kirki. Как се работи с WP-CLI, е описано в ръководството за WP-CLI.
# cPanel > Terminal, в папката на сайта
# Само чете. Версията на Kirki и копията му в темите и плъгините.
wp plugin list --fields=name,status,version \
--skip-plugins --skip-themes | grep -i kirki
grep -rl --include="*.php" "kirki_post_apis" \
wp-content/themes wp-content/plugins
grep -r --include="kirki.php" "Version:" \
wp-content/themes wp-content/plugins
Ако плъгинът е инсталиран, втората команда показва поне wp-content/plugins/kirki/includes/Ajax.php. Ред, който започва с wp-content/themes/ или с папката на друг плъгин, означава вградено копие на Kirki 6. Третата команда трябва да покаже 6.3.0 или по-нова версия за всяко копие. Ако копието в темата е по-старо, обновете темата и попитайте автора ѝ коя версия на Kirki има в нея.
Какво да направите
- Направете бекъп на файловете и базата данни, както е описано в ръководството за бекъп.
- Обновете Kirki до 6.4.0 от
Plugins > Installed Pluginsс бутона Update Now. Тази уязвимост е поправена в 6.3.0, но според WPScan в 6.4.0 са поправени още две, а едната позволява на посетител без вход да прочете данни на потребителите. - Ако сайтът още е на 5.x, пробвайте обновлението първо на копие в staging. С версия 6.0.0 плъгинът е изграден наново и Themeum препоръчва бекъп преди нея.
- Ако копие на Kirki е вградено в темата, обновете темата и проверете версията отново.
- Ако не използвате Kirki за нищо, деактивирайте го и го изтрийте. Код, който не е в сайта, не може да бъде нападнат. Някои теми обаче пазят настройките си чрез Kirki, затова първо проверете на копие дали сайтът изглежда по същия начин без него.
- Ако не можете да обновите веднага, спрете дотогава регистрацията, като махнете отметката Anyone can register в
Settings > General. Така само намалявате риска, защото вече създадените акаунти остават.
Ако сайтът позволява регистрации
Колкото повече акаунти има в сайта, толкова повече хора могат да използват уязвимостта. Отворена регистрация, клиентски профили в WooCommerce, форум или членство означават, че акаунт може да има всеки. Според документацията на WooCommerce клиентите получават роля Customer, когато се регистрират при поръчка, и тази роля има ограничен достъп, подобен на Subscriber. Приемете, че и клиентският профил е достатъчен за атаката.
Следващите команди проверяват регистрацията и потребителите и също само четат.
# cPanel > Terminal, в папката на сайта
# Само чете. Регистрацията, ролята по подразбиране,
# администраторите и последните регистрирани потребители.
wp option get users_can_register --skip-plugins --skip-themes
wp option get default_role --skip-plugins --skip-themes
wp user list --role=administrator \
--fields=ID,user_login,user_email,user_registered \
--skip-plugins --skip-themes
wp user list --orderby=registered --order=DESC --number=20 \
--fields=ID,user_login,user_email,roles,user_registered \
--skip-plugins --skip-themes
Ако първата команда върне 1, всеки може да се регистрира, а втората показва с каква роля. Третата изрежда администраторите, а четвъртата последните 20 регистрирани акаунта. Потърсете непознат администратор. Атаката презаписва паролата на съществуващ администратор, така че тревожен знак е и администратор, който изведнъж не може да влезе с паролата си.
Какво правим ние
При наблюдението на уязвимостите всеки ден сверяваме плъгините, темата и WordPress на Вашия сайт с базите данни с уязвимости (CVE). Щом се появи уязвимост в нещо, което използвате, изпращаме Ви сигнал, а обновлението първо пробваме на копие в staging. Ако проверките по-горе покажат непознат администратор, при почистването на хакнат сайт махаме зловредния код и задните врати. Правим и двете, където и да е хостнат сайтът Ви.
Често задавани въпроси
Какво е CVE-2026-75891 в Kirki?
Уязвимост за повишаване на правата в Kirki, плъгина на Themeum за настройки на темата и визуално изграждане на страници, разкрита от Wordfence на 26 октомври 2026 г. Всеки с акаунт в сайта, дори с най-ниската роля Subscriber, може да смени паролата на администратор и да влезе като него. Засегнати са всички версии до 6.2.5 включително, а оценката по CVSS е 8.8, „висока“.
Коя версия на Kirki поправя уязвимостта?
Kirki 6.3.0 от 2 септември 2026 г. поправя CVE-2026-75891, а текущата версия е 6.4.0 от 13 октомври. Обновете до 6.4.0, защото според WPScan тя поправя още две уязвимости, едната от които позволява на посетител без вход да чете данни за потребителите.
Как Kirki се е озовал в сайта ми?
До версия 5 Kirki беше рамка за Customizer, екрана Appearance > Customize с настройките на темата за цветове, шрифтове и подредба. Някои теми го изискват или препоръчват при инсталиране, така че плъгинът може да е в сайта само заради темата. С версия 6.0.0 Kirki стана визуален редактор на страници, а сайтовете, които са го обновявали, получиха и кода с уязвимостта.
Засегнат ли е сайтът ми, ако Kirki е вграден в темата?
Да, ако вграденото копие е на Kirki 6 и е по-старо от 6.3.0. Такова копие не се вижда в списъка с плъгини и се обновява само когато обновите темата или плъгина, в който е вградено. В Terminal на cPanel grep -r --include="kirki.php" "Version:" wp-content/themes wp-content/plugins показва версията на всяко копие на Kirki.
Засегнат ли е сайт на Kirki 5.x?
Последната версия от серия 5 (5.2.3) не съдържа уязвимия код. Записът в CVE обаче изброява всички версии до 6.2.5, а поправката я има само в 6.3.0 и по-новите, затова обновете и сайт, който още е на 5.x. Пробвайте обновяването първо на копие в staging, защото версия 6.0.0 преправи плъгина изцяло и Themeum препоръчва бекъп преди нея.
Опасен ли е Kirki за магазин с WooCommerce?
Колкото повече акаунти има един сайт, толкова повече хора могат да използват уязвимостта в Kirki. Според документацията на WooCommerce клиентите, които се регистрират при поръчка, получават ролята Customer, която има ограничен достъп, подобен на Subscriber. Приемете, че клиентски акаунт стига за атаката.
Какво да направя, ако не мога да обновя Kirki веднага?
Затворете регистрацията, като махнете отметката Anyone can register в Settings > General, докато обновите. Това само намалява риска, защото вече създадените акаунти остават. Ако не използвате Kirki за нищо, деактивирайте го и го изтрийте, но първо проверете на копие, че сайтът изглежда същият без него.
Как да разбера дали някой е влязъл като администратор през Kirki?
Прегледайте администраторите и най-новите акаунти с wp user list в Terminal на cPanel и потърсете администратор, когото не познавате. Атаката презаписва паролата на съществуващ администратор, така че ако администратор изведнъж не може да влезе със своята парола, това също е тревожен знак. Ако някой вече е влязъл като администратор, само нова парола не стига, защото той може да е създал друг акаунт или да е оставил задна врата. Сменете паролите на всички администратори, прекратете сесиите им с Log Out Everywhere и почистете сайта като хакнат.
Източници
- NVD, CVE-2026-75891
- CVE.org, CVE-2026-75891
- Wordfence, уязвимостта в Kirki
- WordPress.org, Kirki
- WordPress.org, Kirki, Changelog
- WordPress.org Plugin Trac, промяната с версия 6.3.0
- WordPress.org Plugin SVN, Kirki 6.3.0, Ajax.php
- WPScan, Kirki
- CISA, Known Exploited Vulnerabilities Catalog
- WooCommerce, Roles and Capabilities
- WordPress.org, Settings General Screen
- WP-CLI, wp plugin list
- WP-CLI, wp option get
- WP-CLI, wp user list