COMMON ATTACK PATTERN ENUMERATION AND CLASSIFICATIONLive MITRE record

CAPEC-472

Browser Fingerprinting

An attacker carefully crafts small snippets of Java Script to efficiently detect the type of browser the potential victim is using. Many web-based attacks need prior knowledge of the web browser including the version of browser to ensure successful exploitation of a vulnerability. Having this knowledge allows an attacker to target the victim with attacks that specifically exploit known or zero day weaknesses in the type and version of the browser used by the victim. Automating this process via Java Script as a part of the same delivery system used to exploit the browser is considered more efficient as the attacker can supply a browser fingerprinting method and integrate it with exploit code, all contained in Java Script and in response to the same web page request by the browser.

Abstraction

Detailed

Typical severity

Low

Likelihood of attack

Medium

Understand the attack

What is this attack pattern?

An attacker carefully crafts small snippets of Java Script to efficiently detect the type of browser the potential victim is using. Many web-based attacks need prior knowledge of the web browser including the version of browser to ensure successful exploitation of a vulnerability. Having this knowledge allows an attacker to target the victim with attacks that specifically exploit known or zero day weaknesses in the type and version of the browser used by the victim. Automating this process via Java Script as a part of the same delivery system used to exploit the browser is considered more efficient as the attacker can supply a browser fingerprinting method and integrate it with exploit code, all contained in Java Script and in response to the same web page request by the browser.

Requirements

What does the attack require?

Prerequisites

  • Victim's browser visits a website that contains attacker's Java ScriptJava Script is not disabled in the victim's browser

Skills required

Not stated in the MITRE record.

Resources required

Not stated in the MITRE record.

Defence

How is it prevented and mitigated?

1
Configuration: Disable Java Script in the browser

Real world

MITRE example instances

Example instance 1Detail
The following code snippets can be used to detect various browsers: Firefox 2/3 FF=/a/[-1]=='a' Firefox 3 FF3=(function x(){})[-5]=='x' Firefox 2 FF2=(function x(){})[-6]=='x' IE IE='\v'=='v' Safari Saf=/a/.__proto__=='//' Chrome Chr=/source/.test((/a/.toString+'')) Opera Op=/^function \(/.test([].sort)
CAPEC-472: Browser Fingerprinting — DayBreach Saldırı Sözlüğü · DayBreach