cve.bz

CAPEC-100

Overflow Buffers

Very High severityHigh likelihoodStandard pattern

Buffer Overflow attacks target improper or missing bounds checking on buffer operations, typically triggered by input injected by an adversary. As a consequence, an adversary is able to write past the boundaries of allocated buffer regions in memory, causing a program crash or potentially redirection of execution as per the adversaries' choice.

On this page

Ask an AI about this attack pattern

Show the promptExplain the attack pattern CAPEC-100: Overflow Buffers: how it unfolds, what it needs and how to prevent and detect it in my systems. Use https://capec.mitre.org/data/definitions/100.html and https://cve.bz/cve/capec/100?via=ask-ai-copy, which lists recent CVEs with the weaknesses it exploits. Cite the sources.

Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this attack pattern's id and public links.

How the attack unfolds

  1. Explore

    The attacker looks for a way in.

    1. [Identify target application] The adversary identifies a target application or program to perform the buffer overflow on. Adversaries often look for applications that accept user input and that perform manual memory management.

  2. Experiment

    They probe what they found.

    1. [Find injection vector] The adversary identifies an injection vector to deliver the excessive content to the targeted application's buffer.

      1 technique
      • Provide large input to a program or application and observe the behavior. If there is a crash, this means that a buffer overflow attack is possible.
    2. [Craft overflow content] The adversary crafts the content to be injected. If the intent is to simply cause the software to crash, the content need only consist of an excessive quantity of random data. If the intent is to leverage the overflow for execution of arbitrary code, the adversary crafts the payload in such a way that the overwritten return address is replaced with one of the adversary's choosing.

      2 techniques
      • Create malicious shellcode that will execute when the program execution is returned to it.
      • Use a NOP-sled in the overflow content to more easily "slide" into the malicious code. This is done so that the exact return address need not be correct, only in the range of all of the NOPs
  3. Exploit

    They carry out the attack.

    1. [Overflow the buffer] Using the injection vector, the adversary injects the crafted overflow content into the buffer.

Prerequisites

  • Targeted software performs buffer operations.

  • Targeted software inadequately performs bounds-checking on buffer operations.

  • Adversary has the capability to influence the input to buffer operations.

Skills required

  • Low skill

    In most cases, overflowing a buffer does not require advanced skills beyond the ability to notice an overflow and stuff an input variable with content.

  • High skill

    In cases of directed overflows, where the motive is to divert the flow of the program or application as per the adversaries' bidding, high level skills are required. This may involve detailed knowledge of the target system architecture and kernel.

Resources required

  • None: No specialized resources are required to execute this type of attack. Detecting and exploiting a buffer overflow does not require any resources beyond knowledge of and access to the target system.

Signs of an attack

  • An attack designed to leverage a buffer overflow and redirect execution as per the adversary's bidding is fairly difficult to detect. An attack aimed solely at bringing the system down is usually preceded by a barrage of long inputs that make no sense. In either case, it is likely that the adversary would have resorted to a few hit-or-miss attempts that will be recorded in the system event logs, if they exist.

Consequences

What a successful attack can lead to
ImpactAffectsNote
Unreliable ExecutionAvailability
Execute Unauthorized CommandsConfidentiality, Integrity, AvailabilityRun Arbitrary Code
Gain PrivilegesConfidentiality, Access Control, Authorization

Mitigations

  • Use a language or compiler that performs automatic bounds checking.

  • Use secure functions not vulnerable to buffer overflow.

  • If you have to use dangerous functions, make sure that you do boundary checking.

  • Compiler-based canary mechanisms such as StackGuard, ProPolice and the Microsoft Visual Studio /GS flag. Unless this provides automatic bounds checking, it is not a complete solution.

  • Use OS-level preventative functionality. Not a complete solution.

  • Utilize static source code analysis tools to identify potential buffer overflow weaknesses in the software.

Weaknesses it exploits

  • CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer
  • CWE-120 Buffer Copy without Checking Size of Input
  • CWE-129 Improper Validation of Array Index
  • CWE-131 Incorrect Calculation of Buffer Size
  • CWE-680 Integer Overflow to Buffer Overflow
  • CWE-805 Buffer Access with Incorrect Length Value

Recent CVEs with these weaknesses

  1. 8.8CVE-2026-124948

    Incorrect boundary conditions, use-after-free in the Graphics component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  2. 8.8CVE-2026-124947

    Incorrect boundary conditions in the Graphics component. This vulnerability was fixed in Firefox 160.

  3. 8.8CVE-2026-124926

    Incorrect boundary conditions in the WebRTC component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  4. 8.8CVE-2026-124924

    Incorrect boundary conditions in the Graphics: WebRender component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  5. 8.8CVE-2026-124918

    Privilege escalation due to incorrect boundary conditions in the Graphics: WebRender component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  6. 8.8CVE-2026-124915

    Incorrect boundary conditions in the Graphics: WebGPU component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  7. 8.8CVE-2026-124891

    Incorrect boundary conditions in the DOM: Selection component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

  8. 8.8CVE-2026-124888

    Incorrect boundary conditions in the Layout: Text and Fonts component. This vulnerability was fixed in Firefox 160 and Firefox ESR 153.7.

The newest records naming one of them. Each weakness's page lists them all.

Part of
More specific patterns
  • CAPEC-8 Buffer Overflow in an API Call
  • CAPEC-9 Buffer Overflow in Local Command-Line Utilities
  • CAPEC-10 Buffer Overflow via Environment Variables
  • CAPEC-14 Client-side Injection-induced Buffer Overflow
  • CAPEC-24 Filter Failure through Buffer Overflow
  • CAPEC-42 MIME Conversion
  • CAPEC-44 Overflow Binary Resource File
  • CAPEC-45 Buffer Overflow via Symbolic Links
  • CAPEC-46 Overflow Variables and Tags
  • CAPEC-47 Buffer Overflow via Parameter Expansion
  • CAPEC-67 String Format Overflow in syslog()
  • CAPEC-256 SOAP Array Overflow

Examples

The most straightforward example is an application that reads in input from the user and stores it in an inte…

The most straightforward example is an application that reads in input from the user and stores it in an internal buffer but does not check that the size of the input data is less than or equal to the size of the buffer. If the user enters excessive length data, the buffer may overflow leading to the application crashing, or worse, enabling the user to cause execution of injected code.

Many web servers enforce security in web applications through the use of filter plugins. An example is the Si…

Many web servers enforce security in web applications through the use of filter plugins. An example is the SiteMinder plugin used for authentication. An overflow in such a plugin, possibly through a long URL or redirect parameter, can allow an adversary not only to bypass the security checks but also execute arbitrary code on the target web server in the context of the user that runs the web server process.

MITRE's words, unchanged: CAPEC-100 at MITRE. CAPEC is Copyright © 2007–2026, The MITRE Corporation, used under the CAPEC terms of use: “The MITRE Corporation (MITRE) hereby grants you a non-exclusive, royalty-free license to use Common Attack Pattern Enumeration and Classification (CAPEC™) for research, development, and commercial purposes. Any copy you make for such purposes is authorized provided that you reproduce MITRE’s copyright designation and this license in any such copy.” CAPEC and the CAPEC logo are trademarks of The MITRE Corporation. Credits. All attack patterns.