/openwpm-webext-instrumentation

OpenWPM instrumentation library for WebExtensions. Merged into the main OpenWPM repository, thus archived

Primary LanguageTypeScriptMIT LicenseMIT

OpenWPM instrumentation library for WebExtensions

Allows WebExtensions to track and monitor privacy-related browsing behavior

Installation

This package is yet to be published to npm, but can be installed directly from Github as follows:

npm install --save mozilla/openwpm-webext-instrumentation

Instrumentation

The instrumentation leverages the available JavaScript APIs for WebExtensions and listens to navigation, web requests, cookie modifications and access to certain javascript API:s, as described in the main OpenWPM project README under the following bullet points:

  • HTTP Request and Response Headers, redirects, and POST request bodies
  • Javascript Calls
  • Response body content
  • Cookie Access (Experimental)

More specifically, all packets sent by the instrumentation conform to these interfaces.

Usage

The instrumentation is designed to invoke a dataReceiver object whenever a packet or log entry is available.

Pending proper documentation, the best way to see how this library is used is to check how the instrumentation is incorporated into the following projects: