Skip to content

DDW-X/WebGPU-Stress-PoC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

16 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Banner

⚑ TITAN-WEBGPU-STRESS

Browser Resource Management & Graphics Stack Auditing Framework

DDW-X Telegram Email


WebGPU Cyber Security Discovery Deployment


⚠️ CRITICAL LEGAL DISCLAIMER

Caution

READ BEFORE PROCEEDING

This repository documents a Browser Resource Exhaustion Technique researched by DDW-X. The Proof-of-Concept payloads (TITAN-A and TITAN-B) demonstrate a method of High-Frequency Asynchronous Compute Flooding that challenges standard browser watchdog timers.

  1. Objective: These scripts are designed to stress-test the host operating system's GPU driver stability and kernel responsiveness.
  2. Context: This tool is released as part of DDW-X's Cybersecurity Research, aimed at assisting browser vendors (Google, Microsoft, Apple) in identifying and patching resource management inconsistencies.
  3. Disclaimer: DDW-X assumes NO LIABILITY for hardware instability or data loss during testing. Usage is strictly for educational research and authorized system auditing.

πŸ΄β€β˜ οΈ The Discovery: A New Attack Vector

Titan-WebGPU-Stress introduces a novel approach to Denial of Service (DoS) vulnerability assessment. Traditional stress tests are often mitigated by browser Garbage Collectors or simple timeout mechanisms.

However, DDW-X has identified a "Concurrency Synchronization Gap" in modern browser engines. By aligning Web Workers (CPU threads) with Compute Shaders (GPU threads) using specific mathematical complexity (Gyroid FBM), we create a high-contention environment. This combination demonstrates a scenario where the CPU is fully occupied with thread management, hindering its ability to process interrupt signals, while the GPU is saturated with extensive raymarching calculations.


πŸ’€ Live Deployment Targets

WARNING: Accessing these links will initiate the stress testing algorithms immediately.

Target ID Codename API Impact Level Access Link Description
Target A ULTIMA WebGPU πŸ”΄ CRITICAL LAUNCH TARGET A Primary Research PoC. Utilizes hybrid CPU+GPU stress with 1.5x Super-Sampling. Designed to audit high-performance Desktop configurations.
Target B EXTREME WebGL2 🟠 HIGH LAUNCH TARGET B Optimized for mobile architecture compatibility. Uses nested FBM loops to test thermal throttling limits on tablets and phones.

πŸ”¬ Technical Architecture & Novel Vectors

Our research identifies three distinct vectors used in this suite that challenge standard browser protections:

1. The "Worker-Swarm" Lock (CPU Vector)

  • Concept: Utilization of navigator.hardwareConcurrency to maximize thread occupancy.
  • Mechanism: It executes a complex floating-point loop: x = Math.sin(x) * Math.cos(x) + Math.tan(x). This specific sequence is selected to prevent JIT (Just-In-Time) compiler optimizations, ensuring sustained CPU usage.

2. Volumetric Raymarching Saturation (GPU Vector)

  • Concept: Implementation of a Gyroid Surface algorithm inside a nested for loop with dynamic step increments (up to 6000 per pixel).
  • Mechanism: This $O(n^2)$ complexity saturates the GPU Arithmetic Logic Units (ALUs), forcing a delay in memory operations and testing the driver's ability to recover.

3. VRAM Bandwidth Flood

  • Mechanism: A dedicated chaosBuffer is rewritten every frame. This operation saturates the PCIe bus bandwidth with randomized data, challenging the Operating System's context-switching capabilities.

πŸ’€ Live Deployment & Payload Analysis

Caution

ACCESS WARNING: RESEARCH ENVIRONMENT

The links below host live stress-test payloads. DDW-X advises that testing may result in temporary system unresponsiveness or forced restarts due to driver timeouts.

PROCEED WITH CAUTION.

🎯 Target A: The "Mobile Killer" (WebGL2)

URL: https://ddw-x-lagging-test.vercel.app/

  • Architecture: WebGL2 Legacy Core (GLSL 3.00 es)
  • Primary Scope: Mobile Devices (Android/iOS) & Tablets.
  • Code Audit & Vector Analysis:
    • Initialization: Requests powerPreference: 'high-performance' to override battery saving profiles.
    • Loop Complexity: Inside the fragment shader (fs), a fixed for (int i = 0; i < 600; i++) loop executes per pixel.
    • Math Saturation: Utilizes exp(-abs(h)) combined with high-frequency fbm (Fractional Brownian Motion) noise calculation.
    • Result: Tests the thermal dissipation and driver stability of Mobile GPUs (Adreno/Mali/Apple Metal).

🎯 Target B: The "Desktop Meltdown" (WebGPU)

