browser-fingerprint-wasm v0.0.1
browser-fingerprint-wasm
Browser Fingerprinting
Browser finger printing is the act of using artifacts from a browser (browser rendering) to uniquely identify a machine.
Fingerprints can be generated from a varity of data but one of the most reliable systems is Canvas fingerprinting.
The Canvas API is part of all (almost) web browsers on mobile and desktop. Canvas takes commands and creates visualizations based on those instructions.
The trick here is that Canvas is delcaritive and renders the instructions to the best of it's abiliies based on a combination of software and hardware. ie. the GPU and OS will greatly effect how the Canvas image is actually rendered. Sooooo using this knowledge we can capitalized on the each machines rendering unique nature
What It Sends
All of the users movements!
+-------------+ +-------------------------------+
| | WASM+Canvas Fingerprint | |
| | | Looks up or saves ID |
| | +---------------------------> | |
| Browser | | |
| + | +-------------------------------+
| WASM | Mouse moves over WS +-------------------------------+
| | | |
| | +---------------------------> | Saves time, x, y to ID |
| | | |
| | | |
+-------------+ +-------------------------------+
Running
Start app with WASM injected
cd browser-fingerprint-wasm
npm run serve
Start the listener server
cd browser-fingerprint-wasm/go-server
go run *.go
Inspiration
6 years ago