Публикувани са технически подробности и концептуална доказателствена атака (PoC) за нова уязвимост от тип фалшифициране на междусайтови заявки (CSRF) в WordPress, наречена „Click2Shell“, която засяга основния компонент (Core) на платформата.

Проблемът със сигурността няма официален идентификатор, но беше коригиран миналата седмица с пускането на WordPress версия 7.1.1.

Това е верига от уязвимости за отдалечено изпълнение на код без предварителна автентикация, която позволява на атакуващ да инсталира произволна тема от официалния каталог на WordPress.org и да стартира произволен PHP файл.

Изследователят по сигурността Паулос Ибело от платформата за автономен пентестинг pwn.ai откри Click2Shell и я докладва на WordPress на 22 август.

Изследователите обясняват, че „стойност от URL адреса за преглед на тема в WordPress се интерпретира веднъж от Themes API на WordPress.org и втори път по дефектен начин от JavaScript в браузъра на администратора“.

Това позволява на атакуващ да добави тема от WordPress в целевия уебсайт, без администраторът изрично да я инсталира. Изследователят установи, че дори и да е неактивна, дадена тема все пак може да изпълни PHP по време на преглед в Customizer.

Трябва да се отбележи, че макар атакуващият да няма нужда от автентикация, е необходимо влязъл в профила си администратор да посети модифициран URL адрес, за да сработи експлойтът Click2Shell.

Атаката може да започне със специално подготвен линк, който води до инсталиране на уязвима тема от каталога. След като прегледът в Customizer зареди PHP файла на неактивната тема, злонамереният код се изпълнява на сървъра.

За да демонстрират проблема, от pwn.ai са използвали уязвима тема в WordPress като втори компонент във веригата, който е изпълнил злонамерения PHP код на атакуващия.

Пълният технически доклад на изследователя предоставя пълно доказателство за концепцията (PoC) за постигане на отдалечено изпълнение на код на сървъра.

Изпълнението на код по този начин би могло да позволи модифициране и изтриване на файлове, достъп до потребителски данни и до файла „wp-config.php“, който съдържа идентификационни данни за базата данни и тайни за автентикация. Атакуващ би могъл да използва този достъп, за да създаде фалшиви администраторски профили или да инжектира зловреден код.

Въпреки че Ибело е демонстрирал Click2Shell с помощта на конкретна тема, в основата си дефектът в WordPress Core 7.1.0 и по-ранни версии би могъл да се използва за принудително инсталиране на всяка друга уязвима тема от каталога на WordPress.

Изследователят отбелязва, че на атакуващия не са му необходими акаунт в WordPress, nonce за инсталация или собствени администраторски права. Въпреки това атаката Click2Shell изисква влязъл в системата администратор да посети подготвения линк.

Компанията за киберсигурност на WordPress Patchstack анализира Click2Shell и подчертава, че само администратор може да задейства веригата, тъй като акаунтите с роли Author и Editor нямат необходимите разрешения за инсталиране на теми.

Компанията предупреди, че са възможни атаки чрез целеви фишинг или чрез съществуваща уязвимост за междусайтов скриптинг (XSS), която кара браузъра на администратора да изпрати заявката.

WordPress коригира уязвимостта в Core във версия 7.1.1 чрез ескейпване на идентификатора (slug) на темата, преди той да бъде използван в jQuery селектора, и чрез ограничаване на селектора до действителните карти с теми.

За администратори, които не могат да инсталират актуализацията веднага, от Patchstack посочват, че уебсайтове с активирана опция „DISALLOW_FILE_MODS“ не могат да бъдат принудени да инсталират тема или зловреден плъгин.

Преминаването към най-новата версия на WordPress обаче е горещо препоръчително, особено след като пълните технически подробности и PoC вече са публично достъпни.