Если Вы задумываетесь над проблемами безопасности собственных сайтов, то эта заметка и напоминание для тех, кто является владельцем или поддерживает блоги на CMS WordPress. В корректирующем релизе WordPress 3.5.2 устранено семь проблем, связанных с безопасностью. Так что всем рекомендуется обновить свои блоги на новую версию.
Спасибо команде разработчиков и поддержки WordPress, которая не стала дожидаться окончания разработки новой версии 3.6 и решила (наконец-то) выпустить корректирующий релиз обновления 3.5.2, в котором нет никаких новшеств, но зато устранены насущные и серьезные проблемы, связанные с безопасностью.
Устранены следующие уязвимости
- Межсерверная подделка запросов (SSRF — Server-Side Request Forgery) средствами HTTP API.
- Превышение привилегий (Privilege Escalation), т.е. когда авторы публикуют сообщения, а пользователи могут затем сменить авторство.
- DoS-атаки (Denial of Service). Отказ в обслуживании посредством Post Password Cookies.
- Подмена, перехват контента (Content Spoofing) используя апплет Flash в плагине TinyMCE Media.
- Раскрытие полного пути к файлам (FPD — Full Path Disclosure) во время загрузки файлов на сервер.
- Межсайтовый скриптинг (XSS — Cross-Site Scripting) в SWFUpload. Обнаружено в плагине NextGEN Gallery.
- Межсайтовый скриптинг во время загрузки медиа на сайт.
В общей сложности в релизе WordPress 3.5.2 исправлено 12 багов, среди которых (кроме перечисленных выше) есть 3, дополнительно усиливающих безопасность:
- XSS-уязвимость при редактировании различных медиа-данных.
- XSS-уязвимость во время установки и обновления плагинов и тем.
- Вероятность XML-инъекций (XXE — XML External Entity Injection) посредством oEmbed.
Как видите, исправления не касались интерфейса и прочего функционала, а затрагивали лишь проблемы безопасности. Поэтому обновление должно пройти «безболезненно» для версий WP 3.5 и 3.5.1. Обновляться проще и лучше стандартными средствами через Консоль WordPress -> Обновления.
Однако не забывайте, что на всякий случай перед обновлением нужно сделать полный бэкап всего сайта, включая дамп базы данных.
Желающие обновить блог вручную могут скачать русский WordPress 3.5.2 в ZIP-архиве с сайта ru.wordpress.org (или в архиве .tar.gz).
Полный список файлов, затронутых обновлением WordPress 3.5.2
readme.html wp-admin/includes/media.php wp-admin/includes/class-wp-importer.php wp-admin/includes/file.php wp-admin/includes/post.php wp-admin/includes/upgrade.php wp-admin/includes/schema.php wp-admin/includes/class-wp-upgrader.php wp-admin/includes/update-core.php wp-admin/update.php wp-admin/about.php wp-admin/edit-form-advanced.php wp-login.php wp-includes/class-wp-xmlrpc-server.php wp-includes/rss.php wp-includes/functions.php wp-includes/formatting.php wp-includes/post.php wp-includes/media-template.php wp-includes/deprecated.php wp-includes/wp-db.php wp-includes/user.php wp-includes/class-wp-admin-bar.php wp-includes/version.php wp-includes/class-phpass.php wp-includes/comment.php wp-includes/pluggable.php wp-includes/class-feed.php wp-includes/script-loader.php wp-includes/class-http.php wp-includes/js/media-editor.min.js wp-includes/js/swfupload/swfupload-all.js wp-includes/js/swfupload/handlers.js wp-includes/js/swfupload/handlers.min.js wp-includes/js/swfupload/swfupload.swf wp-includes/js/plupload/handlers.js wp-includes/js/plupload/handlers.min.js wp-includes/js/tinymce/wp-tinymce.js.gz wp-includes/js/tinymce/plugins/media/moxieplayer.swf wp-includes/js/tinymce/tiny_mce.js wp-includes/js/media-editor.js wp-includes/class-oembed.php wp-includes/post-template.php wp-includes/http.php
Дополнение
Для более продвинутых, имеющих опыт программирования на PHP и JavaScript, возможно будет интересно взглянуть непосредственно на конкретные детали измененного кода в файлах по ссылке Changes in branches/3.5 [23347:24498]
Там в таблицах, ниже списка файлов, красным фоном выделено то, что было удалено, а зеленым то, что было добавлено в каждом конкретном файле (в сравнении с версией WordPress 3.5.1). Возможно это пригодится при создании своих скриптов, плагинов или тем для WordPress, либо вообще при разработке своей собственной CMS.
Метки: WordPress, безопасность, обновление
Блоггер, дилема растолкованная вами на блоге несомненно жизненна. Я думаю что тема стоит продолжения в приватной дискуссии. Кстате, у блога непонятное с код-кой RSS. ;)
excreting, а что не так с кодировкой RSS блога, можно подробнее? Если что, можно и скриншот на почту мне выслать.
И вверху в админке (если сами не отключили эту опцию) появляется уведомление про выход обновлений.
Правда, я не всегда обновлялась, так как не совсем понимала, для чего это нужно. Сейчас-то дошло, что это в моих же интересах :)
Анна, только не забывайте делать бэкап перед любым обновлением, даже самым маленьким. А после обновления обязательно проверьте, корректно ли отображаются страницы, правильно ли работают все активированные плагины и остальной функционал вашего блога или сайта.
Анна, та опция у меня обычно отключена на блогах, но я подписан на новости от WordPress и получаю их по почте, поэтому всегда в курсе событий, что и Вам рекомендую сделать.