URL: https://ddw-x-lagging-test2.vercel.app

  • Architecture: WebGPU (Next-Gen) + Multi-Threaded Workers
  • Primary Scope: High-End PCs, Gaming Workstations, Chromium Browsers.
  • Code Audit & Vector Analysis:
    • Hybrid Exhaustion: Spawns CPU workers based on navigator.hardwareConcurrency to execute continuous mathematical loops, limiting main thread responsiveness.
    • VRAM Flood: Allocates a chaosBuffer (Storage Buffer) and updates it via device.queue.writeBuffer every frame to maximize PCIe throughput.
    • Infinite Complexity: Renders a Volumetric Gyroid surface where steps dynamically increase (steps = Math.min(6000...)), challenging the GPU driver's TDR (Timeout Detection Recovery) mechanism.
    • Result: Demonstrates potential for Operating System unresponsiveness requiring hardware reset.

πŸ“Š DDW-X Lab Report: Confirmed Vulnerabilities

This methodology has been tested by DDW-X against major platforms with the following results:

πŸ›‘ Case Study 1: Google Gemini Pro (AI Environment)

  • Test: Injecting the ULTIMA source code into the Gemini coding interface.
  • Result: Sandbox Termination. The AI's rendering sandbox encountered a fatal error (RenderProcessGone), demonstrating the effectiveness of this method in constrained environments.

πŸ›‘ Case Study 2: Telegram In-App Browser (Mobile)

  • Test: Loading the payload within the Telegram application.
  • Result: Application Freeze. The payload bypasses the mobile wrapper's resource limits, causing the UI layer to become unresponsive.

πŸ›‘ Case Study 3: Desktop Browsers (Chrome & Edge)

  • Result:
    • Chrome: Significant System Lag. Input peripherals may become unresponsive. Audio buffers may loop.
    • Edge: Tab termination or browser process crash due to memory violation handling.

πŸ“Ÿ Execution Telemetry & Crash Signatures

The following logs represent the standard execution flow observed during the ULTIMA (WebGPU) payload initialization. These metrics are displayed on the DOM overlay prior to thread saturation.

1. Successful Initialization (UI Overlay)

When the payload successfully initializes, real-time metrics are reported:

# T-Minus 0s (Injection)
> Initializing System Stress Test...
> WARNING: High Power Usage Detected

# T-Minus 0.3s (Thread Spawning)
> CORE LOAD: 12 Threads (100%)  # Dependent on Client CPU
> GPU STEPS: 1000 per pixel
> RES: 2560x1440                # Super-Sampling Active (1.5x)
> FPS: 60.0

# T-Minus 5.0s (Load Saturation)
> CORE LOAD: 12 Threads (100%)
> GPU STEPS: 4500 per pixel     # Step count increases dynamically
> RES: 2560x1440
> FPS: 4.2                      # Frame drops indicate VRAM/ALU saturation

πŸ›‘οΈ Mitigation Strategies

This section details technical countermeasures for "WebGPU Resource Exhaustion" vulnerabilities. These strategies aim to prevent OS instability during heavy graphical processing.

⏱️ 1. Strict TDR Enforcement (Timeout Detection and Recovery)

The primary defense against this vulnerability is robust TDR implementation at the browser and driver level.

  • The Issue: Browsers must not allow a dispatchWorkgroups command or geometric draw to monopolize the GPU beyond a safe threshold.
  • The Solution: If Shader Execution exceeds the allowed time limit (e.g., 2 seconds), the browser must forcibly terminate the GPUDevice context and trigger a device.lost event.

πŸ”„ 2. WGSL Loop Analysis & Limiting

DoS vectors often rely on infinite or computationally expensive loops in Compute Shaders.

  • The Solution: WebGPU engines should implement static analysis of loop complexity during WGSL compilation, injecting an internal Iteration Cap or "Watchdog Timer" for loops dependent on dynamic runtime inputs.

⚠️ 3. Graceful Device Loss Handling (Client-Side)

Developers should implement fail-safes to prevent page crashes if the graphics driver resets.

// Example: Handling GPU device loss gracefully
async function initWebGPU() {
  const adapter = await navigator.gpu.requestAdapter();
  const device = await adapter.requestDevice();

  // Event listener for when the GPU becomes unavailable
  device.lost.then((info) => {
    console.error(`❌ WebGPU device was lost: ${info.message}`);
    console.warn('Reason:', info.reason);

    // Mitigation: Disable heavy effects and switch to fallback
    fallbackToCanvas2D(); 
    alert('⚠️ Graphics driver reset due to high load. Switched to safe mode.');
  });
}

πŸ“¦ 4. Process Isolation

Ensure that WebGPU processes run in a Sandboxed GPU Process, strictly isolated from the Main Thread and the OS kernel.

Impact: This ensures that in the event of a resource exhaustion attack, only the browser's "graphics process" is terminated, preventing a complete OS Kernel Panic or System Freeze.


πŸ›‘οΈ DDW-X Security Services

This repository demonstrates the research capabilities offered by DDW-X.

  • Vulnerability Assessment: Identifying zero-day flaws in web infrastructure.
  • Stress Testing: Auditing the resilience of cloud-based renderers and browsers.
  • Consulting: Assisting vendors in patching critical resource exhaustion bugs.

To report a vulnerability or request a specialized audit: πŸ“© Email: ddw.x.dev@gmail.com


⚑ Powered by DDW-X

Advancing Security Through Research.

[ Join the Telegram Intel Channel ] β€’ [ YouTube ]


Certified

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages