CAPECattack pattern

CAPEC-141 Cache Poisoning

High Official page ↗
Abstraction
Standard
Status
Draft
Likelihood of attack
High
Typical severity
High
CAPEC version
3.9

Description

An attacker exploits the functionality of cache technologies to cause specific data to be cached that aids the attackers' objectives. This describes any attack whereby an attacker places incorrect or harmful material in cache. The targeted cache can be an application's cache (e.g. a web browser cache) or a public cache (e.g. a DNS or ARP cache). Until the cache is refreshed, most applications or clients will treat the corrupted cache value as valid. This can lead to a wide range of exploits including redirecting web browsers towards sites that install malware and repeatedly incorrect calculations based on the incorrect value.

Execution flow

1. [Explore] [Identify and explore caches] Use tools to sniff traffic and scan a network in order to locate application's cache (e.g. a web browser cache) or a public cache (e.g. a DNS or ARP cache) that may have vulnerabilities. Look for poisoning point in cache table entries. 2. [Experiment] [Cause specific data to be cached] An attacker sends bogus request to the target, and then floods responses that trick a cache to remember malicious responses, which are wrong answers of queries. 3. [Exploit] [Redirect users to malicious website] As the attacker succeeds in exploiting the vulnerability, they are able to manipulate and interpose malicious response data to targeted victim queries.

Prerequisites

• The attacker must be able to modify the value stored in a cache to match a desired value. • The targeted application must not be able to detect the illicit modification of the cache and must trust the cache value in its calculations.

Skills required

• [Medium] To overwrite/modify targeted cache

Mitigations

• Configuration: Disable client side caching. • Implementation: Listens for query replies on a network, and sends a notification via email when an entry changes.

Related

Att&ck technique · MITRE ATT&CK (1)

  • T1557.002 ARP Cache Poisoning sub-technique

Child of · CAPEC (1)

  • CAPEC-161 Infrastructure Manipulation attack pattern

Weakness · CWE (4)

  • CWE-345 Insufficient Verification of Data Authenticity weakness
  • CWE-346 Origin Validation Error weakness
  • CWE-348 Use of Less Trusted Source weakness
  • CWE-349 Acceptance of Extraneous Untrusted Data With Trusted Data weakness

Referenced by CAPEC · can precede (5)

  • CAPEC-105 HTTP Request Splitting attack pattern
  • CAPEC-273 HTTP Response Smuggling attack pattern
  • CAPEC-33 HTTP Request Smuggling attack pattern
  • CAPEC-34 HTTP Response Splitting attack pattern
  • CAPEC-663 Exploitation of Transient Instruction Execution attack pattern

Referenced by CAPEC · child of (1)

  • CAPEC-142 DNS Cache Poisoning attack pattern

Referenced by CWE · attack pattern (4)

  • CWE-345 Insufficient Verification of Data Authenticity weakness
  • CWE-346 Origin Validation Error weakness
  • CWE-348 Use of Less Trusted Source weakness
  • CWE-349 Acceptance of Extraneous Untrusted Data With Trusted Data weakness