threat-model-web

Threat Model for the Web Platform

Editor: Simone Onofri (W3C)

Editor: ⁨Joe Andreieu⁩ (Legendary Requirements)

Editor: Alberto Fernandez-de-Retana (Invited Expert)

What are we building?

Use Scenario

The Web Platform is a collection of open (royalty-free) technologies that enable the Web. As a platform, users interact with websites using their user agent (e.g., a Web Browser).

Websites contain a series of file formats, such as HTML, CSS, fonts, multimedia files, and scripts, that are transmitted from the server to the user’s device, interpreted, and rendered by the browser so the user can use them.
The web browser is a critical and widely used gateway for accessing the web. It is increasingly relied upon as the single most important application for work, forming the basis of browser-centric workflows.

However, the Web Platform presents significant security and privacy challenges. The browser, designed to request and execute instructions from arbitrary locations on the Internet, must surrender considerable control to web servers to render content correctly, as it runs code from untrusted sources.

Components

Main components of a Web Browser:

External Dependencies

The web browser operates within an ecosystem that includes several external dependencies, systems, or entities it interacts with or relies upon:

Entry Points

Entry points are interfaces or mechanisms through which an adversary can interact with or supply data to the system. For a web browser, these include:

Assets

The assets that need to be protected when considering the web browser threat model are diverse and critical to user security and privacy:

Threat sources

High-level Threats

Security Features

Web browsers employ a variety of security features and protection mechanisms to defend against threats:

Data Flow Diagram

Main Browser Components

The diagram illustrates the data flow and interactions between core browser components, external entities, and specific elements like storage, extensions, and device sensors.

Threat Model of the Web Browser