В ходе регулярных проверок и исследований была обнаружена сохранность XSS уязвимости, которая затрагивает плагин WordPress Jetpack, установленный на более чем миллион WordPress сайтов. Уязвимость может быть легко использована с помощью wp-комментариев, и поэтому рекомендуется обновить свой плагин как можно быстрее, если Вы этого еще не сделали.
Уязвимость безопасности находится в шорткоде встроенного Jetpack модуля, поэтому, если Вы не активировали его на сайте, Вас не затронет эта проблема. Атакующий может использовать данную уязвимость, оставив комментарий, подготовленный шорткод, чтобы выполнить вредоносный код Javascript на уязвимом сайте. Поскольку это Cross-Site Scripting (XSS) уязвимость, она может позволить злоумышленнику похитить учетные данные администраторов, вставить SEO спам на пораженную страницу и перенаправлять посетителей на вредоносные веб-сайты.
Подробнее
Эта уязвимость очень похожа на bbPress уязвимость, которая была описана на прошлой неделе, на сайте первоисточника другой экземпляр текста, небрежно заменяемого некоторыми HTML-тэгами.
В данном случае расследование уязвимости начинается с comment_text
, использующейся при выводе содержимого комментариев. Vimeo_link
используется таким образом, что он может динамически изменять вывод комментариев.
Как Вы можете видеть из приведенных выше регулярных выражений, осуществляется поиск vimeo
шорткода внутри комментариев. В случае обнаружения совпадений они будут переданы функции vimeo_link_callback
В результате, возвращается HTML — тег, содержащий встроенное видео Vimeo. Давайте посмотрим на что похож полученный результат, отправив комментарий содержащий <a title='[vimeo 123]’>abc
:
Ого, что же там произошло? Похоже, атрибуты заголовка, окончание и одинарные кавычки исчезли. Все, что нужно было сделать — работающий пример, который должен был показать, что мы можем соответствующим образом закрыть наши атрибуты заголовка и вставить новые обработчики произвольного события для доказательства нашей концепции. Как мы уже говорили — это очень легко эксплуатируется.
Авторы исследования работали с командой Jetpack и они сразу же откликнулись, держали нас в курсе обновлений все это время.
Если Вы используете уязвимую версию этого плагина, обновитесь как можно скорее! Если по определенным сделать это невозможно, Вы можете использовать Sucuri Firewall или эквивалентную технологию для решения проблемы.
Автор: ua-hosting.company