Privaxy โ€“ Like uBlock but through a MitM proxy and no browser extension

Hi all!

I just released Privaxy GitHub - Barre/privaxy: (work in progress) Privaxy is the next generation tracker and advertisement blocker. It blocks ads and trackers by MITMing HTTP(s) traffic.

Privaxy is a MITM HTTP(s) proxy that sits in between HTTP(s) talking applications, such as a web browser and HTTP servers, such as those serving websites.
By establishing a two-way tunnel between both ends, Privaxy is able to block network requests based on URL patterns and to inject scripts as well as styles into HTML documents.

Operating at a lower level, Privaxy is both more efficient as well as more streamlined than browser add-on-based blockers. A single instance of Privaxy on a small virtual machine, server or even, on the same computer as the traffic is originating from, can filter thousands of requests per second while requiring a very small amount of memory.

2 Likes

So it is a bit like Pi-hole?

Not really as Pi-hole is doing DNS while privaxy acts as a proxy.

Sweet! I've been hoping that some time such solutions would resurface again. There have been a number of such projects like privoxy (guess it might have been a naming inspiration), webcleaner, squidguard, rabbit... but they're all dormant and failed with the current web at some point.

I'm curious as to what your plans are with respect to the "latest" (cough, talking about 1 to 1.5 decades) advancements in protocol technologies; i.e. WebSockets, HTTP/2 etc.; unfortunately the "bad boys" have learned to switch to those since there's no effective blocking.

1 Like

Currently, websockets are just tunneled through, it would very easy to add filtering there, the logic for this is here: privaxy/serve.rs at main ยท Barre/privaxy ยท GitHub. Though, I am not sure how necessary it would be as hosts that serve ads and tracking through websockets can just be blocked. I don't think endpoints that both serves useful content as well as perform tracking and / or ad serving are common, I'd be very curious to see any example of that :slight_smile: