Skip to content
/ uMatrix Public
forked from gorhill/uMatrix

uMatrix: Point and click matrix to filter net requests according to source, destination and type

License

Notifications You must be signed in to change notification settings

defkev/uMatrix

 
 

Repository files navigation

Note

This fork adds support to properly control 3rd-party referrer-spoofing (essential implementing uBlockOrigin/uMatrix-issues#171), mostly to unbreak embedded YouTube, which throws an arbitrary error (4 or 15) when the referrer is missing or spoofed as www.youtube.com, normally requiring disabling spoofing for the whole site or globally to unbreak.

It adds a new default rule * first-party referrer allow which is mimicking the old referrer-spoof: false for 1st party requests.

This completely removes support for the legacy referrer-spoof key, including the default referrer-spoof: behind-the-scene false which is now handled by the existing matrix-off: behind-the-scene true

If you have any custom referrer-spoof rules in your config, you need to manually migrate them to the new syntax, e.g. referrer-spoof: example.com true becomes example.com * referrer block and referrer-spoof: www.example.com false becomes www.example.com * referrer allow

There is currently no code to migrate a legacy config to the new syntax, so if you have many referrer-spoof rules, good luck!

Warning

Starting with version 1.5.5 uMatrix will isolate temporary rules from private (incognito) in non-private (normal) windows and vice-versa (gorhill#350) to prevent exceptions added for domains visited in private windows from leaking into the normal browser session.

Temporary rules can still be committed in either private or non-private windows and then restored in the other.

Temporary rules in private windows will be cleared the moment the last private window gets closed.

To restore the old (insecure) behavior of sharing temporary rulesets between windows, set isolateMatrix to false under advanced settings and restart uMatrix.

Tip

A signed Firefox XPI and packed Chrome ZIP can be downloaded under releases (on the right ->)

There is no PR because the original repo was archived a long time ago. Furthermore, this is not on AMO and probably never will be because the site is run by a bunch of technologically illiterate retards and I don't have time to play customer support for people who cannot follow a simple README but insist on reviewing other people's code they don't understand. The fork also isn't on CWS (Chrome Web Store) because uMatrix heavily relies on APIs (still) not available in MV3 (Manifest Version 3) and Google no longer accepting MV2 submissions.

If you have uMatrix already installed, you cannot update using this version since they have been signed with different keys. In this case, create a backup under Settings > About > Your data > Back up to file... uninstall gorhill's version, install this one, and restore your config using Settings > About > Your data > Restore from file.... Again, if you have any custom referrer-spoof rules write them down first!

uMatrix

Definitely for advanced users.


Keep Github issues for actual bugs. User support is /r/uMatrix.

Forked and refactored from HTTP Switchboard.

Install manually the latest release, or install from:

You may contribute with translation work:

HTTP Switchboard's documentation is still relevant, except for uMatrix's differences with HTTP Switchboard.

You may contribute with documentation: uMatrix's wiki.

Warnings

Regarding broken sites

uMatrix does not guarantee that sites will work fine: it is for advanced users who can figure how to un-break sites, because essentially uMatrix is a firewall which works in relaxed block-all/allow-exceptionally mode out of the box: it is not unexpected that sites will break.

So this means do not file issues to report broken sites when the sites are broken because uMatrix does its job as expected. I will close any such issue without further comment.

Using uMatrix logger is key to un-break sites: the logger will show you all that uMatrix does internally.

I expect there will be community driven efforts for users to help each others. If uMatrix had a home, I would probably set up a forum, but I do not plan for such thing, I really just want to code, not manage web sites. If you need help to un-break a site when using uMatrix, you can try Wilders Security, where you are likely to receive help if needed, whether by me or other users.

uMatrix can be set to work in allow-all/block-exceptionally mode with a single click on the all cell in the global scope *, if you prefer to work this way. This will of course break less sites, but you would then lose all the benefits which comes with block-all/allow-exceptionally mode -- though you will still benefit from the 62,000+ blacklisted hostnames by default.

License

GPLv3.

About

uMatrix: Point and click matrix to filter net requests according to source, destination and type

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 82.2%
  • CSS 5.7%
  • WebAssembly 5.4%
  • HTML 5.4%
  • Other 1.3%