
Conceptual proof-of-concept for CVE-2024-44258, an iOS symlink vulnerability during backup restoration. Demonstrates the exploitation mechanism for educational and research purposes, including simulated backup generation and theoretical validation steps.
Requirement: Python 3.7+ • License: MIT
⚠️ Warning: This repository contains a proof-of-concept (PoC) developed for exclusively educational and research purposes. It is not a fully functional exploit. Its use on devices without proper authorization is prohibited.
This PoC conceptually illustrates CVE-2024-44258, a symlink resolution vulnerability during iOS backup restoration. The goal is to demonstrate the minimum configuration needed to exploit the flaw, without providing a full exploit.
profiled daemon.Manifest.mbdb file, a critical step for a real exploit.Dependency check: Verifies availability of libimobiledevice.
Device detection: Waits for an iPhone connection and identifies its UDID.
Simulated backup generation:
CVE-2024-44258_PoC_Backup.plist) into HomeDomain/Library/ConfigurationProfiles/SysSharedContainerDomain-systemgroup.com.apple.configurationprofilesLibrary -> SYMLINK_TARGET_ON_DEVICE)Manifest_OPERATIONS_SIMULATED.txt with conceptual stepsRestore attempt: Uses idevicebackup2 to apply the backup to the device.
libimobiledevice (idevicelist, idevicebackup2 available in PATH)git clone https://github.com/missaels235/POC-CVE-2024-44258-Py.git
cd POC-CVE-2024-44258-Py
In poc_cve_2024_44258.py, adjust:
SYMLINK_TARGET_ON_DEVICE: Absolute path on iOS where the link will be created and the payload written.
Must be a path with write permissions.
Safe examples (sandbox):
/private/var/mobile/Containers/Data/Application/<APP_UUID>/tmp/ExploitDir
/private/var/mobile/Library/Caches/ExploitCache
⚠️ Caution: An inappropriate path may invalidate the PoC or, in a real exploit, affect system integrity.
python3 poc_cve_2024_44258.py
If the restore process completes:
PoC_File_CVE-2024-44258.plist at SYMLINK_TARGET_ON_DEVICE.Note: Without modifying
Manifest.mbdb, validation is purely theoretical.
Analysis of Manifest.mbdb: Proprietary binary format.
Editing tools: Development in C or similar.
Construction of malicious backup:
.plist payload.Manifest.mbdb.Automated restoration: The system creates symlinks and writes to the target path.
Distributed under the MIT License. See the LICENSE file.