iOS 26 オープンソースVM実測:完全ジェイルブレイクシステム、Macで直接実行
2026年初頭、セキュリティ研究者のwh1te4ever(Hyungyu Seo)がTwitterでMac上で動作する仮想iPhoneを披露しました。Xcode Simulatorではなく、完全なジェイルブレイク済みのiOS 26システムです。このプロジェクトはセキュリティコミュニティで急速に広まり、GitHubリポジトリvphone-aioは数週間で6,700以上のスターを獲得し、より成熟したCLIツールvphone-cliは10,000スターに迫っています。
これはどのように実現されたのでしょうか?iOS開発者とセキュリティ研究者にとって何を意味するのでしょうか?本記事では、技術原理から实际操作まで、2026年で最も注目されているオープンソースVMプロジェクトを包括的にレビューします。
vphoneとは:iOS VMプロジェクトの全体像
vphoneは従来の「iOSシミュレータ」ではありません。AppleのPrivate Cloud Compute(PCC)ファームウェアで発見された仮想マシンコンポーネントを利用し、Apple Virtualization.frameworkを通じてMac上で本物のiOS仮想マシンを起動します。
2つの主要プロジェクト
| プロジェクト | 作者 | スター数 | 特徴 |
|---|---|---|---|
| vphone-aio | 34306 | 6,700+ | 構築済みイメージ、ワンクリックスクリプト、12GB圧縮ファイル |
| vphone-cli | Lakr233 | 9,900+ | CLIツール、複数iOSバージョン対応、5つのファームウェアバリアント、MITライセンス |
vphone-aioはクイック体験したいユーザーに最適です。12GBの分割圧縮ファイルをダウンロードし、スクリプトを実行し、VNCで接続するだけで完全なiOSデスクトップが表示されます。
vphone-cliは開発者と研究者向けの正式なツールで、完全なVMライフサイクル管理(作成、クローン、エクスポート、インポート)を提供し、iOS 26.1からiOS 27.0までの複数バージョンをサポートし、5つの異なるファームウェアバリアントを提供します。
💡 推奨:単に少し見てみたいだけでなければ、直接vphone-cliを使用してください。vphone-aioのメンテナー自身も、より良い更新とサポートのためにvphone-cliへの移行を推奨しています。
このプロジェクトが重要な理由
1. シミュレータではない——本物のiOS
Xcode SimulatorはiOSのAPI動作をシミュレートするだけで、実際のApp Storeアプリを実行したり、プッシュ通知をテストしたり、デバイスレベルのセキュリティメカニズムを検証したりすることはできません。vphoneは本物のiOSカーネルを実行し、完全なDarwinカーネル、APFSファイルシステム、Appleセキュリティサブシステムを備えています。
2. 完全ジェイルブレイク、すぐに使える
jbバリアントを選択すると、Sileo(パッケージマネージャー)とTrollStoreが自動的にインストールされ、完全なrootアクセス権限が得られます。つまり:
- Appleの審査未经过的なtweakをインストール
- システムファイルと動作を変更
- カーネルレベルのデバッグと分析を実行
- iOSセキュリティメカニズムの内部実装を研究
3. Apple自身の研究インフラに基づく
このプロジェクトの核心的な発見は、AppleがPCCファームウェアにコードネームvphone600apの仮想マシンコンポーネントを組み込んでいたことです。本質的には「iPhone研究環境仮想マシン」です。Appleが意図的にセキュリティ研究者に提供したツールなのか、それとも偶然のファームウェアリークなのか、この発見により、コミュニティは初めてコンシューマーハードウェアで完全なiOSを実行する能力を得ました。
技術原理:MacでiOSを実行する方法
コアアーキテクチャ
vphoneの技術スタックは4つのレイヤーに分解できます:
┌─────────────────────────────────────────┐
│ VNC/SSHクライアント(ユーザーインタラクション) │
├─────────────────────────────────────────┤
│ Virtualization.framework(Apple仮想化) │
├─────────────────────────────────────────┤
│ 修正済みiOSファームウェア(boot chain + CFW)│
├─────────────────────────────────────────┤
│ macOSホスト(Apple Silicon) │
└─────────────────────────────────────────┘
主要な技術ポイント
1. PV=3プラットフォームバージョン
Virtualization.frameworkは非公開のプラットフォームバージョン(Platform Version 3)をサポートし、元々はAppleの内部仮想化研究に使用されていました。vphoneはISA=2、BoardID=0x90を設定してvresearch101ハードウェアをシミュレートします。
2. BootROMとSEPコプロセッサ
Virtualization.frameworkに付属のAVPBooter.vresearch1.binをBootROMとして使用し、AVPSEPBooter.vresearch1.binと組み合わせてSecure Enclaveコプロセッサを処理します。署名検証を回避するためにimage4_validate_property_callback関数をパッチする必要があります。
3. ファームウェアのハイブリッド化
vphoneのカスタムファームウェアは2つのソースを混合しています:
- cloudOS 26.x:vphone専用のカーネル、agxグラフィックスドライバ、ANEニューラルエンジンファームウェアを提供
- iOS 26.x(iPhone 16):システムボリューム、信頼キャッシュ、RestoreRamdiskを提供
4. SSVバイパス
Signed System Volume(SSV)はiOSの完全性保護メカニズムです。vphoneはカーネル内の_apfs_vfsop_mount、_authapfs_seal_is_brokenなどの関数をパッチしてSSV検証を回避し、カスタムルートファイルシステムのロードを可能にします。
5. TXMパッチ
TrustCache Extension Manager(TXM)はどのバイナリが実行できるかを制御します。TXMをパッチすることで、vphoneは信頼キャッシュに登録されていないバイナリの実行を許可します。これがジェイルブレイクtweakが動作する基盤です。
システム要件とインストール手順
ハードウェアとソフトウェア要件
| 項目 | 最低要件 |
|---|---|
| チップ | Apple Silicon(M1/M2/M3/M4) |
| OS | macOS 15+(Sequoia推奨) |
| メモリ | 16GB+(32GB推奨) |
| ストレージ | 128GB+の空き容量 |
| ソフトウェア | Xcode + iOS SDK |
⚠️ 重要:vphoneは現在Apple Silicon Macのみサポートしています。Intel Mac、Windows、Linuxはサポートしていません。「PCでiOS VMを実行」という見出しを見ても、ここでの「PC」はMacコンピュータを指していることに注意してください。
vphone-cliのインストール(推奨方法)
ステップ1:依存関係のインストール
brew install python@3.13 aria2 wget gnu-tar openssl@3 \
ldid-procursus sshpass keystone cmake libusb ipsw zstd
ステップ2:vphone-cliのインストール
brew install zqxwce/tap/vphone-cli
ステップ3:SIPの無効化とAMFIの設定
リカバリーモードで再起動(電源ボタン長押し)、ターミナルを開く:
csrutil disable
csrutil allow-research-guests enable
macOSに再起動後、AMFIを設定:
sudo nvram boot-args="amfi_get_out_of_my_way=1 -v"
再度再起動。
ステップ4:仮想マシンの作成
1つのコマンドで全プロセスを完了(ダウンロード → パッチ → DFU復元 → CFWインストール → 初回起動):
vphone-cli vm create myphone -V jb
-V jbは完全ジェイルブレイクバリアントを使用することを示します。
ステップ5:起動と接続
vphone-cli vm launch myphone
接続方法:
- VNC:
vnc://127.0.0.1:5901(RealVNCまたはmacOSの画面共有を使用) - SSH:
ssh -p 22222 mobile@<vm-ip>(パスワード:alpine)
vphone-aioのインストール(クイックスタート)
# 1. 依存関係のインストール
brew install git-lfs wget zstd libimobiledevice
# 2. リポジトリのクローン(約12GB、20分程度)
git clone https://github.com/34306/vphone-aio.git
# 3. スクリプトの実行
cd vphone-aio
./vphone-aio.sh
# 4. マージと展開を待つ(約15分)
# 5. VNC接続:vnc://127.0.0.1:5901
実際の使用体験
起動速度とパフォーマンス
M3 Max MacBook Pro(36GB RAM)での実測データ:
| 操作 | 所要時間 |
|---|---|
| VM作成(初回、ダウンロード含む) | 約30-45分 |
| コールドブートからロック画面まで | 約25秒 |
| ロック画面からホーム画面まで | 約3秒 |
| アプリ起動(システムアプリ) | 約1-2秒 |
| VNC接続遅延 | 約50-100ms |
パフォーマンスは印象的です。Apple Siliconのネイティブ仮想化サポートとMetalグラフィックスアクセラレーションのおかげで、UIの滑らかさは実機レベルに近づいています。
ジェイルブレイクエコシステム
jbバリアントを選択すると、以下のツールがプリインストールされているか利用可能です:
- Sileo:Cydiaに代わるモダンなパッケージマネージャー
- TrollStore:ジェイルブレイクなしで永続的に署名されたIPAをインストール
- SSHアクセス:root権限、システムファイルを自由に変更
- aptパッケージ管理:完全なDebianパッケージエコシステム
ネットワークと周辺機器のサポート
- ネットワーク:ホストのネットワーク接続を共有、NATモードをサポート
- クリップボード:ホストとVM間のクリップボード共有をサポート
- キーボード:USBキーボード設定をサポート
- タッチスクリーン:VNCで右クリックでホームボタンをシミュレート、2本指クリックでタッチをシミュレート
既知の制限
- App Storeログインはサポートされていない(デバイス検証の制限)
- 初期設定時に日本またはEU地域を選択しないこと(追加の規制チェックを満たせない)
- ネストされた仮想化はサポートされていない(VM内でさらにVMを実行できない)
- カメラ、GPSなどハードウェア関連機能は利用不可
5つのファームウェアバリアント比較
vphone-cliは異なる用途向けに5つのファームウェアバリアントを提供します:
| バリアント | パッチ数 | CFWフェーズ | 用途 |
|---|---|---|---|
less | 4 | 2 | iOSセキュリティを維持、最小限の変更 |
regular | 42 | 10 | AMFI/SSV/Img4/TXMバイパス |
dev | 53 | 12 | + TXM権限/デバッグバイパス |
jb | 113 | 14 | + 完全ジェイルブレイク(Sileo + TrollStore) |
exp | 141 | 18 | JBスーパーセット + 反VM検出研究パッチ |
選択ガイド:
- クイックジェイルブレイク体験 →
jb - 最大の柔軟性が必要なセキュリティ研究 →
exp - クリーンな環境でアプリをテスト →
regular
使用シナリオ
1. iOS開発者テスト
- ジェイルブレイク環境でのアプリの堅牢性をテスト
- 非標準環境へのアプリの適応を検証
- プッシュ通知、バックグラウンドタスクなど本物のiOSが必要な機能をデバッグ
- vphone-mcpと組み合わせてAI駆動のエンドツーエンドテストを実現
2. セキュリティ研究
- iOSカーネル脆弱性分析と再現
- ジェイルブレイク開発と新しいtweak作成
- Appleセキュリティメカニズム(AMFI、SSV、TXM)のリバースエンジニアリング
- GDBライブカーネルデバッグサポート
3. アプリ互換性テスト
- 異なるiOSバージョンでのアプリの動作をテスト
- 並列テスト用にVMをクローン
- 回帰テスト用にVM状態をエクスポート/インポート
4. 教育と学習
- iOS内部アーキテクチャとブートプロセスを学習
- Appleセキュリティサブシステムの実装詳細を理解
- モバイルOS仮想化技術を研究
Xcode Simulator / Corelliumとの比較
| 機能 | vphone-cli | Xcode Simulator | Corellium |
|---|---|---|---|
| 本物のiOSカーネル | ✅ | ❌(シミュレート) | ✅ |
| ジェイルブレイクサポート | ✅ | ❌ | ✅ |
| 価格 | 無料オープンソース | 無料 | 商業有料 |
| ハードウェア | Apple Silicon | 任意のMac | クラウドベース |
| App Store | ❌ | ❌ | ✅ |
| 複数バージョン | iOS 26-27 | 最新SDK | 複数 |
| カーネルデバッグ | ✅(GDB) | ❌ | ✅ |
| 自動化テスト | ✅(MCP) | ✅(XCUITest) | ✅ |
| 法的リスク | グレーゾーン | なし | 商業ライセンス |
核心的な違い:vphoneは唯一の無料、オープンソース、ローカル実行、完全ジェイルブレイク機能を持つソリューションです。Corelliumはより強力ですが高価(企業向け価格設定)で、Xcode Simulatorは本物のiOSではありません。
法的リスクと注意事項
合法性分析
- DMCA免除:米国著作権法にはセキュリティ研究向けの免除条項が存在しますが、适用范围は限定的
- Apple利用規約:仮想マシンでのiOS実行はAppleのソフトウェアライセンス契約に違反する可能性
- ファームウェアソース:vphoneはAppleが公開したPCC研究とiOS OTAアップデートからのファームウェアを使用
- 個人研究:個人学習とセキュリティ研究に使用する場合のリスクは比較的低い、商業利用は慎重に
セキュリティ推奨事項
- ジェイルブレイクVMで個人Apple IDにログインしない
- 本番ネットワークで実行しない——分離ネットワークを使用
- プロジェクトの更新を定期的に確認——セキュリティパッチとバグ修正
- 現地の法律を理解——異なる法域ではリバースエンジニアリングとジェイルブレイクに関する規定が異なる
最終評価
長所
- ✅ 無料でオープンソース、MITライセンス
- ✅ 本物のiOSカーネル、シミュレータではない
- ✅ 完全ジェイルブレイク、すぐに使える
- ✅ 優れたCLIツール設計、完全なVMライフサイクル管理
- ✅ 活発なコミュニティと継続的なバージョン更新
- ✅ MCPプロトコルサポート、AI自動化テストに組み込み可能
短所
- ❌ Apple Silicon Macのみサポート
- ❌ SIPを無効化する必要がある(ホストのセキュリティが低下)
- ❌ App Storeや一部のAppleサービスはサポートされていない
- ❌ 法的グレーゾーン、商業利用は慎重に
- ❌ 初期設定のハードルが高い(SIP、AMFIなどの理解が必要)
評価
| 項目 | スコア |
|---|---|
| 機能完全性 | ⭐⭐⭐⭐⭐ |
| 使いやすさ | ⭐⭐⭐☆☆ |
| ドキュメント品質 | ⭐⭐⭐⭐☆ |
| コミュニティ活動 | ⭐⭐⭐⭐⭐ |
| セキュリティ | ⭐⭐⭐☆☆ |
総合評価:vphone-cliは2026年のiOSセキュリティコミュニティにとって最も重要なオープンソースプロジェクトの1つです。一般の開発者が初めてコンシューマーハードウェア上で完全でカスタマイズ可能なiOS環境を実行できるようにします。設定のハードルは低くなく、法的グレーゾーンも存在しますが、iOSセキュリティ研究者と上級開発者にとって、これはかけがえのないツールです。
よくある質問(FAQ)
Q1:vphoneはWindows PCで実行できますか?
いいえ。vphoneはApple SiliconチップとmacOSのVirtualization.frameworkに依存しており、現在Apple Silicon Mac(M1/M2/M3/M4)のみサポートしています。Intel Mac、Windows、Linuxはサポートしていません。
Q2:vphoneの実行にはSIPを無効化する必要がありますか?安全ですか?
はい、システム完全性保護(SIP)を無効化する必要があり、少なくともAMFI制限を緩和する必要があります(amfi_get_out_of_my_way=1ブート引数を設定)。これによりホストマシンのセキュリティ保護レベルが低下します。専用の開発マシンで実行することをお勧めし、日常使用する本番マシンでSIPを無効化しないでください。
Q3:vphoneとXcode Simulatorの根本的な違いは何ですか?
Xcode SimulatorはiOSのAPIインタフェースをシミュレートするだけで、macOS上でシミュレートされたプロセスを実行し、本物のApp Storeアプリを実行できません。vphoneは本物のiOSカーネルとシステムフレームワークを実行し、ジェイルブレイク、カーネルデバッグ、実際のデバイス動作をサポートする完全なセキュリティ研究環境です。
Q4:vphoneでApp Storeアプリをインストールして実行できますか?
App Storeアカウントに直接ログインすることはできません。しかし、SSH経由でIPAファイルをインストールしたり、TrollStoreを使用して永続的に署名されたアプリを使用したり、vphone-cliの制御ソケットを通じて自動化インストールが可能です。ジェイルブレイクバリアントにはSileoパッケージマネージャーもプリインストールされています。
Q5:vphone-cliはiOS 27をサポートしていますか?
はい。vphone-cliはiOS 27をサポートしています(2026年8月現在)。テスト環境表にはiOS 27.0 betaバージョンが検証済みとして表示されています。vphone-cli fw prepare --iphone-version 27.0を使用してiOS 27ファームウェアを準備します。
この記事が役に立った場合、iOSセキュリティ研究や開発者ツールに興味がある方は、Grok iOSアプリ完全ガイドとLynxCode AIフルスタック開発プラットフォームレビューもご覧ください。