We recently submitted a position paper about JShelter for CNIL Privacy Research Day 2022 and posted the paper on arXive. If you are interested in the project or if you are already using JShelter, we recommend reading the paper as it explains the project, its historical decisions, the thread model, design decision, experiments, and provides more information that you should know if you want to use JShelter correctly, or, you might decide that JShelter is not the correct tool for you and you might pick one of the alternative tools referenced in the paper.
The Web is used daily by billions. Even so, users are not protected from many threats by default. Jshelter builds on previous web privacy and security research and fights to return the browser to users. The paper introduces NSCL, a library helping with common webextension development tasks and fixing loopholes misused by previous research. JShelter focuses on fingerprinting prevention, limitations of rich web APIs, prevention of attacks connected to timing, and learning information about the computer, the browser, the user, and surrounding physical environment and location. We discovered a loophole in the sensor timestamps that lets any page observe the device boot time if sensor APIs are enabled in Chromium-based browsers. JShelter provides a fingerprinting report and other feedback that can be used by future security research and data protection authorities. Thousands of users around the world use the webextension every day.
In contrast, JShelter is a webextension that can be installed on major browsers and consequently does not require the user to change the browser and routines. We integrate several previous research projects like Chrome Zero, little-lies-based fingerprinting prevention, and ideas of limiting APIs brought by Web API Manager. JShelter comes with a heuristic-based fingerprint detector and prevents webpages from misusing the browser as a proxy to access the local network and computer. We needed to solve issues with reliable environment modifications that stem from webextension API that opens many loopholes that previous research exploited. In addition to JShelter, we introduce NSCL. Both NoScript Security Suite and JShelter include NSCL. Moreover, NSCL is available for other privacy- and security-related webextensions.