Skip to content
OpenAdvisories

Weakness (CWE)

CWE-415: Double Free

Variant Draft

The product calls free() twice on the same memory address.

How to prevent it (3 mitigations)
  1. Architecture and Design

    Choose a language that provides automatic memory management.

  2. Implementation

    Ensure that each allocation is freed only once. After freeing a chunk, set the pointer to NULL to ensure the pointer cannot be freed again. In complicated error conditions, be sure that clean-up routines respect the state of allocation properly. If the language is object oriented, ensure that object destructors delete each chunk of memory only once.

  3. Implementation

    Use a static analysis tool to find double free instances.

Source: MITRE CWE-415

522 results · Feed

  • Unscored —

    A vulnerability has been identified in JT2Go (All versions < V13.3.0.3), Teamcenter Visualization V13.3 (All versions <…

  • Medium 5.5

    usb_8dev_start_xmit in drivers/net/can/usb/usb_8dev.c in the Linux kernel through 5.17.1 has a double free.

  • Unscored —

    A flaw was found in htmldoc in v1.9.12. Double-free in function pspdf_export(),in ps-pdf.cxx may result in a write-what…

  • High 7.8

    Adobe Bridge DCM File Parsing Double Free Remote Code Execution Vulnerability

    Adobe Bridge version 11.1.1 (and earlier) is affected by a double free vulnerability when parsing a crafted DCM file, which could result in arbitrary code execution in the context of the current user. This vulnerability requires user interaction to exploit.

  • High 7.8

    This vulnerability allows remote attackers to execute arbitrary code on affected installations of Bentley View 10.15.0.…

  • High 7.8

    This vulnerability allows remote attackers to execute arbitrary code on affected installations of Bentley MicroStation …

  • Unscored —

    A double-free was found in the way 389-ds-base handles virtual attributes context in persistent searches. An attacker c…

  • Medium 6.6
    CVE-2021-22600 Exploited Public exploit

    Double Free in net/packet/af_packet.c leading to priviledge escalation

    A double free bug in packet_set_ring() in net/packet/af_packet.c can be exploited by a local user through crafted syscalls to escalate privileges or deny service. We recommend upgrading kernel past the effected versions or rebuilding past ec6af094ea28f0f2dda1…

    KEV Apr 11, 2022
  • Unscored —

    On BIG-IP versions 15.1.x before 15.1.4.1 and 14.1.x before 14.1.4.5, when the HTTP/2 profile is configured on a virtua…

  • High 7.1

    NVIDIA vGPU software contains a vulnerability in the Virtual GPU Manager (vGPU plugin), where it can double-free a poin…

  • High 8.8
    CVE-2021-21797 EPSS 15%

    An exploitable double-free vulnerability exists in the JavaScript implementation of Nitro Pro PDF. A specially crafted …

  • Medium 4.4

    An improper error handling in Mediatek RRC Protocol stack prior to SMR Oct-2021 Release 1 allows modem crash and remote…

  • High 8.6

    Cisco IOS XE Software for Catalyst 9000 Family Wireless Controllers CAPWAP Denial of Service Vulnerabilities

    Multiple vulnerabilities in the Control and Provisioning of Wireless Access Points (CAPWAP) protocol processing of Cisco IOS XE Software for Cisco Catalyst 9000 Family Wireless Controllers could allow an unauthenticated, remote attacker to cause a denial of s…

  • High 8.6

    Cisco IOS XE Software for Catalyst 9000 Family Wireless Controllers CAPWAP Denial of Service Vulnerabilities

    Multiple vulnerabilities in the Control and Provisioning of Wireless Access Points (CAPWAP) protocol processing of Cisco IOS XE Software for Cisco Catalyst 9000 Family Wireless Controllers could allow an unauthenticated, remote attacker to cause a denial of s…

  • High 8.6

    Cisco IOS XE Software for Catalyst 9000 Family Wireless Controllers CAPWAP Denial of Service Vulnerabilities

    Multiple vulnerabilities in the Control and Provisioning of Wireless Access Points (CAPWAP) protocol processing of Cisco IOS XE Software for Cisco Catalyst 9000 Family Wireless Controllers could allow an unauthenticated, remote attacker to cause a denial of s…

  • Critical 9.1

    When sending data to an MQTT server, libcurl <= 7.73.0 and 7.78.0 could in some circumstances erroneously keep a pointe…

  • Medium 6.5

    Cisco Video Surveillance 7000 Series IP Cameras Link Layer Discovery Protocol Double-Free Denial of Service Vulnerability

    A vulnerability in the Link Layer Discovery Protocol (LLDP) implementation for the Cisco Video Surveillance 7000 Series IP Cameras firmware could allow an unauthenticated, adjacent attacker to cause a denial of service (DoS) condition. This vulnerability is d…

  • High 7.8

    Use after free in boosted trees creation in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation for `tf.raw_ops.BoostedTreesCreateEnsemble` can result in a use after free error if an attacker supplies specially crafted arguments. The [implement…

  • Critical 9.8

    Double free in sys-info

    An issue was discovered in the sys-info crate before 0.8.0 for Rust. sys_info::disk_info calls can trigger a double free.

  • Unscored —

    A vulnerability has been identified in JT2Go (All versions < V13.2), Teamcenter Visualization (All versions < V13.2). T…

  • High 8.1

    Double Free File Parsing Vulnerability in Autodesk Design Review

    A maliciously crafted PDF file, when opened by a user in Autodesk Design Review, can trigger a Double Free vulnerability in the Autodesk Design Review application. A malicious actor may leverage this vulnerability to cause memory corruption and execute arbitr…

  • Critical 9.8

    Fluent Bit (aka fluent-bit) 1.7.0 through 1.7.4 has a double free in flb_free (called from flb_parser_json_do and flb_p…

  • Unscored —

    A flaw double-free memory corruption in the Linux kernel HCI device initialization subsystem was found in the way user …

  • High 7.8

    This vulnerability allows remote attackers to execute arbitrary code on affected installations of Foxit Reader 10.1.1.3…

  • High 7.5

    Double free in algorithmica

    An issue was discovered in the algorithmica crate through 2021-03-07 for Rust. There is a double free in merge_sort::merge().

  • Medium 6.5

    Junos OS: EX2200-C Series, EX3200 Series, EX3300 Series, EX4200 Series, EX4500 Series, EX4550 Series, EX6210 Series, EX8208 Series, EX8216 Series: Receipt of a crafted ARP packet by an adjacent attacker will cause the sfid process to core.

    A Double Free vulnerability in the software forwarding interface daemon (sfid) process of Juniper Networks Junos OS allows an adjacently-connected attacker to cause a Denial of Service (DoS) by sending a crafted ARP packet to the device. Continued receipt and…

  • High 8.8
    CVE-2021-3492 Public exploit

    Ubuntu linux kernel shiftfs file system double free vulnerability

    Shiftfs, an out-of-tree stacking file system included in Ubuntu Linux kernels, did not properly handle faults occurring during copy_from_user() correctly. These could lead to either a double-free situation or memory not being freed at all. An attacker could u…

  • Critical 9.8

    Double-free in id-map

    An issue was discovered in the id-map crate through 2021-02-26 for Rust. A double free can occur in IdMap::clone_from upon a .clone panic.

  • High 7.5

    Double free in endian_trait

    An issue was discovered in the endian_trait crate through 2021-01-04 for Rust. A double drop can occur when a user-provided Endian impl panics.

  • High 7.5

    Out of bounds write in arenavec

    An issue was discovered in the arenavec crate through 2021-01-12 for Rust. A drop of uninitialized memory can sometimes occur upon a panic in T::default().

  • High 7.5

    Double free in insert_many

    An issue was discovered in the insert_many crate through 2021-01-26 for Rust. Elements may be dropped twice if a .next() method panics.

  • High 7.5

    Double free in slice-deque

    An issue was discovered in the slice-deque crate through 2021-02-19 for Rust. A double drop can occur in SliceDeque::drain_filter upon a panic in a predicate function.

  • Critical 9.8

    Double free in through

    An issue was discovered in the through crate through 2021-02-18 for Rust. There is a double free (in through and through_and) upon a panic of the map function.

  • Critical 9.8

    Double free in toodee

    An issue was discovered in the toodee crate before 0.3.0 for Rust. Row insertion can cause a double free upon an iterator panic.

  • Critical 9.8

    move_elements can double-free objects on panic

    An issue was discovered in the scratchpad crate before 1.3.1 for Rust. The move_elements function can have a double-free upon a panic in a user-provided f function.

  • Critical 9.8

    Drop of uninitialized memory in stack_dst

    An issue was discovered in the stack_dst crate before 0.6.1 for Rust. Because of the push_inner behavior, a double free can occur upon a val.clone() panic.

  • Low 2.5

    The nameserver caching daemon (nscd) in the GNU C Library (aka glibc or libc6) 2.29 through 2.33, when processing a req…

  • High 7.8
    CVE-2021-3407 EPSS 50%

    A flaw was found in mupdf 1.18.0. Double free of object during linearization may lead to memory corruption and other po…

  • Medium 5.3

    insert_slice_clone can double drop if Clone panics.

    An issue was discovered in the qwutils crate before 0.3.1 for Rust. When a Clone panic occurs, insert_slice_clone can perform a double drop.

  • Medium 5.5

    Memory handling issues in xcb

    An issue was discovered in the xcb crate through 2020-12-10 for Rust. base::Error does not have soundness. Because of the public ptr field, a use-after-free or double-free can occur.