I am using a custom version of JShelter (which I edited myself) in Selenium-driven Chrome For Testing. I edited JShelter FPD to always track callers by default and to automatically download callers report. JS Shields are also edited to be disabled by default. The edits (as well as scripts for testing and reproducing the issue) are available at my github. The issue is that in version 0.20, the downloaded report is empty - no callers are listed. In 0.19, the issue also exists, but only for ~10% of visited pages. In 0.20, none of the tested pages (which worked with 0.19) work. I used the same custom code in both versions. The issue can be fixed by manually clicking the "Track calling scripts" in the FPD Report menu. After the page reloads, the report is automatically filled and downloaded correctly.
Pages affected: All tested pages Custom JShelter Version: 0.20
Relevant pop-up information:
OS: Windows 11 Browser: Selenium-driven Chrome For Testing Other extensions that might affect JShelter behaviour: None
(run the script provided in the github link OR:)
FPD report filled with tracked callers, as with version 0.19. Example of FPD obtained with custom edited version of 0.19: {"fpd_access_logs":{"1332887290":{"Navigator.prototype.userAgent":{"get":{"args":{"":452},"total":452,"callers":{"Error: FPDCallerTracker\n at Navigator.replacementPD.......
{"fpd_access_logs":{"1332887290":{"Navigator.prototype.userAgent":{"get":{"args":{"":452},"total":452,"callers":{"Error: FPDCallerTracker\n at Navigator.replacementPD.......
FPD report is empty {"fpd_access_logs":{"1610246551":{}}}
{"fpd_access_logs":{"1610246551":{}}}
I tried to manually load the same custom version of JShelter 0.20 in Brave Browser 1.76.82 and it work as intended - correctly downloads the report filled with callers. I did not try other browsers in Selenium since I would like to use JShelter specifically in Selenium-driven Google Chrome for testing.
I am able to get it to work inn Selenium by clicking the "Track calling scripts" button in the FPD Report submenu. After I click it, the page reloads and the report succesfully downloads filled with the observed callers.
Hello,
Unfortunately, I think that I cannot replicate the behaviour in my setup (Chromium in Linux). My steps to reproduce:
When visiting novinky.cz (note that I have some tracker blockers active): * Continue the session started above * Visit novinky.cz * JShelter badge shows 1 in green background * JShelter popup shows None for the number of APIs misusable for fingerprinting (this seems more like a bad way to present the information, i.e. different issue) * FPD report shows quite a few APIs accessed by the page (the exported JSON has about 250kB)
I will check in Windows and Chrome/Edge
I observed the same behaviour in Windows 11 Education with only JShelter installed (no other extension), browsers tested: * Microsoft Edge Version 134.0.3124.85 (Official build) (64-bit) * Chrome Version 135.0.7049.85 (Official Build) (64-bit)
I saw just minor difference like FPD reporting low number of misusable APIs.
I also tested it in Windows with Brave and Edge, it works there (i.e. downloaded report is correctly populated).
The issue seems to be present only in Selenium-simulated browser (I tried Chrome-For-Testing), which means it might actually not be a fault in JShelter but in Selenium, or Chrome-For-Testing. Or even in my machine. However, it seems to work even with Selenium on rare occasions.
To reproduce the issue, either run the script on my github or do the following steps:
Create default Selenium Chromedriver.
Selenium Chromedriver
chrome_options = ChromeOptions.Options()
I also tried adding the arguments specified in the script on my github. I tried running it using the same arguments as version 0.19, which seems to work in Selenium.
jshelter_0_20_custom_fpd
novinky.cz
As mentioned, sometimes, the report is correctly populated. But when I re-launch it, it is empty again.
0.20.2 updated NSCL, is there a change regarding this issue?
I updated my repository with JShelter chrome build of 0.20.2, tested in Selenium with chromedrivers 134 and 136 and still no change, FPD report remains empty.