Commit 58b70c76 authored by Daniel Ari Ehrenberg Goldberg's avatar Daniel Ari Ehrenberg Goldberg
Browse files

Requirements for several sections

parent 0e7e08ce
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -462,6 +462,17 @@ Proposed ESR code: AP

This clause addresses the requirements in the CRA [\[i.1\]](#_ref_i.1) Annex 1 Part 1 (2) (h).

**[REQ-AP-1]**: The web browser shall take steps to reduce the risk that errors or crashes in one website running in one tab cause other, unrelated tabs to crash.

Example: Running diffferent tabs in different renderer processes some of the time

Applicability: UC-CONS and UC-INST

Note: Guarantees here are not absolute. Current web browsers have various cases where one tab can take another down.

**[REQ-AP-2]**: The web browser shall take steps, on a best-effort basis, to save the state of running websites such that they can be restored later following an incident.

Applicability: UC-CONS and UC-INST

## 5.10 Impact Minimisation

@@ -469,6 +480,7 @@ Proposed ESR code: IM

This clause addresses the requirements in the CRA [\[i.1\]](#_ref_i.1) Annex 1 Part 1 (2) (i).

**[REQ-IM-1]**: The web browser's technical documentation shall describe all network protocols implemented by the browser, or include references to such protocols. These protocols shall either be industry standards (preferably), or be described with similar technical detail to industry standards.

## 5.11 Minimisation of Attack Surfaces

@@ -476,6 +488,9 @@ Proposed ESR code: MAS

This clause addresses the requirements in the CRA [\[i.1\]](#_ref_i.1) Annex 1 Part 1 (2) (j).

**[REQ-MAS-1]**: The web browser's technical documentation shall describe all web-exposed interfaces, or include references to such descriptions. These interfaces shall either be industry standards (preferably), or be described with similar technical detail to industry standards.

**[REQ-MAS-2]**: The web browser shall apply fuzz testing to web-exposed interfaces including HTML, CSS, JavaScript, WebAssembly, HTTP and TLS, as well as APIs, headers, options, etc exposed within those interfaces.

## 5.12 Exploitation Mitigation Mechanisms

@@ -483,6 +498,18 @@ Proposed ESR code: EMM

This clause addresses the requirements in the CRA [\[i.1\]](#_ref_i.1) Annex 1 Part 1 (2) (k).

**[REQ-EMM-1]**: The web browser shall separate certain web browser components from each other to reduce the scope of exploits.

Examples: Sandboxing JavaScript/WebAssembly from the rest of the renderer process, containing the renderer and networking in separate processes

**[REQ-EMM-2]**: The web browser shall isolate different sites from each other, including from side-channel attacks.

Example: Process isolation of sites

**[REQ-EMM-3]**: The web browser shall reduce the privileges of its various components with respect to the operating system to the level required to perform their tasks.

Example: In the context of a browser with the separation of a renderer and browser process, denying direct access of the renderer process to various OS system calls

## 5.13 Logging and Monitoring
Proposed ESR code: LOG