Brifing

Run Virtual iPhones Using Apple's Virtualization.framework

New developer tool enables virtual iPhone environments on Mac systems

Hacker News2 min

1What is Virtual iPhone?

Apple's Virtualization.framework allows developers to create virtual iPhone environments on Mac computers. The technology is specifically designed for application testing and system research. The vphone-cli tool developed by Lakr233 simplifies virtual iPhone management via terminal. Users can create and manage VMs with single commands, streamlining the development workflow.

2Installation Process

The system requires installation of dependencies through Homebrew first. Essential tools like Python 3.13, aria2, and wget must be installed. Then the vphone-cli repository needs to be cloned from GitHub, followed by running the setup_tools.sh script. This process installs submodules and creates a Python virtual environment. The build.sh script compiles and signs the application for secure execution.

3Virtual Machine Management

The vphone-cli tool offers one-command automated VM creation. The 'vphone-cli vm create myphone' command handles downloading, patching, DFU restoration, and CFW installation automatically. Users can customize CPU cores, memory allocation, and disk size. VMs can be duplicated via fast APFS cloning and made portable using zstd compression for easy sharing between systems.

4Security Configuration

System operation requires disabling SIP (System Integrity Protection) and AMFI (Apple Mobile File Integrity) restrictions. Two approaches are available: complete disablement or research-oriented relaxation. For AMFI bypass, users need either the 'amfi_get_out_of_my_way=1' boot argument or the specialized amfidont tool. These modifications potentially reduce system security and should be applied cautiously.

5Supported Environments

The tool has been tested on Mac16 series hardware with macOS versions 26.x through 27.0 beta. It supports iOS versions from 26.1 up to 27.0 beta. Compatibility confirmed with CloudOS versions between 17.3 and 18.6.2. Extensive testing conducted particularly on Mac16,11 and Mac16,12 models under various configurations.

6Common Issues

The most frequent problem is the 'zsh: killed' error, caused by incomplete AMFI restriction removal. Another limitation involves VM nesting restrictions. When stuck at 'Press home to continue', connecting via VNC and right-clicking simulates the home button. Selecting non-US regions during setup may prevent system app installations due to additional regulatory checks.

7Developer Use Cases

This tool proves valuable for iOS developers, security researchers, and systems engineers. It provides an ideal environment for jailbreak research, application security testing, and iOS behavior analysis. Five patch variants are available offering different access levels: SSH jailbreak, regular SSH, VNC, and security bypass levels. Each variant enables distinct control capabilities for various testing scenarios.

8Future Potential

This Virtualization.framework-based solution expands virtualization possibilities within Apple's ecosystem. With iOS 18, new patches are being developed to address EXC_GUARD issues. The technology could enable more complex virtual environments and advanced testing scenarios in future. It serves as a powerful temporary solution until Apple offers official virtual iPhone support.

Original article: Hacker News — Apple Sanal iPhone Oluşturma Aracı: Virtualization.framework