Skip to content
OpenAdvisories

Weakness (CWE)

CWE-190: Integer Overflow or Wraparound

Base

The product performs a calculation that can
produce an integer overflow or wraparound when the logic
assumes that the resulting value will always be larger than
the original value. This occurs when an integer value is
incremented to a value that is too large to store in the
associated representation. When this occurs, the value may
become a very small or negative number.

How to prevent it (7 mitigations)
  1. Requirements

    Ensure that all protocols are strictly defined, such that all out-of-bounds behavior can be identified simply, and require strict conformance to the protocol.

  2. Requirements

    Use a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.

    If possible, choose a language or compiler that performs automatic bounds checking.

  3. Architecture and Design

    Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid [REF-1482].

    Use libraries or frameworks that make it easier to handle numbers without unexpected consequences.

    Examples include safe integer handling packages such as SafeInt (C++) or IntegerLib (C or C++). [REF-106]

  4. Implementation

    Perform input validation on any numeric input by ensuring that it is within the expected range. Enforce that the input meets both the minimum and maximum requirements for the expected range.

    Use unsigned integers where possible. This makes it easier to perform validation for integer overflows. When signed integers are required, ensure that the range check includes minimum values as well as maximum values.

  5. Implementation

    Understand the programming language's underlying representation and how it interacts with numeric calculation (CWE-681). Pay close attention to byte size discrepancies, precision, signed/unsigned distinctions, truncation, conversion and casting between types, "not-a-number" calculations, and how the language handles numbers that are too large or too small for its underlying representation. [REF-7]

    Also be careful to account for 32-bit, 64-bit, and other potential differences that may affect the numeric representation.

  6. Architecture and Design

    For any security checks that are performed on the client side, ensure that these checks are duplicated on the server side, in order to avoid CWE-602. Attackers can bypass the client-side checks by modifying values after the checks have been performed, or by changing the client to remove the client-side checks entirely. Then, these modified values would be submitted to the server.

  7. Implementation

    Examine compiler warnings closely and eliminate problems with potential security implications, such as signed / unsigned mismatch in memory operations, or use of uninitialized variables. Even if the weakness is rarely exploitable, a single failure may lead to the compromise of the entire system.

Source: MITRE CWE-190

