Dự án mã nguồn mở vphone-cli cho phép toàn bộ hệ thống iOS 27 chạy như một máy ảo trên Apple Silicon. Được xây dựng trên Virtualization.framework của riêng Apple, thay vì mô phỏng truyền thống, dự án mở ra những cơ hội mới cho nghiên cứu bảo mật, kỹ thuật đảo ngược và thử nghiệm iOS tự động.
Dựa trên công việc trước đây của wh1te4ever là quản lý iPhone ảo mà không cần sử dụng mô phỏng, vphone-cli sẽ tự động hóa toàn bộ quy trình. Quá trình này bao gồm việc tải xuống chương trình cơ sở và vá chuỗi khởi động cho đến thực hiện khôi phục DFU và thực hiện lần khởi động đầu tiên. Kết quả là iPhone ảo cung cấp quyền truy cập SSH với quyền root cũng như quyền truy cập VNC vào giao diện đồ họa của nó.
Apple chưa bao giờ chính thức cung cấp máy ảo iOS cho các nhà phát triển hoặc nhà nghiên cứu bảo mật. Tuy nhiên, công nghệ mà nó đã phát triển cho Điện toán đám mây riêng (PCC) để hỗ trợ nghiên cứu bảo mật trên nền tảng thông qua Môi trường nghiên cứu ảo bao gồm “máy ảo Môi trường nghiên cứu iPhone”. Dự án vphone-cli về cơ bản tập hợp các thành phần này lại với nhau và quá trình biến chúng thành một máy ảo iPhone đang hoạt động.
Xcode đã bao gồm một trình mô phỏng iPhone chạy một tập hợp con các thành phần không gian người dùng iOS được điều chỉnh để chạy trên phần cứng macOS. Tuy nhiên, trình mô phỏng có một số hạn chế, bao gồm hỗ trợ hạn chế cho các tính năng như truy cập máy ảnh, Bluetooth, Metal, App Store và cài đặt ứng dụng iCloud. Nó cũng sử dụng mục tiêu SDK khác với iPhone thực. Điều này có thể gây ra những khác biệt nhỏ về hoạt động và có nghĩa là việc thử nghiệm trong Trình mô phỏng không phải lúc nào cũng phản ánh đầy đủ cách ứng dụng hoạt động trên phần cứng thực.
Đánh giá dự án trên Hacker News, người dùng kridsdale1 cung cấp một bản tóm tắt hữu ích về sự khác biệt giữa trình mô phỏng iOS và vphone-cli:
iOS Simulator luôn là khung iOS duy nhất chạy tự động trên macOS. Tốt nhất bạn nên coi nó như một trình quản lý cửa sổ thay thế, nhưng các chương trình là các tiến trình gốc của Mac. Chúng có thể được xem và chỉnh sửa thông qua thiết bị đầu cuối bằng cách sử dụng top, ps và lldb cùng với tất cả các quy trình khác. Họ chỉ cung cấp Mac gui thông qua vùng chứa ứng dụng Trình mô phỏng.
Trong cùng một chủ đề, người dùng landr0id lưu ý rằng vphone-cli “hữu ích cho nghiên cứu bảo mật vì bạn có thể tắt tính năng gỡ lỗi kernel và kiểm tra thiết bị trong trình mô phỏng.” Một người đánh giá người dùng cũng nhấn mạnh tương tự về sự khác biệt giữa thử nghiệm trên thiết bị mô phỏng và thiết bị thực, tóm tắt nó một cách khéo léo: “sự khác biệt không thành vấn đề cho đến khi nó ở đó, và sau đó thật khó chịu khi tìm hiểu chuyện gì đang xảy ra.”
Trên LinkedIn, kỹ sư iOS cao cấp Daniyar Kurmanboev lưu ý rằng “khả năng tải chương trình cơ sở iOS thực, SSH vào và tái tạo môi trường có thể giúp việc bảo mật và gỡ lỗi ở cấp độ thấp trở nên thiết thực hơn nhiều”. Về vấn đề này, Karim Hesham nói thêm:
Việc sử dụng Virtualization.framework cho iOS khởi động đầy đủ là một thay đổi đáng kể về khả năng truy cập cho nghiên cứu bảo mật di động. Nó thu hẹp khoảng cách giữa môi trường phần cứng khép kín và khả năng tự động hóa có thể mở rộng, mặc dù nó cũng đặt ra những câu hỏi thú vị về mức độ “khu vườn có tường bao quanh” được duy trì bằng chính sách thay vì các rào cản kỹ thuật.
Theo quan sát cuối cùng, Apple không chính thức hỗ trợ sử dụng phần mềm iOS của mình theo cách này, vì vậy không rõ liệu các bản phát hành trong tương lai của Môi trường nghiên cứu ảo PCC có tiếp tục bao gồm các thành phần cần thiết để chạy máy ảo iOS hay không.