无限制iOS安装运行 IPA启动器介绍: LiveContainerLiveContainer 是一款应用启动器(非模拟器或虚拟机监控程序),LiveContainer 是一个 iOS App 启动器——注意,不是模拟器,也不是虚拟机,是真正在原生 iOS 运行时里执行目标 App。
允许您安装无限数量的应用(解决突破免费开发者账号的 3 个应用/10 个 App ID 限制),且只需一个应用和一个 App ID。核心能力三句话说清楚:
- 无限 App 安装:所有 App 装在 LiveContainer 里,只占 1 个 App ID,突破只能安装 3 个应用限制
- 无需 JIT 即可运行:JIT-Less 模式下,App 用 LiveContainer 自己的证书自动签名,直接启动
- 多任务:同一个 App ID 可以装多个数据容器,相当于多账号同时在线;还支持画中画和分屏
LiveContainer技术原理:它是怎么实现的?
LiveContainer 没有用到任何越狱漏洞,
而是对 Mach-O 二进制格式、dyld 动态链接器做了精准的"外科手术"。
第一步:把 App 的可执行文件变成动态库
因为单独的 iOS App 的主可执行文件(MH_EXECUTE)都无法被另一个进程直接加载。
因此 LiveContainer 做了两件事:
1. 修改 __PAGEZERO 段: vmaddr: 0x0 → 0xFFFFC000 vmsize: 0x100000000 → 0x40002. 把文件类型从 MH_EXECUTE 改成 MH_DYLIB
经过这两个补丁,
目标 App 就变成了一个可以被 dlopen() 加载的动态库MH_DYLIB
第二步:欺骗 dyld,让 App 以为自己是主进程
App 启动时会调_NSGetExecutablePath 查询自己的路径。LiveContainer hook 了这个函数进行替换ipa路径:
Hook dyld4::APIs::_NSGetExecutablePath → 调用原始函数获取真实路径 → 用 builtin_vm_protect / TPRO 解锁内存写权限 → 把路径替换成其他的目标 App 的路径 → 还原原始函数
NSBundle.mainBundle 也被替换成目标 App 的 bundle,
让 App 完全认为自己运行在"自己的"进程里, 其实已经切换到其他ipa
第三步:dlopen 加载,跳到入口点
dlopen(目标App可执行文件路径) → TweakLoader 注入所有 .dylib tweak → 找到 App 的 entry point → 直接跳转执行 → App 调用 UIApplicationMain,正常启动
整个过程不需要越狱,不需要内核漏洞,完全在用户态完成。
LiveContainer下载
LiveContainer 提供独立版本和内置 SideStore 的版本用LiveContainer+SideStore合并版,只占一个App ID和App位置,但可以无限安装ipa,普通账号只需要七天重签一次,不用付钱系统要求
功能与指南
安装应用
打开 LiveContainer,点击右上角的加号图标,选择要安装的 IPA 文件。添加应用到主屏幕
多个 LiveContainer
使用多个 LiveContainer 可以让您同时运行多个不同的应用,容器之间的数据传输几乎无缝。多任务处理
现在,您可以在应用内的虚拟窗口中同时启动多个应用。这些窗口可以调整大小、缩放,甚至可以使用原生画中画(PiP)功能显示。在 iPad 上,应用可以以原生窗口模式运行,每个应用在单独的系统窗口中显示。如果您愿意,还可以在设置中将多任务模式设为默认的应用启动方式。要使用多任务功能,请按住应用横幅并点击"多任务"。您也可以在设置中将多任务设为默认启动模式。注意点
若要使用多任务功能,请确保在通过 SideStore/AltStore 安装时选择"保留应用扩展"。如果您想为多任务应用启用 JIT,需要一个支持通过 PID 附加的 JIT 启用工具。(如 StikDebug)部分应用在 LiveContainer 中可能会出现文件选择器异常或无法申请通知权限的问题。若要解决此问题,请在应用专属设置中相应启用“修复文件选择器”和“修复本地通知”选项。“在应用中打开”支持
点击“应用”标签右上角的链接图标并输入 URL。LiveContainer 将检测合适的应用,并询问您是否要启动它。此外,您可以使用此快捷指令将网页分享至 LiveContainer。请确保将此快捷指令添加到分享面板操作的“收藏夹”中。兼容性
遗憾的是,并非所有应用都能在 LiveContainer 中正常运行,因此我们提供了一个兼容性列表,用于说明存在问题的应用。如果某应用未在该列表中,则它很可能可以正常运行。但如果无法运行,请就此提交 issue。构建
打开 Xcode,在 xcconfigs/Global.xcconfig 中编辑 DEVELOPMENT_TEAM[config=Debug] 为您的团队 ID,然后进行编译。项目结构
主可执行文件
若未选择应用,则加载 LiveContainerSwiftUI。LiveContainerSwiftUI
LiveContainerUI 的 SwiftUI 重写版本(由 @hugeBlack 开发)多语言支持的语言文件 Localizable.xcstrings 位于此处。如需帮助我们翻译 LiveContainer,请访问我们的 Crowdin 项目。多任务支持
SideStore
TweakLoader
一个简单的插件注入器,用于加载 CydiaSubstrate 和插件。会注入到你在 LiveContainer 中安装的每个应用。ZSign
LiveContainer 使用由 khcrysalis 修改的 Feather 版本的 ZSign。已根据 LiveContainer 的需求进行了修改。工作原理
修补来宾可执行文件
将 MH_EXECUTE 更改为 MH_DYLIB。注入加载命令以加载 TweakLoader.dylib挂钩 dyld4::APIs::_NSGetExecutablePath替换 config.process.mainExecutablePath恢复原始的 dyld4::APIs::_NSGetExecutablePath旧方法
- 使用无效的缓冲区指针输入调用
_NSGetExecutablePath -> SIGSEGV - 执行一些魔法操作来覆盖 executable_path 的内容。
修补 NSBundle.mainBundle
绕过库验证
JIT 是绕过代码签名的可选方式。在无 JIT 模式下,所有可执行文件都经过签名,因此此条不适用。源自 Restoring Dyld Memory Loading动态打开可执行文件
TweakLoader 加载所选文件夹中的所有插件找到入口点
来宾应用的入口点调用 UIApplicationMain 并像其他任何 iOS 应用一样启动。多账户支持与钥匙串半隔离
系统会创建128个钥匙串访问组,LiveContainer 会为同一应用的每个容器随机分配这些访问组。因此,您可以创建128个具有不同钥匙串访问组的容器。限制
访客应用的权限不会应用到宿主应用。不过这影响不大,因为侧载应用通常只需要基本权限。访客应用容器未进行沙盒隔离。这意味着一个访客应用可以访问其他访客应用的数据。iPhone直装IPA AltStore Windows + macOS教程
在Windows PC上安装AltStore
Windows用户的iPhone或iPad运行的是iOS 12或更新的操作系统版本,设备与AltServer 在同一个WiFi 网域下,
AltStore 会在后台自动更新App 签名。
重要说明
你必须将iTunes安装在
Win32 (https://www.apple.com/itunes/download/win32)
Win64 (https://www.apple.com/itunes/download/win32
选择你的Windows版本的AltStore (https://www.altstore.io/ )
右键单击AltStore .zip文件夹,
选择 "全部解压",以获得计算机上的所有文件。
双击 "Setup.exe "文件。你会看到屏幕上的指引,
你应该遵循在Windows PC上安装AltStore。
在你的键盘上,点击Windows键。
现在输入 "AltServer "这个词并启动该软件。
准备工作
“AltStore”虽然是一个在iOS上跑的软件,但是想正常使用还是需要电脑端AltServer的配合。AltStore是不支持Windows 7/8.x的, 只能是Win10/11接下来双击打开刚刚下载好的“altinstaller.zip”打开:然后就可以在开始菜单里看到AltServer的图标,点击运行。iTunes下载(64位):https://www.apple.com/itunes/download/win64iTunes下载(32位):https://www.apple.com/itunes/download/win32iCloud下载:https://updates.cdn-apple.com/2020/windows/001-39935-20200911-1A70AA56-F448-11EA-8CC0-99D41950005E/iCloudSetup.exe千万不要手贱去疯狂的点开始菜单里的AltServer,否则就会这样:需要准备一个专门用来签名的Apple ID ,免费开发者仅只有7天到期问题,不过AltStore 会不定期在后台刷新应用程式实现自动重签,可以通过AltStore 手动刷新你的应用程式(需在同个WiFi)。
如果Apple ID有开启双重认证,则需要设置App专用密码。
Windows安装Altstore步骤
步骤1:通过Windows 电脑下载AltStore 工具(下载位置与官方同步)。
Windows版AltStore.zip
步骤2:下载后右键解压缩出来,并且双击「setup」开始安装AltServer。
安装完以后,点击电脑左下角放大镜「搜寻框」内输入「alt」,就会找到「AltServer」应用程序,第一次打开时,会跳出Windows Defender 防火墙警示,
将「私人网路和公用网路」都勾选起来,并且按下「允许存取」。
步骤3:将iPhone或iPad 连接到电脑,打开爱思助手查看是否连接成功,如果可以正确读取设备资讯即可。
(如果无法读取设备信息,请确认iOS 设备上有没有点「信任」,或是换另一个USB 孔试试。)
步骤4:电脑下载AltServer Patcher工具,安装好以后打开,点击Utility to Install 选单,该工具内建好几款越狱工具载点,如果想要装其他IPA (App),就要点选「Custom IPA Link」。
要获取IPA Link 方式,可以直接通过网页提供的IPA 下载点,
右键选择「复制连连结网址」直接复制即可。
贴在IPA URL 框内时,最多只能55 个字节时
可以利用bitly网站, 将原本很长的IPA网址缩短。
步骤5:确认好要安装的IPA 后,点击「Patch!」按钮,这时会跳出一个AltServer has been patched to install that IPA.. 对话框,点击「确定」
步骤6:这时,AltServer 工具自动消失,我们需要再一次通过Windows 左下角放大镜「搜寻框」内输入「alt」,找到「AltServer」并运行。
步骤7:点击桌面右下角「Λ」,会看见「灰色菱形图示(AltStore)」,点击图示并且选择「Install AltStore」>「iOS设备名称」会跳出要求输入Apple ID和密码对话框,特别注意签名时候不能开启双重认证,如果有开请另外创建一组App专用密码,如有安全疑虑,建议另外注册一组全新Apple ID帐号来跑签名,最后按下「Install」开始安装。
(如果看不见设备名称,那表示没有将iOS 设备连上电脑,或是防火墙挡住。)
步骤8:在新弹出的对话框中,
我们将IPA 安装至iOS 设备对话框,点击「确定」。
(如果没有弹出对话框,请确认Apple ID与密码是否有错,
检查下载位置是否正确。)
此时,我们会看见Installing AltStore to 设备名称的对话框,
这表示正通过AltStore 签名安装IPA 中,请等待。
常见问题
- 有些App,在官网下载的速度比较缓慢,导致再利用AltStore 安装时,可能会需要等比较久时间才会出现在设备上,所以千万不要以为安装失败,就关掉停止操作,可以等个3~5分钟看看,毕竟AltStore 会先下载回来才会开始跑签名安装,有些时候下载也会影响到速度。
- 如果发现App打不开,请到iOS「设置」>「通用」>「设备管理」内,点选信任进入,会跳出询问窗口点击「信任」,才能顺利开启APP。
如果无法信任,可能描述文件被吊销就会无法信任,
只能移除APP, 换个ID重装一次。
3. 通过AltStore 签名安装的APP 都只有七天期限,
不过AltStore是可以实现自动签名的。
每周启动电脑时,自动开启AltServer ,只要在WiFi 连通就能够实现自动重签,如果经常性有在用电脑就不须担心七天到期问题。
如果不小心造成App 过期打不开了,只需再执行「步骤4」就没问题了。
AltStore Mac电脑使用教程
为什么要使用自签名
使用自签名的方式安装到手机上的包将会有7天的有效期,即使过期了,重新签名安装后之前下载的游戏和存档都会得到保留,不用再重新下载。自签名的步骤
一. 安装AltServer
进入 Altstore官网 首页,在下方找到下载按钮,下载并保存到电脑,如果在mac上操作,则使用下载macOS版。
把AltServer.app拷贝到/Applications目录下。二. 运行AltServer
在macOS Bigsur上运行AltServer.app, 系统在默认情况下会禁止不是从App Store中下载的软件运行,因此,我们在软件上点击右键, 选择"打开",或者是"Open",如下图:三. 安装AltStore到手机
使用上面的方法绕过限制后,就可以安装altstore到手机上了。在系统的右上菜单栏中点击altserver的图标,选择安装AltStore ("Install AltStore"), 选择你已经连接到电脑的手机。此时AltServer会要求你输入你的Apple Id与密码,在这一步如果你担心你的帐号密码泄漏,建议你新建一个专门用来玩游戏的账号来操作。如果你是刚安装的AltServer, 则它会要求你安装一个邮件插件,这个插件会用来操作与Apple服务器之间的邮件接收(用于发送接收验证码,证书验证相关操作):出现这个画面,则点击"安装插件"("Install Plug-in"),点击后安装插件需要管理员权限, 如果显示密码输入框,则输入你的操作系统登陆密码。安装完成邮件插件后,我们重新安装AltStore到手机(参见"三. 安装AltStore到手机")。必须安装这个插件才能使用四. 启用邮件通讯插件
在输入完你的Apple Id与密码后,可能会出现下面的错误:这个错误表示 AltServer无法连接到邮件插件。有可能的原因是:我们启动"邮件"("Mail")这个软件,并选择“偏好设置”:在弹出的窗口中勾选"AltPlugin.mailbundle",保持“邮件”在运行的状态下,我们回到第三步,安装 AltStore 到我们的手机上。五. 安装软件
操作完以上步骤后,AltStore就会成功地安装到我们的手机,点击手机上的AltStore的图标,有可能会弹出下面的错误框, 这是因为AltStore采用的我们自己的Apple ID对应的免费开发者证书签名,需要我们在手机上信任这个证书后才能运行。找到“设备管理”,点击进入。然后找到对应的签名,点击"信任"。操持电脑端的"AltServer"与"Mail"处于运行状态。 返回手机桌面,找到"AltStore"并运行,此时便可以运行"AltStore"了。输入安装 AltStore 时用的 Apple ID 并登陆。登陆完成后便可以在 AltStore 中直接安装里面列出的应用。六. 自签名IPA
我们需要安装我们自己的ipa应用,那应该怎么做呢。注意:在接下来的操作中,
1. 电脑端需要运行“AltServer”与“邮件”,
2. 并且保持手机与电脑处于同一个网络环境。
AltStore 提供了一个 Sideload 的功能,可以签名任意应用。七. 有效期WiFi刷新
3 打开手机上的"AltStore",找到需要刷新应用,