Browser fingerprinting refers to the process of identifying and recording various factors, such as the browser itself, the operating system, and hardware configurations, to generate a unique identifier. It is a digital signature obtained through the collection of various features of the browser, such as user agent, language, screen size, plugin version, font, time settings, etc., and a comprehensive analysis. As everyone's browser configurations differ, browser fingerprints can be used to track user behavior, identify identity, monitor online activities, and even for illegal purposes such as fraud and phishing.
VirtualBrowser is a fingerprint browser based on Chromium, which supports Windows 10 and above operating systems, and plans to support Mac, Android, Linux, and other operating systems in the future.
Compared with Chromium, VirtualBrowser has two advantages:
- Support for creating multiple fingerprint information browser environments on one machine.
- Support for managing multiple browser environments.
First, download the latest VirtualBrowser installation package from the release page or official website and install it on your computer.
- Open VirtualBrowser and select Create Browser.
- Modify the configuration information in the pop-up dialog or use the default settings.
- Click the Start button in the created environment to open the newly created browser environment.
- The newly started browser is the new fingerprint environment.
You can test fingerprint modifications using fingerprintjs and browserleaks.
- Operating System: Modify the operating system part in
userAgent
. - Browser version: Modify the browser version in
userAgent
. - Proxy settings: Modify the browser proxy which supports "Default", "Do not use proxy", "Custom".
- User Agent: Modify
userAgent
. - Language: Modify
navigator.language
,navigator.languages
, and it can be automatically matched based on IP. - Time zone: Modify the time zone in
new Date()
, and it can be automatically matched based on IP. - WebRTC
- Geolocation: Modify the latitude and longitude in
navigator.geolocation.getCurrentPosition()
, and it can be automatically matched based on IP. - Resolution: Modify
screen.width
/screen.height
. - Font: Randomly modify the supported font list.
- Canvas: Randomly modify Canvas 2D drawing differential pixels.
- WebGL image: Randomly modify WebGL drawing differential pixels.
- WebGL metadata: WebGL vendor, WebGL rendering, etc.
- AudioContext: Randomly modify the differential data of
getChannelData
andgetFloatFrequencyData
in AudioContext. - ClientRects
- Speech voices
- CPU: Modify
navigator.hardwareConcurrency
CPU core count. - Memory
- Device name
- MAC address
- Do Not Track
- SSL
- Port scan protection
- Hardware acceleration
VirtualBrowser is base on Chromium, you can use playwright or other tools. demo(https://github.com/Virtual-Browser/VirtualBrowser/tree/main/automation)
VirtualBrowser is not perfect yet. If you are interested in VirtualBrowser, you are welcome to join us through the following ways:
- Directly contribute code, provide features, and fix bugs.
- Install VirtualBrowser, visit your frequently used websites, and provide feedback on unusable situations to help solve compatibility issues.
- Provide experience, functional suggestions to help improve VirtualBrowser.
The purpose of this disclaimer is to explicitly clarify that the VirtualBrowser project is for technology exchange, learning, and research purposes and that the technology of this project should not be used for any illicit purposes or destructive behaviors. The author is not responsible for any damage caused to others or systems by the use of this project. When using this project, you must be clear and promise not to utilize this technology to carry out illegal activities, infringe upon the rights of others, or attack systems. Any accidents, losses, or damages resulting from the use of the technologies in this project, including but not limited to data loss, property loss, legal liabilities, etc., are not related to the author of this project. The technical information provided in this text is for learning and reference purposes only and does not constitute any form of warranty or guarantee. The author of this project makes no representations or warranties as to the accuracy, validity, or applicability of the technology.
- Email: virtual.browser.2020@gmail.com
- Official website: http://virtualbrowser.cc
- QQ Group:
564142956