598 results · Clear filters · Feed

  • Medium 4.4

    alsa-lib through 1.2.16.1 Integer Overflow via Topology File

    alsa-lib through 1.2.16.1 computes combined topology element size using 32-bit arithmetic in src/topology/ctl.c, allowing integer overflow that defeats bounds checks. Attackers can supply crafted topology files that wrap size calculations, causing the decoder…

  • Medium 6.9

    FFmpeg before 9.0 has a signed integer overflow in libavformat/mov.c. In mov_read_ispe(), uint32_t width/height values …

  • Medium 5.5

    CAI Content Credentials | Integer Overflow or Wraparound (CWE-190)

    CAI Content Credentials is affected by an Integer Overflow or Wraparound vulnerability that could result in an application denial-of-service. An attacker could exploit this vulnerability to crash the application, leading to a denial-of-service condition. Expl…

  • Medium 6.5

    Netdata: Streaming protocol dimension slot has no upper-bound guard, allowing integer overflow and out-of-bounds write

    Netdata is an open source observability tool. Prior to 2.10.4, an authenticated child agent can send an oversized DIMENSION SLOT value that str2ull_encoded passes to pluginsd_rrddim_put_to_slot in src/plugins.d/pluginsd_internals.h without an upper bound. prd…

  • Medium 5.5

    radare2: Integer overflow causes heap out-of-bounds write in radare2 PYC parser

    radare2 is a UNIX-like reverse engineering framework and command-line toolset. Prior to 6.2.0, radare2's CPython bytecode .pyc marshal parser was vulnerable because the CPython marshal readers accepted a 32-bit string length without rejecting values that over…

  • Medium 6.5

    Net::IDN::Punycode versions before 2.590 for Perl allow an out-of-bounds read via integer overflow of the delta accumulator in encode_punycode

    Net::IDN::Punycode versions before 2.590 for Perl allow an out-of-bounds read via integer overflow of the delta accumulator in encode_punycode. The XS backend keeps the punycode delta, and the digit index derived from it, in a signed int. The accumulation `de…

  • Medium 6.2

    An integer overflow vulnerability exists in MPack 1.1.1 in mpack_node_cstr_alloc() and mpack_node_utf8_cstr_alloc().

  • Medium 5.3

    An integer overflow in the _BulkInsert_ReadProperty component (/bulk_insert.c) of FalkorDB (Redis module) v4.20.1 allow…

  • Medium 6.8

    FluidSynth: DLS ptbl Chunk Integer Overflow

    FluidSynth is a software synthesizer based on the SoundFont 2 specifications. From 2.5.0 until 2.5.6, the native DLS parser validates ptbl chunks with the unsigned expression cues * 4 + cbsize without checking whether the multiplication and addition fit in 32…

  • Medium 6.8

    FluidSynth: DLS Articulation Chunk Integer Overflow

    FluidSynth is a software synthesizer based on the SoundFont 2 specifications. From 2.5.0 until 2.5.6, the native DLS parser validates articulation chunks using the unsigned expression cbsize + connblocks * 12 without first ensuring that the multiplication and…

  • Medium 5.5

    OpenImageIO: TGA-to-GIF palette split signed overflow causes SIGSEGV

    OpenImageIO is a toolset for reading, writing, and manipulating image files of any image file format relevant to VFX / animation. Prior to 3.0.21.0, 3.1.16.0, and 3.2.0.3-beta1, A truncated tga can leave a pending gif frame that is processed during output clo…

  • Medium 4.3

    An integer overflow or wraparound vulnerability in File Operation in Synology DiskStation Manager (DSM) before 7.2.1-69…

  • Medium 6.3

    Freedesktop Poppler FoFiTrueType.cc mapCodeToGID integer overflow

    A vulnerability was determined in Freedesktop Poppler 26.07.0. This affects the function FoFiTrueType::mapCodeToGID of the file fofi/FoFiTrueType.cc. Executing a manipulation of the argument segCnt can lead to integer overflow. The attack can be launched remo…

  • Medium 6.3

    Freedesktop Poppler JBIG2Stream.cc readCodeTableSeg integer overflow

    A vulnerability was found in Freedesktop Poppler 26.07.0. The impacted element is the function JBIG2Stream::readCodeTableSeg of the file poppler/JBIG2Stream.cc. Performing a manipulation results in integer overflow. The attack can be initiated remotely. The e…

  • Medium 4.3

    Freedesktop Poppler SampledFunction Function.cc integer overflow

    A vulnerability was detected in Freedesktop Poppler 26.07.0. This issue affects the function SampledFunction::SampledFunction of the file poppler/Function.cc of the component SampledFunction. The manipulation of the argument BitsPerSample results in integer o…

  • Medium 5.5

    Integer overflow or wraparound vulnerability in Samsung Opensource Escargot allows attackers with write access to the b…

  • Medium 4.3

    Integer overflow in Compositing in Google Chrome prior to 153.0.8010.47 allowed a remote attacker to obtain cross-origi…

  • Medium 6.7

    In multiple locations, there is a possible permission bypass due to an integer overflow. This could lead to local escal…

  • Medium 6.5

    FreeRDP before 3.31.0 Integer Overflow Double Free

    FreeRDP versions before 3.31.0 contain an integer overflow in WinPR's Stream_EnsureRemainingCapacity function that allows remote attackers to cause denial of service. A malicious RD Gateway peer can send a WebSocket Ping frame with a crafted 64-bit extended p…

  • Medium 5.5

    An integer overflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27, macOS Se…

  • Medium 5.9

    An integer overflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27, macOS Se…

  • Medium 5.5

    An integer overflow was addressed with improved input validation. This issue is fixed in iOS 26.7 and iPadOS 26.7, iOS …

  • Medium 6.6

    An integer overflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27. Processi…

  • Medium 5.5

    An integer overflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27, macOS Se…

  • Medium 6.5

    An integer underflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27, macOS S…

  • Medium 5.5

    An integer overflow was addressed with improved input validation. This issue is fixed in macOS Golden Gate 27, macOS Se…

  • Medium 6.5

    An integer overflow was addressed with improved input validation. This issue is fixed in iOS 26.7 and iPadOS 26.7, iOS …

  • Medium 6.1

    tract-nnef: integer overflow in NNEF `.dat` tensor parser yields an out-of-bounds read on model load

    Tract is a tiny, no-nonsense, self-contained TensorFlow and ONNX inference toolkit. Prior to 0.21.16, 0.22.2, and 0.23.1, tract-nnef uses unchecked usize multiplication in nnef/src/tensors.rs read_tensor for attacker-controlled tensor dimensions, the allocati…

  • Medium 6.5

    embedded-graphics image_raw.rs new/bytes_per_row integer overflow

    A weakness has been identified in embedded-graphics up to 0.8.2 on 32-bit. Impacted is the function ImageRaw::new/bytes_per_row of the file src/image/image_raw.rs. This manipulation causes integer overflow. The attack is possible to be carried out remotely. U…

  • Medium 5.3

    msgpack-java through 0.9.12 Integer Overflow via MAP32

    msgpack-java through 0.9.12 contains an integer overflow vulnerability in MessageUnpacker.skipValue() when processing MAP32 containers with large element counts. Attackers can supply a MAP32 element count at or above 0x40000000 that wraps when doubled, causin…

  • Medium 6.5

    PCRE2 before 10.48, on 32-bit platforms, has a pcre2_compile_32 integer overflow and resultant out-of-bounds write.

  • Medium 5.7

    PCRE2 before 10.48, on 32-bit platforms, has a pcre2_pattern_convert out-of-bounds write when an attacker can provide a…

  • Medium 4.4

    Gstreamer1-plugins-good: gstreamer: integer overflow and out-of-bounds read in qtdemux cea-608 closed-caption parser

    A flaw was found in GStreamer's gst-plugins-good isomp4 plugin. When processing a specially crafted MP4 or MOV file containing CEA-608 closed-caption data, an integer overflow in 32-bit unsigned arithmetic can bypass a bounds check in the caption parser. This…

  • Medium 4.7

    Heap buffer overflow via wrapped size check during SASL username canonicalization in MongoDB C Driver

    A size check in the client-side authentication path of the MongoDB C Driver can wrap around, so an unusually large user-name value is accepted and copied past the end of a small buffer. A party able to set the driver's connection settings may cause the applic…

  • Medium 5.3

    rclone local: crafted Range request against a translated symlink panics (DoS)

    rclone is a command-line program to sync files and directories to and from different cloud storage providers. Prior to 1.75.1, backend/local with --links or links=true exposes symlink targets as .rclonelink objects, and fs.RangeOption.Decode can pass an unche…

  • Medium 4.3

    Integer overflow in WebRTC in Google Chrome prior to 153.0.8010.36 allowed a remote attacker to read memory inside the …

  • Medium 4.3

    In convertCleanApertureToRect of HeifCleanAperture.cpp, there is a possible way to cause a temporary denial of service …

  • Medium 6.7

    Windows Overlay Filter Elevation of Privilege Vulnerability

    Integer overflow or wraparound in Windows Overlay Filter allows an authorized attacker to elevate privileges locally.

  • Medium 6.5

    Microsoft SQL Server Denial of Service Vulnerability

    Integer overflow or wraparound in SQL Server allows an authorized attacker to deny service over a network.

  • Medium 6.5

    Windows Remote Desktop Client Denial of Service Vulnerability

    Integer overflow or wraparound in Remote Desktop Client allows an unauthorized attacker to deny service over a network.