CVE-2024-44258:ManagedConfiguration Framework 中的符号链接漏洞

admin 2024年11月8日15:57:47评论7 views字数 2937阅读9分47秒阅读模式

CVE-2024-44258:ManagedConfiguration Framework 中的符号链接漏洞

概括

CVE-2024-44258重点指出了 Apple 设备中的ManagedConfiguration 框架和配置守护程序中的符号链接漏洞。在恢复精心设计的备份时,迁移过程无法验证目标文件夹是否为符号链接 (symlink),从而导致未经授权的文件迁移到受限区域。

CVE 编号

已将此问题分配给CVE-2024-44258。CVE是公开披露的安全漏洞的唯一标识符。

  • 影响:恢复恶意制作的备份文件可能会导致受保护的系统文件被修改。

  • 描述:已通过改进受影响组件中的符号链接处理解决这个问题。

更多信息请参考Apple官方支持页面:

  • support.apple.com/en-us/121569

  • support.apple.com/en-us/121566

  • support.apple.com/en-us/121563

细节

受影响的组件:

  • ManagedConfiguration 框架

  • 概要守护进程

影响:

该漏洞允许攻击者在备份恢复期间利用符号链接绕过文件夹限制,将文件写入沙盒或受保护区域。此漏洞可能允许未经授权的数据访问、特权升级或利用依赖于修改的配置的其他服务。

重现步骤

1.创建精心设计的备份

  • 使用域创建从:到沙盒文件夹的符号链接

/private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles/Library/

SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles

2.添加所需文件

  • 将文件和文件夹插入:

/private/var/mobile/Library/ConfigurationProfiles

使用HomeDomain。

3.恢复精心制作的备份

  • 将备份恢复到任何 iPhone、iPod 或 iPad 设备。

4.重启设备

  • 重启后,检查限制区域的内容。您将发现文件/文件夹已迁移到先前受保护的位置。

预期结果与实际结果

  • 预期:

/private/var/mobile/Library/ConfigurationProfiles应迁移至:/private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles/Library

  • 实际:

由于精心设计的符号链接,文件被迁移到可能包含敏感或受保护数据的受限文件夹中。

漏洞状态

此漏洞已被广泛观察数月,表明其正被积极利用。

补丁说明

在iOS 18.1 beta5中,苹果引入了一个补丁来解决ManagedConfiguration 框架中的符号链接漏洞。添加了该功能_MCDestinationPathIsSafeFromSymlinkAttacks以对目标路径执行安全检查,防止未经授权的文件迁移到限制区域。此检查是专门添加到该功能中的MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:。

受影响的功能:-[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:]

-[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:]该漏洞修复是通过修改负责处理ManagedConfiguration 框架内文件迁移的函数来实现的。补丁的工作原理如下:

  • 添加符号链接检查Apple在 开头添加了一个调用。此函数现在会验证目标路径是否没有符号链接,从而在执行任何迁移操作之前添加一层保护。_MCDestinationPathIsSafeFromSymlinkAttacksMCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:

  • 条件检查如果_MCDestinationPathIsSafeFromSymlinkAttacks在目标路径中检测到符号链接,则会阻止迁移继续进行。该函数使用记录错误消息OS_LOG_TYPE_FAULT并提前退出,从而停止文件操作。

代码比较

使用IDA中的Diaphora对iOS 18.1 beta4和iOS 18.1 beta5进行差异比较,发现函数中发生了变化。下图显示了添加了符号链接检查的修改后的代码。-[MCMigrator_copyAlmostAtomicallyItemAtPath:toPath:error:]

CVE-2024-44258:ManagedConfiguration Framework 中的符号链接漏洞

PoC(概念验证)

下面是一个示例代码片段,演示了如何制作利用该漏洞的备份。此代码概述了如何将符号链接和文件添加到备份中,模拟了该过程,而无需提供实际制作的备份文件。

unsigned char* plist_data = NULL;
        file_read("/path/to/your/test-outofsandbox.plist", &plist_data, &plist_size); // THIS NEED TO BE CHANGED TO THE FILE PATH

    backup_add_directory(backup, "HomeDomain", "Library/ConfigurationProfiles", 0755, 501, 501);
    backup_add_file_with_data(backup, "HomeDomain", "Library/ConfigurationProfiles/test.plist", 0755, 501, 501, 4, plist_data, plist_size); // WE ADD OUR FILES
         
    backup_add_directory(backup, "SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles", NULL, 0755, 501, 501);
    backup_add_symlink(backup, "SysSharedContainerDomain-systemgroup.com.apple.configurationprofiles", "Library", "/private/var/mobile/Library", 501, 501); // CHANGE THE PATH TO THE SANDBOXED FOLDER YOU WANT TO WRITE IN YOUR FILES
    
    backup_write_mbdb(backup); // SAVE THE BACKUP
    backup_free(backup);

披露时间表

  • 向 Apple 提交的初步报告:[2024 年 6 月 7 日]

  • 指定 CVE:CVE-2024-44258

  • 公开披露:[2024/11/02]

致谢

特别感谢 Apple 安全团队的快速响应和合作。

Hichem Maloufi 和 Christian Mina 发现的漏洞

原文始发于微信公众号(Ots安全):CVE-2024-44258:ManagedConfiguration Framework 中的符号链接漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月8日15:57:47
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-44258:ManagedConfiguration Framework 中的符号链接漏洞https://cn-sec.com/archives/3373629.html

发表评论

匿名网友 填写信息