Adobe Flash Version Fingerprinting
Background
Adobe™ Flash Player® was released in 1996 and is possibly the most popular 3rd party plugins for browsers, with Adobe claiming a 99%+ penetration rate. While the software installs with auto-update selected by default, it's clear by statistics that many users do not auto-update. It's because of this distribution that it is ideal for fingerprinting.
Note: Adobe™ has announced that it will be dropping support for Flash Player® in 2020, however this will be a useful data element until those systems are replaced or users uninstall the add-on.
How It Works
Getting the Adobe Flash Player version is very straight forward, one of the fastest and most reliable ways is to use a Flash object (SWFObject) from there you can use javascript code to pull version information.
Entropy Estimate: 4.3 bits
Code
The javascript function below fingerprints the browser languages.
Source Code
function fingerprint_flash() {
"use strict";
var strOnError, objPlayerVersion, strVersion, strOut;
strOnError = "N/A";
objPlayerVersion = null;
strVersion = null;
strOut = null;
try {
objPlayerVersion = swfobject.getFlashPlayerVersion();
strVersion = objPlayerVersion.major + "." + objPlayerVersion.minor + "." + objPlayerVersion.release;
if (strVersion === "0.0.0") {
strVersion = "N/A";
}
strOut = strVersion;
return strOut;
} catch (err) {
return strOnError;
}
}
Validation
Unlike other code on the Internet we do everything possible to verify our code for you. In order to minimize problems and maximize compatibility this code has been verified with JSLint and has been extensively tested with over 1100 OS/Browser combinations using BrowserStack.
Reference
Adobe Flash Player. (n.d.). In Wikipedia. Retrieved September 04, 2017, from https://en.wikipedia.org/wiki/Adobe_Flash_Player
Statistics PC Penetration. (n.d.). In Adobe.com. Retrieved September 04, 2017, from http://www.adobe.com/mena_en/products/flashplatformruntimes/statistics.html
SWFObject. (n.d.). In GitHub. Retreived September 04,2017, from http://github.com/swfobject/swfobject