For quota accounting purposes, the size of cross-origin AppCache resources will be padded. Cross-origin resources are resources whose origin differs from the manifest's origin. The size padding will be a random number, uniformly distributed between 0 and about 14MB. Quota accounting purposes include the size reported by the Quota API and quota enforcement (an origin's storage API calls are blocked when the origin exceeds its quota).

Motivation

AppCache can be used in conjunction with the Quota API to learn the size of cross-origin resources. This has the same implications as the Cache Storage + Quota API attack described in the HEIST paper in USENIX 2016.

Documentation

Specification

Specification link


Proposal in a personal repository, no adoption from community

Status in Chromium

Blink>Storage>AppCache


Enabled by default (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

  • No signal
  • No signal
  • No signal
  • No signals

Owners

Comments

The rationale behind considering all cross-origin resources opaque is documented at https://docs.google.com/document/d/1eNU9HpSl4PBxmEfyoAJpgsKbiugC1wOscchcA2U8KHM/

Search tags

appcache, heist, quota,

Last updated on 2020-11-09