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

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

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

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

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

Категории

Все категории
Loading categories
Mailcow-CVE-2022-31138 — PoC-эксплойт для Mailcow CVE-2022-31138, обеспечивающий RCE через инъекцию кода Perl в поля регулярных выражений Sync Job, с повышением привилегий до Domain Admin. | Kitploit
Инструменты/GitHubGitHub/ly1g3/mailcow-cve-2022-31138
Повышение привилегийАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеРазработка Полезной Нагрузки
GitHubly1g3/mailcow-cve-2022-31138

Mailcow-CVE-2022-31138

PoC-эксплойт для Mailcow CVE-2022-31138, обеспечивающий RCE через инъекцию кода Perl в поля регулярных выражений Sync Job, с повышением привилегий до Domain Admin.

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

Популярное

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

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

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

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

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

Mailcow CVE-2022-31138

RCE и повышение привилегий до Domain Admin для Mailcow. POC для CVE-2022-31245 может быть изменен для работы с этой уязвимостью.

Сообщено и исправлено: 2022-06

Code Injection, RCE

Тип: Code Injection (CWE-94), RCE, Domain Takeover
Затронутые версии: начиная с 2019 по 2022-06a

Уязвимость существует во всех последних версиях Mailcow, где обычный пользователь системы может использовать функцию «Sync Job» для получения оболочки с помощью внедрения Perl-кода в произвольное поле регулярного выражения в imapsync. Используя этот эксплойт, злоумышленник может затем легко переключиться на базу данных и повысить привилегии до роли «Domain Admin» в Mailcow.

Этот эксплойт по умолчанию включает сохранение, так как Sync Jobs выполняются по таймеру.

Этот эксплойт компрометирует весь экземпляр Mailcow. Протестировано и работает на последнем выпуске по состоянию на 2022-06a.

Технический обзор

Почти все регулярные выражения в imapsync вычисляются с помощью функции eval, что крайне небезопасно, когда параметры задаются пользователем. В качестве примера, вот как --regexmess разбирается в imapsync (строка 14213):

root@kitploit:~
sub regexmess
{
        my ( $string ) = @_ ;
        foreach my $regexmess ( @regexmess ) {
                $sync->{ debug } and myprint( "eval \$string =~ $regexmess\n" ) ;
                my $ret = eval "\$string =~ $regexmess ; 1" ;

В Mailcow $regexmess задается пользователем.

Следующие флаги imapsync (возможно, их больше) могут быть использованы для выполнения кода:

root@kitploit:~
--regexmess
--skipmess
--regexflag
--delete2foldersonly
--delete2foldersbutnot
--regextrans2

Используя приведенные ниже шаги, уязвимость может быть воспроизведена.

Получение оболочки:

  1. Перейдите на страницу входа в Mailcow (не SOGo)
  2. Войдите как обычный пользователь
  3. Перейдите в Sync Jobs
  4. Установите следующие значения: hostname=MAILCOW_IP, Port=IMAP_PORT, Username=CURRENT_USER, Password=CURRENT_PASS, Encryption=PLAIN, Interval=1, Active=Check, Custom Parameters=--debug --nosslcheck --regexmess=PERL_CODE Где поле «Custom Parameters» является важным. PERL_CODE может быть произвольным Perl-кодом.
  5. Нажмите сохранить и подождите 1 минуту, пока команда выполнится.

Пример полезной нагрузки для Custom Parameters:

root@kitploit:~
--debug --nosslcheck --regexmess=`touch\x{0020}test.txt`

PERL_CODE не может содержать пробелы, кавычки или косые черты, используйте \x{0020} вместо пробела. Используйте ` для выполнения команд оболочки.

Повышение привилегий:

Следуйте тем же шагам, что и в CVE-2022-31245.

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