
CVE-2025-6218 — это уязвимость обхода каталога в WinRAR, которая позволяет атакующему размещать файлы за пределами целевой директории извлечения, когда пользователь распаковывает специально созданный
CVE-2025-6218 — это уязвимость обхода каталога (directory traversal) в WinRAR, которая позволяет атакующему размещать файлы за пределами предполагаемого каталога извлечения, когда пользователь распаковывает специально созданный архив .rar. Используя эту ошибку, атакующий может поместить вредоносные файлы в чувствительные места, что потенциально может привести к удалённому выполнению кода (RCE), если файл будет выполнен системой или пользователем.
---
WinRAR.exe --version).Уязвимости обхода каталога позволяют атакующим манипулировать путями к файлам, чтобы записать файлы в непредусмотренные места. В контексте WinRAR это означает, что файл, предназначенный для извлечения в C:\Temp, может быть помещён в чувствительный каталог, например в папку автозагрузки Windows (C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup). Если вредоносный исполняемый файл или скрипт будет помещён в такое место, он может запуститься автоматически, предоставив атакующему контроль над системой жертвы.
Атакующий может:
.bat файл) в папку автозагрузки для выполнения кода при загрузке системы.C:\Windows\System32, чтобы нарушить работу системы или повысить привилегии.Уязвимость связана с тем, что WinRAR не проверяет и не очищает должным образом пути к файлам, хранящиеся в архиве .rar. При извлечении файлов WinRAR доверяет метаданным пути в архиве, не проверяя достаточным образом последовательности обхода каталога, такие как ..\ или ../../. Это позволяет атакующему создать архив, в котором путь файла указывает за пределы предполагаемого каталога извлечения.
..\..\..\ обманывают процесс извлечения..\ в пути к файлу указывает системе подняться на один уровень каталога вверх. Соединяя несколько последовательностей ..\ (например, ..\..\..\..\..), атакующий может перейти из каталога извлечения (например, C:\Temp\Test) к корню диска (C:\) и затем в любое желаемое место, например C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup, выполняются автоматически при входе пользователя в систему. Вредоносный .bat или .exe файл здесь может выполнять произвольные команды.C:\Windows\System32 может нарушить целостность системы или позволить повышение привилегий.Intended Extraction (Safe):
- User extracts archive to: C:\Temp\Test
- Archive contains file: payload.bat
- Expected result: C:\Temp\Test\payload.bat
Actual Extraction (Exploited):
- User extracts archive to: C:\Temp\Test
- Archive contains file with path: ..\..\..\..\..\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
- Actual result: C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
В этом разделе приведены пошаговые инструкции по ручному воспроизведению уязвимости CVE-2025-6218 в безопасной изолированной лабораторной среде с использованием виртуальной машины (ВМ) без сетевого подключения. Цель — создать архив .rar, который помещает безвредный .bat файл в папку автозагрузки Windows, запускающий Калькулятор (calc.exe) при входе пользователя в систему.
Подготовьте тестовую папку:
exploit_test (например, C:\exploit_test).Создайте простую полезную нагрузку:
@echo off
start calc.exe
payload.bat в C:\exploit_test.Создайте структуру папок для обхода пути:
C:\exploit_test создайте структуру папок, повторяющую желаемый путь:
C:\exploit_test\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
<username> на имя целевого пользователя на ВМ (например, absholi7ly).payload.bat в папку :
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat. Если он присутствует, эксплойт обхода каталога сработал.payload.bat в Блокноте, чтобы проверить его содержимое:
@echo off
start calc.exe
payload.bat в папке автозагрузки и выберите Свойства.C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
C:\payload.bat или в подпапке, такой как C:\Users\username\AppData\Roaming\...), эксплойт не сработал как задумано.uasername.payload.bat в папке автозагрузки, чтобы убедиться, что он работает.Для исследователей, желающих оптимизировать процесс, описанные выше ручные шаги могут быть автоматизированы с помощью Python-скрипта.
StartupC:\exploit_test\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Создайте вредоносный RAR-архив с помощью WinRAR:
C:\exploit_test.Users (которая содержит полный путь к payload.bat).exploit.rar (например, C:\exploit_test\exploit.rar).exploit.rar в WinRAR. Вы должны увидеть:
Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Передайте архив на ВМ:
exploit.rar в общую папку или на USB-накопитель, доступный ВМ.exploit.rar в корень диска C:\:
C:\exploit.rar
Извлеките архив на ВМ:
C:\.exploit.rar и выберите Извлечь в текущую папку.payload.bat в:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
Проверьте эксплуатацию:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat в этой папке.Проверьте выполнение полезной нагрузки:
username.calc.exe) должен запуститься автоматически.payload.bat в папке автозагрузки, чтобы убедиться, что он открывает Калькулятор.