June 24th, 2024

Apple Disables WebKit's JIT in Lockdown Mode, & BrowserEngineKit Is Restricted

Apple has disabled WebKit's JIT in Lockdown Mode for enhanced security, aligning with EU's DMA. BrowserEngineKit enables secure JIT compilation, balancing performance and safety, requiring authorized developers for alternative browser engines.

Read original articleLink Icon
Apple Disables WebKit's JIT in Lockdown Mode, & BrowserEngineKit Is Restricted

Apple has disabled WebKit's JIT in Lockdown Mode, impacting JavaScript performance. Lockdown Mode is described as extreme protection for targeted individuals, blocking complex web technologies like JavaScriptCore's JIT interpreter. This move aligns with Apple's compliance efforts with the EU's DMA, allowing third-party browser engines while maintaining security. BrowserEngineKit was developed for this purpose, enabling JIT compilation in a secure manner. Apple's decision to use BrowserEngineKit reflects a balance between performance and security, requiring authorized developers to meet specific criteria for implementing alternative browser engines. While this approach adds complexity, it aims to enhance user safety online. The choice to create BrowserEngineKit demonstrates Apple's commitment to security in the face of the EU mandate for third-party browser engines.

Related

What Happens When You Put a Database in the Browser?

What Happens When You Put a Database in the Browser?

WebAssembly (Wasm) enhances browser capabilities, enabling high-performance apps like DuckDB for ad-hoc queries and Python environments. DuckDB Wasm boosts performance in interfaces like lakeFS, Evidence, and Count. MotherDuck enables local querying, emphasizing efficient data processing.

The First Spatial Computing Hack

The First Spatial Computing Hack

Ryan Pickren found a Safari bug letting websites flood a user's space with 3D objects. Apple fixed it (CVE-2024-27812) in June after Ryan's report. The bug exploited Apple AR Kit Quick Look, launching objects without consent.

Arm64EC – Build and port apps for native performance on Arm

Arm64EC – Build and port apps for native performance on Arm

Arm64EC is a new ABI for Windows 11 on Arm devices, offering native performance benefits and compatibility with x64 code. Developers can enhance app performance by transitioning incrementally and rebuilding dependencies. Specific tools help identify Arm64EC binaries and guide the transition process for Win32 apps.

Apple is first company charged with violating EU's DMA rules

Apple is first company charged with violating EU's DMA rules

Apple is the first company charged under the EU's Digital Markets Act for App Store policies hindering competition. Investigations focus on fees, alternative app stores, and compliance changes. EU aims to prevent anti-competitive practices.

Apple Wasn't Interested in AI Partnership with Meta Due to Privacy Concerns

Apple Wasn't Interested in AI Partnership with Meta Due to Privacy Concerns

Apple declined an AI partnership with Meta due to privacy concerns, opting for OpenAI's ChatGPT integration into iOS. Apple emphasizes user choice and privacy in AI partnerships, exploring collaborations with Google and Anthropic for diverse AI models.

Link Icon 2 comments
By @altairprime - 5 months
I bet they eventually run JITs using the exclave system, so that they can have full JIT performance in a hardware-isolated space. Lockdown mode is a good mitigation but a two-thirds performance loss is unacceptable, and once they get it working for lockdown mode they can drop all the hoopla. (Though it’ll still be complicated for multitasked apps on iPad.)
By @ec109685 - 5 months
Why doesn’t Apple just insist that JIT work happen within a firecracker like VM?

That seems like the safest place to run untrusted code versus hoping every developer treat external code extremely carefully.