In this tutorial we'll discuss how to change Windows fingerprint.
We have following topics to discover:
What is a device fingerprint
What does a browser fingerprint collects
How to avoid such identification
What is a canvas fingerprint
How to avoid canvas fingerprinting
How To Spoof System Fingerprint
How To Spoof Font Fingerprint
What is a device or browser fingerprint
A device fingerprint or machine fingerprint is information collected about the software and hardware of a remote computing device for the purpose of identification.
The information is usually assimilated into a brief identifier using a fingerprinting algorithm.
A browser fingerprint is information collected specifically by interaction with the web browser of the device.
What does a browser fingerprint collects
In fraud business people take care about browser fingerprint and use cool Anti-Fingerprint browsers like GoLogin, Sphere and so on.
Most people need this for example for cookies importing, botnet logs, cashout actions and so on.
A browser fingerprint provides:
Browser Information (Which Browser, Which Browser Version)
Browser Extensions (Does the user have anti fingerprint extensions?)
HTTP Headers
User-Agent (Maybe OS information if not spoofed?)
Hardware Properties (System Hardware Info, Phone Model, Operating System, Screensize)
Browsing History
Font metrics
Canvas and WebGL (Canvas is a html5 element which is used by WebHL render 2d and 3d graphics in browser to get information about graphics driver, graphics card or graphics processing unit (GPU)
Hardware Benchmarking
IP Address
Client Timezone
Silverlight Data
List of mime-types
Timestamp
How To Avoid Such Idenfitication?
For privacy it's very important to spoof such a fingerprint.
For example the brave browser does that since 2020.
To avoid much more fingerprint tests, you should block client-side scripts by using NoScript.
There are some scripts like FingerprintJS, imprintJS or CreepJS which are open source, these are mostly used by companies to make a profile of you.
You can also use different browsers to have multiple fingerprints.
An alternative option is, to use also remote desktops without touching your own browsers.
The last method would be, to create virtual machines for different reasons like personal life, fraud, pentest and so on.
What is a canvas fingerprint?
Canvas fingerprinting is one of a number of browser fingerprinting techniques for tracking online users that allow websites to identify and track visitors using the HTML5 canvas element instead of browser cookies or other similar means.
How to avoid canvas fingerprinting?
To avoid canvas fingerprint you can install the add-on 'Canvas Defender':
Firefox : https://addons.mozilla.org/en-US/firefox/addon/no-canvas-fingerprinting/
Chrome : https://chrome.google.com/webstore/detail/canvas-defender/obdbgnebcljmgkoljcdddaopadkifnpm
Install the add-on
Click on the add-on and select "Generate new noise"
Finally check if you can change your canvas correctly, visit : https://browserleaks.com/canvas
Now am talking about spoofing a fingerprint from system and browser side....
How To Spoof A System Fingerprint?
To spoof a system fingerprint i have found some cool python scripts compressed into one repository.
In this case we use AntiOS.
AntiOS write on their repository that the tool changes window and hardware identifiers.
We need python installed on our system. A guide how to install python on your windows machine is here:
Visit https://github.com/vektort13/AntiOS
Download the zip file.
To run the main tool write:
Open CMD as admin and navigate with cd to your AntiOS folder which you had extracted.
The tool change following identificators:
Username
Hostname
Current windows build
Current windows build number
Windows build lab
BuildLabEx
BuildGuid
CryptoMachineGuid
DeviceGuid
CKCL Guid
HardwareProfileGuid
WMIGuid
EDGE Guid
InstallDate
ProductID
WindowsUpdateClientID
IE ProductID
IE KBNumber
IE Install date
VolumeID
MACadress
HardwareGUID
Changing windows telemetries:
To change network identificators:
To change other system idenficators:
To change windows hardware:
You can also run
Then the script run and change everything.
How to change fonts fingerprinting?
First of all open a cmd as administator.
Type:
Download the tool:
After this command you have the ZIP file on your Desktop, extract it.
The Script moves several of your installed fonts into the hidden key - after that, the font fingerprint will be changed.
Next time these fonts will be placed back, so that to be replaced with other fonts.
This way you can change your font fingerprint without deleting your actual fonts.
If you placed to Hidden any fonts you need for work, just run the script with --recover-only command-line parameter will place all hidden fonts back.
You can use the script by typing:
Replace the number with the count of fonts you want to move to hidden key. The minimum is 1 and the maximum is 64.
You need to run this script as ADMIN.
Finally test your fonts:
NOTE: Clean your history before.(CCleaner)
browserleaks.com
Font Enumeration Fingerprint:
Unicode Glyphs Fingerprint:
After this, change the fonts to your default back by using:
Clear your browser with CCleaner and visit again the website, your fingerprints should be different.
After the recovery ?
Sources
FingerprintJS Source Code: https://github.com/fingerprintjs/fingerprintjs
imprintJS Source Code: https://github.com/fingerprintjs/fingerprintjs
CreepJS Source Code: https://github.com/abrahamjuliot/creepjs
ClientJS Source Code: https://github.com/fingerprintjs/fingerprintjs
Browser Fingerprint Protector (Chrome): https://chrome.google.com/webstore/detail/browser-fingerprint-prote/kcklikpoajnpdpjgamjfepagpdkhahpn
Browser Fingerprint Protector (Firefox): https://addons.mozilla.org/en-CA/firefox/addon/browser-fingerprint-protector/
Fingerprint Spoofer (Firefox): https://addons.mozilla.org/en-CA/firefox/addon/chameleon-ext
Fingerprint Spoofer (Chrome): https://chrome.google.com/webstore/detail/fingerprint-spoofing/ljdekjlhpjggcjblfgpijbkmpihjfkni
Font Fingerprint Defender (Firefox): https://addons.mozilla.org/en-US/firefox/addon/font-fingerprint-defender/
Font Fingerprint Defender (Chrome): https://chrome.google.com/webstore/detail/font-fingerprint-defender/fhkphphbadjkepgfljndicmgdlndmoke
Audio Fingerprint Defender (Firefox): https://addons.mozilla.org/en-US/firefox/addon/audioctx-fingerprint-defender/
Audio Fingerprint Defender (Chrome): https://chrome.google.com/webstore/detail/audiocontext-fingerprint/pcbjiidheaempljdefbdplebgdgpjcbe
THIS EXTENSION IS FOR ANTI FINGERPRINTING
CyDec Security Anti-FP (Chrome) : https://chrome.google.com/webstore/detail/cydec-security-anti-fp/becfjfjckdhngmmpkhakoknnkgpgfelk
CyDec Security Anti-FP (Firefox): https://addons.mozilla.org/en-US/firefox/addon/cydec-security-antifingerprint/
Documentation: https://www.cydecsecurity.com/afpdocs.html#start
How To Enable Tracking Protection In Firefox
Enable "Enhanced Tracking Protection" in Firefox for more privacy:
Type about:config in the address bard and press enter. Accept the Risk and Continue.
Search for privacy.resistFingerprinting and see if it is bolded and set to true. If so, you our an extension you installed has enabled this preference already. You can double-click the preference to toggle the setting.
What exactly blocks this preference?
Social Media Trackers
Cross-site tracking cookies
Fingerprinters
Cryptominers
Tracking content (trackers hidden in ads, videos and other content.)
There are three types of protections:
Standard
Strict
Custom (self explained)
The difference between standard and strict is, that strict blocks content in all windows while standard only blocks on current.
You can read more about fingerprinting techniques here:
fingerprintjs.com
I found three nice add-ons. In the next tutorial series i will talk about this add-ons (fingerprinting protection add-ons).
The next topics up coming:
What Exactly Is Fingerprinting (Deep topic)
How to use add-ons to avoid fingerprinting
We have following topics to discover:
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
What is a device or browser fingerprint
A device fingerprint or machine fingerprint is information collected about the software and hardware of a remote computing device for the purpose of identification.
The information is usually assimilated into a brief identifier using a fingerprinting algorithm.
A browser fingerprint is information collected specifically by interaction with the web browser of the device.
What does a browser fingerprint collects
In fraud business people take care about browser fingerprint and use cool Anti-Fingerprint browsers like GoLogin, Sphere and so on.
Most people need this for example for cookies importing, botnet logs, cashout actions and so on.
A browser fingerprint provides:
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
How To Avoid Such Idenfitication?
For privacy it's very important to spoof such a fingerprint.
For example the brave browser does that since 2020.
To avoid much more fingerprint tests, you should block client-side scripts by using NoScript.
There are some scripts like FingerprintJS, imprintJS or CreepJS which are open source, these are mostly used by companies to make a profile of you.
You can also use different browsers to have multiple fingerprints.
An alternative option is, to use also remote desktops without touching your own browsers.
The last method would be, to create virtual machines for different reasons like personal life, fraud, pentest and so on.
What is a canvas fingerprint?
Canvas fingerprinting is one of a number of browser fingerprinting techniques for tracking online users that allow websites to identify and track visitors using the HTML5 canvas element instead of browser cookies or other similar means.
How to avoid canvas fingerprinting?
To avoid canvas fingerprint you can install the add-on 'Canvas Defender':
Firefox : https://addons.mozilla.org/en-US/firefox/addon/no-canvas-fingerprinting/
Chrome : https://chrome.google.com/webstore/detail/canvas-defender/obdbgnebcljmgkoljcdddaopadkifnpm
![Keycap: 1 :one: 1️⃣](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/0031-20e3.png)
![Keycap: 2 :two: 2️⃣](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/0032-20e3.png)
![Keycap: 3 :three: 3️⃣](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/0033-20e3.png)
Now am talking about spoofing a fingerprint from system and browser side....
How To Spoof A System Fingerprint?
To spoof a system fingerprint i have found some cool python scripts compressed into one repository.
In this case we use AntiOS.
AntiOS write on their repository that the tool changes window and hardware identifiers.
We need python installed on our system. A guide how to install python on your windows machine is here:
Visit https://github.com/vektort13/AntiOS
Download the zip file.
To run the main tool write:
Code:
py generate_fingerprint.py --help
Open CMD as admin and navigate with cd to your AntiOS folder which you had extracted.
The tool change following identificators:
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
Changing windows telemetries:
Code:
py generate_fingerprint --telemetry
To change network identificators:
Code:
py generate_fingerprint --network
To change other system idenficators:
Code:
py generate_fingerprint --system
To change windows hardware:
Code:
py generate_fingerprint --hardware
You can also run
Code:
py generate_fingerprint
How to change fonts fingerprinting?
First of all open a cmd as administator.
Type:
Code:
cd %HOMEPATH%\Desktop
Code:
curl -LO https://github.com/vektort13/AntiFontFingerprint/archive/refs/heads/master.zip
Code:
cd AntiFontFingerprint-master
The Script moves several of your installed fonts into the hidden key - after that, the font fingerprint will be changed.
Next time these fonts will be placed back, so that to be replaced with other fonts.
This way you can change your font fingerprint without deleting your actual fonts.
If you placed to Hidden any fonts you need for work, just run the script with --recover-only command-line parameter will place all hidden fonts back.
You can use the script by typing:
Code:
py font_fingerprint <Number>
Code:
py font_fingerprint 30
Finally test your fonts:
NOTE: Clean your history before.(CCleaner)
Font Fingerprinting
Font metrics-based fingerprinting. System fonts enumeration. Font fingerprinting techniques are based on measuring the dimensions of text or individual Unicode glyphs, enumerating fonts and finding rendering differences. This method can create a unique fingerprint that is difficult to spoof or...
Font Enumeration Fingerprint:
Code:
52ed2e63710cdc44f067d04f0f411c50
Code:
12ceda00
Code:
py font_fingerprint --recover-only
After the recovery ?
Sources
FingerprintJS Source Code: https://github.com/fingerprintjs/fingerprintjs
imprintJS Source Code: https://github.com/fingerprintjs/fingerprintjs
CreepJS Source Code: https://github.com/abrahamjuliot/creepjs
ClientJS Source Code: https://github.com/fingerprintjs/fingerprintjs
Browser Fingerprint Protector (Chrome): https://chrome.google.com/webstore/detail/browser-fingerprint-prote/kcklikpoajnpdpjgamjfepagpdkhahpn
Browser Fingerprint Protector (Firefox): https://addons.mozilla.org/en-CA/firefox/addon/browser-fingerprint-protector/
Fingerprint Spoofer (Firefox): https://addons.mozilla.org/en-CA/firefox/addon/chameleon-ext
Fingerprint Spoofer (Chrome): https://chrome.google.com/webstore/detail/fingerprint-spoofing/ljdekjlhpjggcjblfgpijbkmpihjfkni
Font Fingerprint Defender (Firefox): https://addons.mozilla.org/en-US/firefox/addon/font-fingerprint-defender/
Font Fingerprint Defender (Chrome): https://chrome.google.com/webstore/detail/font-fingerprint-defender/fhkphphbadjkepgfljndicmgdlndmoke
Audio Fingerprint Defender (Firefox): https://addons.mozilla.org/en-US/firefox/addon/audioctx-fingerprint-defender/
Audio Fingerprint Defender (Chrome): https://chrome.google.com/webstore/detail/audiocontext-fingerprint/pcbjiidheaempljdefbdplebgdgpjcbe
![Warning :warning: ⚠️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/26a0.png)
CyDec Security Anti-FP (Chrome) : https://chrome.google.com/webstore/detail/cydec-security-anti-fp/becfjfjckdhngmmpkhakoknnkgpgfelk
CyDec Security Anti-FP (Firefox): https://addons.mozilla.org/en-US/firefox/addon/cydec-security-antifingerprint/
Documentation: https://www.cydecsecurity.com/afpdocs.html#start
How To Enable Tracking Protection In Firefox
Enable "Enhanced Tracking Protection" in Firefox for more privacy:
Type about:config in the address bard and press enter. Accept the Risk and Continue.
Search for privacy.resistFingerprinting and see if it is bolded and set to true. If so, you our an extension you installed has enabled this preference already. You can double-click the preference to toggle the setting.
What exactly blocks this preference?
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
There are three types of protections:
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
![Black small square :black_small_square: ▪️](https://cdn.jsdelivr.net/joypixels/assets/6.6/png/unicode/64/25aa.png)
The difference between standard and strict is, that strict blocks content in all windows while standard only blocks on current.
You can read more about fingerprinting techniques here:
![fingerprintjs.com](https://fingerprint.com/static/5bba98d79231d3542e1121a87058d94a/tw-ad-2-hd.png)
The Top Browser Fingerprinting Techniques Explained - Fingerprint
To make an accurate browser fingerprint, you need to gather as many signals as possible. In this article, we go over some of the techniques used to generate signals that vary between site visitors enough to be useful for browser fingerprinting.
I found three nice add-ons. In the next tutorial series i will talk about this add-ons (fingerprinting protection add-ons).
The next topics up coming:
What Exactly Is Fingerprinting (Deep topic)
How to use add-ons to avoid fingerprinting