
Концептуальное доказательство концепции для CVE-2024-44258, уязвимости символических ссылок в iOS при восстановлении резервных копий. Демонстрирует механизм эксплуатации для образовательных и исследовательских целей, включая генерацию имитированной резервной копии и этапы теоретической проверки.
Требование: Python 3.7+ • Лицензия: MIT
⚠️ Предупреждение: Этот репозиторий содержит доказательство концепции (PoC), разработанное исключительно для образовательных и исследовательских целей. Это не полностью работоспособный эксплойт. Использование на устройствах без соответствующего разрешения запрещено.
Данное PoC концептуально иллюстрирует CVE-2024-44258 — уязвимость разрешения симлинков при восстановлении резервных копий в iOS. Цель — продемонстрировать минимальную конфигурацию, необходимую для эксплуатации уязвимости, без предоставления полноценного эксплойта.
profiled.Manifest.mbdb — критический шаг для реального эксплойта.Проверка зависимостей: Проверяет наличие libimobiledevice.
Обнаружение устройства: Ожидает подключения iPhone и определяет его UDID.
Генерация смоделированной резервной копии:
CVE-2024-44258_PoC_Backup.plist) в HomeDomain/Library/ConfigurationProfiles/SysSharedContainerDomain-systemgroup.com.apple.configurationprofilesLibrary -> SYMLINK_TARGET_ON_DEVICE)Manifest_OPERATIONS_SIMULATED.txt с концептуальными шагамиПопытка восстановления: Использует idevicebackup2 для применения резервной копии к устройству.
libimobiledevice (idevicelist, idevicebackup2 доступны в PATH)git clone https://github.com/missaels235/POC-CVE-2024-44258-Py.git
cd POC-CVE-2024-44258-Py
В poc_cve_2024_44258.py измените:
SYMLINK_TARGET_ON_DEVICE: Абсолютный путь в iOS, по которому будет создана ссылка и записана полезная нагрузка.
Должен быть путь с правами на запись.
Безопасные примеры (sandbox):
/private/var/mobile/Containers/Data/Application/<APP_UUID>/tmp/ExploitDir
/private/var/mobile/Library/Caches/ExploitCache
⚠️ Осторожно: Неподходящий путь может сделать PoC нерабочим или, в случае реального эксплойта, повлиять на целостность системы.
python3 poc_cve_2024_44258.py
Если процесс восстановления выполнен:
PoC_File_CVE-2024-44258.plist в SYMLINK_TARGET_ON_DEVICE.Примечание: Без изменения
Manifest.mbdbпроверка является чисто теоретической.
Анализ Manifest.mbdb: Проприетарный бинарный формат.
Инструменты редактирования: Разработка на C или аналогичных.
Создание вредоносной резервной копии:
.plist.Manifest.mbdb.Автоматизированное восстановление: Система создаёт симлинки и записывает данные в целевой путь.
Распространяется под лицензией MIT. См. файл LICENSE.