WordPress - это хорошо известная система управления контентом с открытым исходным кодом (CMS), используемая для создания веб-сайтов и личных блогов. По оценкам, CMS сегодня используется
Атаки на платформы CMS - это не новость, но субъекты угроз по-прежнему считают, что атаки на сайты являются эффективным способом закрепления активов организаций для использования в злонамеренных целях. В этом блоге перечислены различные виды атак на WordPress, примеры полезных нагрузок, которые мы наблюдали в дикой природе, и как атаки использовали взломанный административный доступ и API, развертывание Alfa-Shell и отравление SEO, чтобы использовать уязвимые сайты.
Атака сайтов WordPress через взломанный доступ администратора
Этот метод предполагает получение доступа администратора к веб-сайту на платформе WordPress. Злоумышленник может использовать уязвимость или просто войти в систему с помощью утечек или слабых учетных данных, что можно сделать, отправив запрос POST в /wp-login.php на целевом веб-сайте.
Рисунок 1. Пример попытки входа со слабыми учетными данными
Рисунок 2. Пароли, проверенные злоумышленниками
После успешного входа в систему злоумышленнику с правами администратора предоставляется несколько вариантов. Мы наблюдали эти действия:
Следует отметить, что бэкдор, который развертывает другой бэкдор со схожей функциональностью, является распространенным явлением. Развертывание выполняется с помощью запросов GET или POST, когда полезная нагрузка / команда / код кодируются внутри данных COOKIES или POST. Логика декодирования находится внутри ранее развернутого бэкдора. После развертывания злоумышленник получает URL-адрес недавно загруженного компонента.
Одной из интересных особенностей, которые мы также наблюдали, является возможность исправления уже существующего файла .php , что позволяет скрывать вредоносные запросы. Сначала записываются все доступные для записи пути, выбирается случайный подходящий путь, а затем исправляется выбранный файл.
Рисунок 3. Исправлена существующая функция файла .php в обслуживаемой полезной нагрузке.
В этом случае функция патча была применена к index.php , чтобы включить вредоносный скрипт внутри скрытый файл Unix (точка - файл) с расширением .ico расширения претендующего быть иконой.
Рисунок 4. Пример патченного WordPress index.php, включая скрытый .ico
Еще одной примечательной особенностью является возможность заражать соседние домены (при условии, что веб-сервер обрабатывает больше доменов, а текущий пользователь имеет право на запись в свои каталоги).
Рисунок 5. Попытка загрузки полезной нагрузки в соседние домены
Развертывание Alfa-Shell на зараженных сайтах WordPress
Известно, что веб-оболочки размещаются на зараженных сайтах WordPress. Мы опишем один из продвинутых, который использует Alfa-Shell от ALFA TEAM / solevisible.
Рисунок 6. Альфа-Шелл
Рисунок 7. Учетная запись Solevisible GitHub
Веб-оболочка предоставляет удобный интерфейс для RCE (например, регистрация обработчиков CGI, которые позволяют выполнять сценарии Perl, Python и Bash.) Alfa-Shell также может получать учетные данные базы данных из файла конфигурации WordPress, создавая дамп базы данных. и получение всех виртуальных доменов и настроек DNS.
Рисунок 8. Обработчики CGI для выполнения различных типов скриптов
Рисунок 9. Пример развернутого скрипта Bash
Веб-оболочка также поддерживает несколько платформ, включая Windows. Фактически, он способен загружать и запускать обратную оболочку с сайта разработчика.
Рисунок 10. Простой бинарный файл обратной оболочки Windows от Alfa Team
Зараженный WordPress может также служить в качестве перенаправителя рекламы, например, путем исправления файла JavaScript темы или функции генератора верхнего / нижнего колонтитула (например, wp-content \ themes \ fiftyseventeen \ functions.php ). Измененный JavaScript перенаправляет пользователей на сайт, указанный злоумышленником.
Рисунок 11. Перенаправление JavaScript
Рисунок 12. Веб-страница после перенаправления
Отравление поисковой оптимизацией (SEO) на зараженных сайтах WordPress
Другой вариант использования для зараженных сайтов WordPress - поисковая оптимизация (SEO). Мы нашли развернутые PHP-скрипты, принимающие ключевые слова внутри GET-запроса.
Рисунок 13. WordPress «поисковая система»
Сценарии сначала проверяют User-Agent, совпадает ли оно с одним из следующих регулярных выражений, или если обратный поиск DNS для $ _SERVER [«REMOTE_ADDR»] (IP-адрес актера, выполняющего запрос HTTP) содержит подстроку Google. Если он проверяется, он устанавливает для переменной $ isbot значение 1.
Рисунок 14. Часть развернутого скрипта
Если $ isbot не равен нулю, тогда другой HTTP-запрос будет отправлен на жестко закодированный URL-адрес с использованием тех же ключевых слов.
Рисунок 15. Часть развернутого скрипта
Если длина возвращаемого текста меньше 1000 символов, другие запросы будут выполняться с помощью поисковой системы Bing, а результаты, соответствующие указанному регулярному выражению, будут добавлены к $ text.
Рисунок 16. Обслуживаемый текст
Последняя HTML-страница возвращается и сохраняется на сервере в случае повторного выполнения того же запроса.
Рисунок 17. Окончательная веб-страница
Как видно из созданного HTML-файла (см. Рисунок 17), на веб-странице Cockeysville Eagle's Football есть части, содержащие текст, относящийся к фреймворкам JavaScript, которые, очевидно, не связаны, таким образом, отравление SEO.
Если $ isbot не установлен и HTTP_REFERER содержит строки, такие как Google, Bing или Yahoo, он затем перенаправляется на другой обслуживающий веб-сайт.
Рисунок 18. Часть развернутого скрипта
Распространение ложных или вводящих в заблуждение статей
Взломанный сайт WordPress может также использоваться для распространения ложных или вводящих в заблуждение статей, где содержание содержит мало фактических данных или не содержит их вообще. Вместо этого привлекают внимание заголовки и истории.
Рисунок 19. Образцы историй, размещенных на скомпрометированных сайтах
Как видно из приведенных выше примеров, взломанные сайты публикуют истории с явными грамматическими ошибками или сенсационными сообщениями. Часто статьи пишутся неразборчиво. Компромисс достигается через интерфейс прикладного программирования (API) WordPress XML, который позволяет передавать данные и выполняет несколько задач, таких как загрузка нового файла, редактирование и публикация сообщения.
Хакер может использовать POST /xmlrpc.php и metaWeblog.newPost , что позволяет напрямую (и даже удаленно) публиковать блоги на сайте WordPress.
Рекомендации по безопасности для сайтов WordPress
Вышеупомянутые примеры - только некоторые из методов, которые, как было известно, злоумышленники использовали. Уязвимые сайты WordPress могут быть легко использованы, если они не защищены должным образом. Чтобы снизить риск компрометации, мы рекомендуем использовать плагины для двухфакторной аутентификации (2FA), чтобы обезопасить себя от злоупотреблений учетными данными и сканирования на наличие неустановленных уязвимостей. Вот другие меры, которые могут предпринять пользователи и администраторы сайта:
Источник:
Ссылка скрыта от гостей
, что делает ее идеальной целью для субъектов угроз. Слабым местом в платформе является все, что нужно, чтобы позволить злоумышленнику нарушить безопасность сайта - риск, усугубляемый проблемами безопасности, вызванными плохой гигиеной кибербезопасности.Атаки на платформы CMS - это не новость, но субъекты угроз по-прежнему считают, что атаки на сайты являются эффективным способом закрепления активов организаций для использования в злонамеренных целях. В этом блоге перечислены различные виды атак на WordPress, примеры полезных нагрузок, которые мы наблюдали в дикой природе, и как атаки использовали взломанный административный доступ и API, развертывание Alfa-Shell и отравление SEO, чтобы использовать уязвимые сайты.
Атака сайтов WordPress через взломанный доступ администратора
Этот метод предполагает получение доступа администратора к веб-сайту на платформе WordPress. Злоумышленник может использовать уязвимость или просто войти в систему с помощью утечек или слабых учетных данных, что можно сделать, отправив запрос POST в /wp-login.php на целевом веб-сайте.
Рисунок 1. Пример попытки входа со слабыми учетными данными
Рисунок 2. Пароли, проверенные злоумышленниками
После успешного входа в систему злоумышленнику с правами администратора предоставляется несколько вариантов. Мы наблюдали эти действия:
- Установка пользовательской темы с включенным бэкдором
- Установка плагина для загрузки файлов
Следует отметить, что бэкдор, который развертывает другой бэкдор со схожей функциональностью, является распространенным явлением. Развертывание выполняется с помощью запросов GET или POST, когда полезная нагрузка / команда / код кодируются внутри данных COOKIES или POST. Логика декодирования находится внутри ранее развернутого бэкдора. После развертывания злоумышленник получает URL-адрес недавно загруженного компонента.
Одной из интересных особенностей, которые мы также наблюдали, является возможность исправления уже существующего файла .php , что позволяет скрывать вредоносные запросы. Сначала записываются все доступные для записи пути, выбирается случайный подходящий путь, а затем исправляется выбранный файл.
Рисунок 3. Исправлена существующая функция файла .php в обслуживаемой полезной нагрузке.
В этом случае функция патча была применена к index.php , чтобы включить вредоносный скрипт внутри скрытый файл Unix (точка - файл) с расширением .ico расширения претендующего быть иконой.
Рисунок 4. Пример патченного WordPress index.php, включая скрытый .ico
Еще одной примечательной особенностью является возможность заражать соседние домены (при условии, что веб-сервер обрабатывает больше доменов, а текущий пользователь имеет право на запись в свои каталоги).
Рисунок 5. Попытка загрузки полезной нагрузки в соседние домены
Развертывание Alfa-Shell на зараженных сайтах WordPress
Известно, что веб-оболочки размещаются на зараженных сайтах WordPress. Мы опишем один из продвинутых, который использует Alfa-Shell от ALFA TEAM / solevisible.
Рисунок 6. Альфа-Шелл
Ссылка скрыта от гостей
Рисунок 7. Учетная запись Solevisible GitHub
Веб-оболочка предоставляет удобный интерфейс для RCE (например, регистрация обработчиков CGI, которые позволяют выполнять сценарии Perl, Python и Bash.) Alfa-Shell также может получать учетные данные базы данных из файла конфигурации WordPress, создавая дамп базы данных. и получение всех виртуальных доменов и настроек DNS.
Рисунок 8. Обработчики CGI для выполнения различных типов скриптов
Рисунок 9. Пример развернутого скрипта Bash
Веб-оболочка также поддерживает несколько платформ, включая Windows. Фактически, он способен загружать и запускать обратную оболочку с сайта разработчика.
Рисунок 10. Простой бинарный файл обратной оболочки Windows от Alfa Team
Зараженный WordPress может также служить в качестве перенаправителя рекламы, например, путем исправления файла JavaScript темы или функции генератора верхнего / нижнего колонтитула (например, wp-content \ themes \ fiftyseventeen \ functions.php ). Измененный JavaScript перенаправляет пользователей на сайт, указанный злоумышленником.
Рисунок 11. Перенаправление JavaScript
Рисунок 12. Веб-страница после перенаправления
Отравление поисковой оптимизацией (SEO) на зараженных сайтах WordPress
Другой вариант использования для зараженных сайтов WordPress - поисковая оптимизация (SEO). Мы нашли развернутые PHP-скрипты, принимающие ключевые слова внутри GET-запроса.
Рисунок 13. WordPress «поисковая система»
Сценарии сначала проверяют User-Agent, совпадает ли оно с одним из следующих регулярных выражений, или если обратный поиск DNS для $ _SERVER [«REMOTE_ADDR»] (IP-адрес актера, выполняющего запрос HTTP) содержит подстроку Google. Если он проверяется, он устанавливает для переменной $ isbot значение 1.
Рисунок 14. Часть развернутого скрипта
Если $ isbot не равен нулю, тогда другой HTTP-запрос будет отправлен на жестко закодированный URL-адрес с использованием тех же ключевых слов.
Ссылка скрыта от гостей
Рисунок 15. Часть развернутого скрипта
Если длина возвращаемого текста меньше 1000 символов, другие запросы будут выполняться с помощью поисковой системы Bing, а результаты, соответствующие указанному регулярному выражению, будут добавлены к $ text.
Ссылка скрыта от гостей
Рисунок 16. Обслуживаемый текст
Последняя HTML-страница возвращается и сохраняется на сервере в случае повторного выполнения того же запроса.
Рисунок 17. Окончательная веб-страница
Как видно из созданного HTML-файла (см. Рисунок 17), на веб-странице Cockeysville Eagle's Football есть части, содержащие текст, относящийся к фреймворкам JavaScript, которые, очевидно, не связаны, таким образом, отравление SEO.
Если $ isbot не установлен и HTTP_REFERER содержит строки, такие как Google, Bing или Yahoo, он затем перенаправляется на другой обслуживающий веб-сайт.
Рисунок 18. Часть развернутого скрипта
Распространение ложных или вводящих в заблуждение статей
Взломанный сайт WordPress может также использоваться для распространения ложных или вводящих в заблуждение статей, где содержание содержит мало фактических данных или не содержит их вообще. Вместо этого привлекают внимание заголовки и истории.
Рисунок 19. Образцы историй, размещенных на скомпрометированных сайтах
Как видно из приведенных выше примеров, взломанные сайты публикуют истории с явными грамматическими ошибками или сенсационными сообщениями. Часто статьи пишутся неразборчиво. Компромисс достигается через интерфейс прикладного программирования (API) WordPress XML, который позволяет передавать данные и выполняет несколько задач, таких как загрузка нового файла, редактирование и публикация сообщения.
Рисунок 20. POST /xmlrpc.php и metaWeblog.newPost (слева); образец размещенного текста (справа)
Хакер может использовать POST /xmlrpc.php и metaWeblog.newPost , что позволяет напрямую (и даже удаленно) публиковать блоги на сайте WordPress.
Рекомендации по безопасности для сайтов WordPress
Вышеупомянутые примеры - только некоторые из методов, которые, как было известно, злоумышленники использовали. Уязвимые сайты WordPress могут быть легко использованы, если они не защищены должным образом. Чтобы снизить риск компрометации, мы рекомендуем использовать плагины для двухфакторной аутентификации (2FA), чтобы обезопасить себя от злоупотреблений учетными данными и сканирования на наличие неустановленных уязвимостей. Вот другие меры, которые могут предпринять пользователи и администраторы сайта:
- Принять основные правила гигиены, чтобы
Ссылка скрыта от гостейповерхность атаки сайта
- Отключить или удалить устаревшие или уязвимые плагины
- Используйте
Ссылка скрыта от гостейдля устранения уязвимостей, для которых исправления еще не доступны, особенно для систем, которые должны постоянно работать и работать
- Обеспечить соблюдение принципа наименьших привилегий
- Регулярно обновляйте CMS до последней версии, включая плагины
Источник:
Ссылка скрыта от гостей