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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-34832 — Доказательство концепции эксплуатации для CVE-2024-34832: обход каталога в административной панели CubeCart, приводящий к удалённому выполнению кода через специально сформированный параметр `_g` и загруженные файлы `.inc.php`. | Kitploit
Инструменты/GitHubGitHub/julio-cfa/cve-2024-34832
Анализ уязвимостейАнализ КодаЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и Образование
GitHubjulio-cfa/cve-2024-34832

CVE-2024-34832

Доказательство концепции эксплуатации для CVE-2024-34832: обход каталога в административной панели CubeCart, приводящий к удалённому выполнению кода через специально сформированный параметр `_g` и загруженные файлы `.inc.php`.

Репозиторий
22 лет назадЕщё не проверено

Популярное

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

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

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

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

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

CubeCart - Обход каталогов может привести к RCE (CVE-2024-34832)

TL;DR

В панели администратора такие параметры, как _g и node, используются для построения пути к файлам .inc.php и выполнения PHP-кода. Злоумышленник, имеющий возможность загружать файлы .inc.php в любую точку сервера, может использовать уязвимость обхода каталогов, чтобы подключить их и выполнить вредоносный код.

Предварительные условия

  • Доступ к панели администратора (любые привилегии, включая их полное отсутствие);
  • Возможность загружать файлы с расширением .inc.php в любую точку сервера (например, доступ по FTP, другое приложение на том же сервере, позволяющее загружать файлы, новые уязвимости в функциях загрузки CubeCart и т. д.).

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

Предположим, на том же сервере, где установлен CubeCart, работает FTP-сервер, и пользователь может загружать файлы в определённое место. В нашем примере пусть всё, что загружается через FTP, оказывается в /opt/FTP_Example.

Также допустим, что этот пользователь загрузил по FTP файл с именем path_traversal.inc.php, содержимое которого представляет собой следующий PHP-код: <?php system('whoami;id;hostname;ls') ?>.

image

Изначально загрузка такого файла не представляет опасности, так как он не выполняется и не находится в директории веб-сервера (например, Apache), который мог бы его выполнить.

Этот же пользователь может иметь очень ограниченные или даже нулевые привилегии в панели администратора CubeCart, но всё равно может войти в неё. Например, мы создали пользователя julio, у которого вообще нет никаких привилегий.

image

После входа в приложение под именем julio мы начали тестировать параметры _g и node. Мы заметили, что эти параметры автоматически добавляют к пути .inc.php и, по-видимому, используют include() для этого файла с целью выполнения PHP-кода.

Как показано ниже, когда файл не найден, возвращается следующее сообщение об ошибке.

image

Мы задумались, сможем ли мы пройти по пути и добраться до файла .inc.php в другом каталоге сервера, например, в нашей FTP-папке.

Поскольку у нас был файл path_traversal.inc.php в папке /opt/FTP_Example, мы попробовали добавить множество /../../../, пока не достигли корневого каталога, затем добавили /opt/FTP_Example/path_traversal, и приложение автоматически добавило .inc.php в конец пути.

Как показано ниже, код был успешно выполнен.

image

Заключение

Мы заметили, что параметр node экранирует слеши (/), а _g — нет. Все параметры, используемые для построения путей, должны экранировать слеши, чтобы предотвратить уязвимости обхода каталогов.

Хотя для успешной эксплуатации этой уязвимости существуют предварительные условия, что значительно снижает риск, она всё же требует исправления. Вы можете посмотреть в ссылках, как авторы CubeCart исправили эту уязвимость, и применить исправления к своему экземпляру CubeCart до выхода официального релиза с уже включённым патчем.

Ссылки

  • https://github.com/cubecart/v6/issues/3586
Скачать инструмент