HN
Today

The Deathray: A simple way for an untrusted site to freeze a Mac

A new 'Deathray' WebGPU bug can freeze an entire Mac by merely clicking a link, leading to a system-wide crash and restart. Apple, despite acknowledging the issue, controversially doesn't classify it as a security vulnerability, sparking debate among users. This highlights the delicate balance between enabling powerful web technologies and maintaining system stability and user trust.

61
Score
40
Comments
#3
Highest Rank
12h
on Front Page
First Seen
Sep 10, 11:00 PM
Last Seen
Sep 11, 10:00 AM
Rank Over Time
33599109810676

The Lowdown

A recently discovered "Deathray" vulnerability leverages WebGPU to freeze macOS systems, demonstrating how a simple web page can cause a kernel panic. The issue, which impacts M-series Macs across major browsers, raises significant questions about system stability and Apple's classification of security threats.

  • Mechanism: The Deathray exploits WebGPU's ability to run shaders on the GPU. A small, untrusted site can deploy a compute shader with a trivially identifiable infinite loop, causing the GPU to become unresponsive.
  • Impact: This GPU hogging starves the macOS WindowServer, leading to the desktop UI freezing and eventual kernel panic, forcing a system restart. Unlike other OSes, which typically only freeze the browser tab, macOS experiences a full system failure.
  • Architectural Clues: The author suggests that the unique architecture of M-series GPUs, where a coprocessor (ASC) handles GPU interactions, might contribute to the difficulty in pre-empting unresponsive shaders, unlike CPU processes.
  • Apple's Response: Despite disclosing the bug and Apple reproducing it, the company declined to classify it as a security issue, deeming it a "crash, hang, or recoverable data loss." They passed it to another team for "potential enhancement considerations," indicating a low priority for a fix.
  • Precedent: A similar WebGL-based bug, "ShadyShader," in 2023 also caused GPU hogging and received a CVE with a medium severity rating, but Apple's mitigation for that issue did not prevent the current WebGPU iteration.

The author argues that while not a data breach, the ability to crash a user's computer via a single click fundamentally violates user trust and has practical implications, even if only for malicious pranks. They hope Apple reconsiders its stance and fixes the issue without disabling WebGPU.

The Gossip

Debating Denial-of-Service Dangers

Commenters fiercely debated whether a denial-of-service (DoS) attack, such as the 'Deathray,' constitutes a security issue. Many agreed with Apple's technical definition that it lacks direct data theft or identity hijacking, thus not being a 'security' problem in the traditional sense. However, a significant number argued that the ability to crash an entire system from a web browser is a severe breach of user trust and a functional security flaw, equating it to the 'bad old days' of easily crashed OSes. The practical implications of being able to maliciously halt a user's workflow were emphasized, despite the lack of direct data exfiltration.

Browser Bloat & Boundary Breakthroughs

Many users expressed frustration with the increasing power and access granted to web browsers, particularly through APIs like WebGPU. There's a sentiment that browsers are becoming "operating systems on top of operating systems," creating an expanded attack surface for hardware-level issues. Some commenters highlighted how certain browsers, like Firefox, offer more granular control over disabling these advanced features, contrasting with others that seem to push towards broader capabilities. The discussion also touched on Chromebooks, where Chrome truly acts as the primary OS, making browser stability even more critical.

GPU Grievances & Guardrails

The technical discussion focused on *why* the Deathray affects macOS so severely, specifically probing the differences between CPU and GPU resource management. Commenters questioned why GPUs aren't multiplexed like CPUs, preventing a single runaway process from freezing the entire system. Explanations pointed to the complexity and cost of GPU context switching, large internal states, and shared resource allocation as reasons for less robust pre-emption compared to CPUs. The unique architecture of Apple Silicon Macs, involving a coprocessor (ASC) for GPU handling, was also cited as a potential factor in this vulnerability, making robust kernel-level GPU pre-emption challenging.

Catastrophic Click Chronicles

Several Hacker News users shared their experiences, both direct and indirect, with system-freezing events caused by the 'Deathray' or similar bugs. Some, despite warnings, clicked the link out of curiosity, confirming the system-wide freeze on their M-series Macs and describing varied outcomes, from complete lock-ups to partial UI responsiveness before a forced reboot. Others recounted past incidents of system-crashing vulnerabilities, like the iOS 7 Unicode string bug, drawing parallels to the current issue. These anecdotes underscored the real-world impact and the surprising nature of a browser tab bringing down an entire operating system.