Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
POC-CVE-2025-24104-Py — 概念验证的Python脚本,演示通过设备备份恢复中的恶意符号链接实现iOS文件外泄,针对com.apple.mobile.MCInstall服务实现任意文件读取。 | Kitploit
工具/GitHubGitHub/missaels235/poc-cve-2025-24104-py
iOS安全漏洞分析漏洞利用数据泄露移动安全论文与研究学习与教育
GitHubmissaels235/poc-cve-2025-24104-py

POC-CVE-2025-24104-Py

概念验证的Python脚本,演示通过设备备份恢复中的恶意符号链接实现iOS文件外泄,针对com.apple.mobile.MCInstall服务实现任意文件读取。

查看仓库
351年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PoC: 通过备份操作窃取 iOS 文件

极其重要的警告:此软件仅为教育和安全研究目的的漏洞概念验证(PoC)。

  • 切勿在未获得设备所有者明确书面同意的情况下使用此脚本。未经授权访问计算机系统在大多数司法管辖区是违法的。
  • 此脚本涉及从备份恢复 iOS 设备,这会导致设备上当前数据全部丢失。 请极度谨慎操作,仅在专用测试设备上使用。
  • 本脚本的作者/提供者对误用或使用本软件造成的任何损害或数据丢失不承担任何责任。使用风险自负。

概述

此 Python 脚本演示了一个(假设的或基于过去漏洞的)漏洞,该漏洞允许从 iOS 设备窃取任意文件。该漏洞在原 PoC 中出于说明目的被引用为“iOS 18.3 之前”。该方法基于操作设备的备份、在备份中创建恶意符号链接(symlink),然后将此修改后的备份恢复到设备上。最后,与系统服务(com.apple.mobile.MCInstall)交互,使其在不知情的情况下读取 symlink 指向的文件。

此脚本从安全研究人员的角度进行了“改进”,以包含:

  • 详细日志记录。
  • 通过命令行参数进行参数化。
  • 依赖项和 iOS 版本检查(概念性)。
  • 关于内部工作原理和可能缓解措施的广泛注释。
  • 更高的健壮性和错误处理。

漏洞解释(概念性)

被利用的漏洞利用以下弱点链条(存在于旧版 iOS 中):

  1. 在备份中创建符号链接: 能够创建一个备份文件,其中预期的系统文件(例如 CloudConfigurationDetails.plist)被替换为指向设备文件系统中敏感文件(例如 /private/etc/passwd)的符号链接。
  2. 恢复符号链接: 在易受攻击的版本中,iOS 的恢复过程会在设备上恢复这些符号链接,而未进行适当的验证或清理。
  3. 特权服务读取: 可以调用具有读取原始配置文件(CloudConfigurationDetails.plist)权限的系统服务(此 PoC 中的 com.apple.mobile.MCInstall)。当尝试读取该文件时,操作系统会跟随符号链接,转而读取 symlink 指向的敏感文件的内容。
  4. 数据窃取: 该服务将读取到的文件内容(即敏感文件)返回给请求的客户端。

关于 iOS 版本的说明: 原 PoC 提到“iOS < 18.3”。这个编号是不典型的。Apple 已经在更早的 iOS 版本(通常对于此类最直接的攻击向量是在 iOS 15/16 之前)中修补了与备份和配置描述文件中的符号链接处理相关的漏洞。此处保留此版本引用以保持与脚本来源的一致性,但应理解为“未打补丁的易受攻击版本”的示意。

改进脚本的特点

  • 详细日志记录: 为流程的每个步骤提供时间戳和清晰的消息。
  • 命令行参数: 灵活配置目录、目标文件、UDID 等。
  • 模块化: 可以跳过某些阶段(备份/恢复或利用)以进行分析。
  • 依赖项检查: 验证 idevicebackup2 是否存在。
  • 设备信息: 尝试获取 iOS 版本和 UDID。
  • 漏洞检查(概念性): 如果检测到的 iOS 版本可能已修补,则发出警告。
  • 改进的错误处理: 更清晰地捕获和报告错误。
  • 教育性注释: 代码中关于过程和缓解措施的详细解释。

前提条件

  • Python 3.7+
  • libimobiledevice: 一组用于与 iOS 设备交互的工具。具体而言,需要在系统 PATH 中包含 idevicebackup2。
    • 在 macOS 上:brew install libimobiledevice
    • 在 Linux 上:sudo apt-get install libimobiledevice-utils(包名可能有所不同)
  • Python 包:
    root@kitploit:~
    pip install usbmux-python python-lockdown packaging
    

安装

  1. 克隆此仓库:
    root@kitploit:~
    git clone <仓库-url>
    cd <目录名>
    
  2. 确保已安装 libimobiledevice 并且 idevicebackup2 可访问。
  3. 安装 Python 依赖项:
    root@kitploit:~
    pip install -r requirements.txt # (如果创建了包含 usbmux-python, python-lockdown, packaging 的 requirements.txt)
    # 或手动:
    # pip install usbmux-python python-lockdown packaging
    

使用

root@kitploit:~
./exploit_ios_file_read.py [选项]
下载工具