这两天,forcequitOS 公开了名为 bad_query 的漏洞利用代码。支持 iOS 26.0 - 26.6.1 / 27.0b4 。它利用 iOS / iPadOS Container Manager 私有查询接口的权限校验问题,通过获取并消费 sandbox extension token,让 App 临时读取正常沙盒范围之外的部分容器和文件。
我用 Codex 做了一个基于 bad_query 的 iOS 文件浏览器
,让 App 临时读取正常沙盒范围之外的部分容器和文件。
漏洞利用代码:https://github.com/forcequitOS/bad_query
基于这个项目,我使用 Codex 开发了一个原生的 iOS / iPadOS 文件浏览器,取名为 Vellune。也是只支持 iOS 26.0 - 26.6.1 / 27.0b4 。它可以发现并浏览应用容器、App Group、插件、内部守护进程以及部分系统容器,也支持预览文本、JSON、属性列表和图片,并可将文件复制到 App 自身缓存后,通过系统共享面板导出。
项目网站:https://xnu.app/vellune/GitHub:https://github.com/everettjf/vellune
Vellune 目前保持只读,不提供删除、修改、重命名或覆盖源文件等操作。每次访问目标路径时,App 都会单独申请沙盒扩展,并在操作结束后立即释放。项目还加入了真机诊断功能,可以检查容器发现、文件读取、预览和安全导出等能力是否正常。
目前我已经将 Vellune 适配到 iOS / iPadOS 26 至 27 beta 3,并在运行 iPadOS 27 beta 3 的 iPad Air 真机上完成了回归测试。上游 bad_query 项目说明支持至 iOS 26.6.1 和 iOS 27 beta 4,但不同设备和系统构建版本之间仍可能存在差异。模拟器只能验证编译和界面,实际的沙盒访问能力需要在兼容的实体设备上测试。
Vellune 现阶段主要面向开发者和安全研究人员使用,暂时不提供可以直接安装的公开版本。感兴趣的开发者可以从 GitHub 下载源码,通过 Xcode 配置自己的开发团队、签名和 App Group,然后自行编译并安装到 iPhone 或 iPad。
Vellune 及相关技术仅供学习、安全研究和开发测试使用。请只在自己拥有的设备和数据上使用,或确保已经获得明确授权,请勿用于未经授权的数据访问。