FixBrowser

Blog
FixBrowser/FixProxy 0.4 - general solution to Cloudflare challenges and other gatekeepers (2025/07/05)
FixBrowser is a lightweight web browser created from scratch. It intentionally doesn't support JavaScript to make things faster and much less resource intensive. Instead it contains an updated set of scripts that fix and improve various websites.
This release covers mostly changes to FixProxy which allows to use the "backend" part of the browser in a regular browser which is used for layout/rendering. It is usable for normal browsing unlike FixBrowser which is still in alpha stage.
This provides the ability to browse the web without JavaScript with the fix scripts applied. It also uses a whitelist approach so you can be sure that no 3rd party tracking can happen.
I've been using FixProxy for multiple years as my main way of web browsing with good results. It allows to also easily mix direct usage of the websites with access through FixProxy per each individual tab.
More information and download links are on the homepage.
Change log
- Added redirection from AMP links to normal websites
- Added support for open and name attributes in <details> in FixProxy
- Added more robust handling of data store file in case of JSON syntax error
- Added GateOpener service
- Added support for ICO image format in FixProxy
- Fixed timer thread not sleeping properly on Haiku OS
- Fixed handling of mouse events on Haiku OS
- Fixed launching from different directory
- Fixed setting of multiple cookies in scripts
- Fixed occasional bad record MAC error in TLS implementation
- Fixed downloading of files to work with all mime types in FixProxy
- [cloudflare] Added automatic handling of Cloudflare challenges using GateOpener service
- [duckduckgo] Removed tracking in results
- [anubis] Updated support for new versions
- [anubis] Added fallback using GateOpener service
- [go-away] Added initial support for "go-away" gatekeeper using GateOpener service
General solution to Cloudflare challenges and other gatekeepers
A lot of websites are protected by Cloudflare. This is done for various reasons such as DDoS protection, better availability and speed. Cloudflare offers various levels of protection set individually by the website owners.
With the lowest protection there is no issue, the websites are available the same way as without proxying through Cloudflare. Other websites are more strict and show a challenge page on a first access which checks for the various features of a full browser. Sometimes it goes automatically away, other times you need to manually press a button to confirm you're a human visitor.
GateOpener service
This release introduces GateOpener service that allows to pass such challenges for browsers that don't implement JavaScript. This is done by using a full featured browser running on a server that loads the challenge page, passes it (including an automatic clicking on the button that verifies you're human) and sends back the resulting cookies. With these cookies FixBrowser/FixProxy can then access the website in a normal way.
To make this work the service uses your IP address for any network connections. This allow to use a good reputation of your IP address (as perceived by Cloudflare by not seeing an excessive number of requests from it) and also makes sure that the service can't be easily blocked by it's IP address.
The service is available to supporters of the FixBrowser project (if you haven't received an e-mail please look into your SPAM folder or contact me). There is a plan that once there will be enough funds from the donations it would be available to the general public as well, in such case the supporters will be given a priority access. You can also self-host the service but it's more involved to setup.
Cloudflare challenges
The Cloudflare challenge includes a checkbox that needs to be clicked in order to prove the visitor is a human. Since this is a simple operation it can be fully automatized.
This is achieved by periodic screenshoting of the page and finding the relevant boxes in the image. A simple method using histograms was used. Each row is scanned for short horizontal spans of a few pixels, if the whole span is of the same color it adds into the histogram bin for the row (background color is ignored).
From the histogram and the expected rough size of the box the top and bottom coordinates can be found. This is then applied in the other direction too. The method works even when there are other elements in the way and can be further improved in case of countermeasures.
Then it is just a matter to repeat this process to find out all the relevant inner boxes:
Once the box for the checkbox is found there is a simulation of moving the mouse on it and clicking on it. The coordinates and the duration is randomized in case the detection takes this into account somehow.
The result is fully transparent to the user, the first loading is slightly slower but the page then loads normally, the process is not even visible to the user.
Future use: ReCaptcha
The service will be extended in the future to also solve interactive captchas such as Google ReCaptcha. It will then show the images to the user and relay back the choices made. This will allow to pass checks for posting comments, login into services and other usages.
Anubis support update
The support for Anubis gatekeeper was updated for new versions. There is now also a fallback using GateOpener service in case a new version of Anubis is released before support is updated or when the website has made incompatible changes.
The GateOpener service was also used to provide an initial support for the "go-away" gatekeeper which is very similar to Anubis.
Automatic AMP redirections
Google's AMP is on the decline but still used by some websites. This release adds automatic redirection to the normal version of the website.
Sponsoring
If you like this project you can support it by donating, allowing me to work on it more and make FixBrowser usable for actual browsing.
As a donator you can submit what websites you would like to be supported (either in the form below or at any later time). You will also get access to GateOpener service.
Comments
No comments.
Add comment
The website was designed for modern browsers and IE4+.