OpenWPM instrumentation library for WebExtensions. Merged into the main OpenWPM repository, thus archived
Перейти к файлу
Steven Englehardt ae4e9c0e39
Merge pull request #47 from eriktews/mozilla-raw-post
Handle raw HTTP POST data as well
2019-06-11 15:33:36 -07:00
.circleci Initial commit 2018-09-28 18:00:36 +03:00
.github Initial commit 2018-09-28 18:00:36 +03:00
.vscode Initial commit 2018-09-28 18:00:36 +03:00
src Handle raw HTTP POST data as well 2019-06-08 02:06:50 +02:00
.editorconfig style: Add editorconfig 2018-10-12 15:46:04 +02:00
.gitignore Initial commit 2018-09-28 18:00:36 +03:00
.npmignore Initial commit 2018-09-28 18:00:36 +03:00
.prettierignore Initial commit 2018-09-28 18:00:36 +03:00
.travis.yml Initial commit 2018-09-28 18:00:36 +03:00
CODE_OF_CONDUCT.md Add Mozilla Code of Conduct file 2019-03-30 00:02:26 -07:00
LICENSE Initial commit 2018-09-28 18:00:36 +03:00
README.md fix: Schema interfaces properly exported in build 2018-10-30 01:56:22 +02:00
package.json Update npm-run-all to remove event-stream dependency 2018-11-26 21:37:40 -05:00
tsconfig.json Add typescript typings for Firefox web extensions apis 2018-10-03 02:11:01 +03:00
tsconfig.module.json Initial commit 2018-09-28 18:00:36 +03:00
tslint.json refactor: Use schema-based type interfaces in cookie and javascript instrumentation 2018-10-25 01:06:54 +02:00

README.md

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: