Every CVE Search/ Get API key

CVE-2021-40145

** DISPUTED ** gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has...

7.5 HighFix availableDisputed

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

2.13%Up 1.3 points since Aug 26, 2021
90%50%10%1%

What each source reports

NVD Score used 7.5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Weakness
CWE-415
Updated
2026-11-02
CVE List No score

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
CVE-2021-40145
Updated
2026-11-02
EUVDEUVD-2021-27331 No score

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
EUVD-2021-27331
Updated
2026-11-03
GitHub AdvisoriesGHSA-8rm3-jg2c-hvfh 7.5

** DISPUTED ** gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has...

** DISPUTED ** gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes."

Record
GHSA-8rm3-jg2c-hvfh
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-415
Updated
2026-11-02
OSVALPINE-CVE-2021-40145 7.5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
ALPINE-CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVAZL-6432 7.5

CVE-2021-40145 affecting package gd for versions less than 2.3.0-5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
AZL-6432
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
Show 16 moreShow less
OSVBELL-CVE-2021-40145 7.5

CVE-2021-40145 does not affect BellSoft software

Record
BELL-CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSV 7.5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2021-40145 7.5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
DEBIAN-CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVOESA-2022-1613 7.5

gd security update

The gd graphics library allows your code to quickly draw images complete with lines, arcs, text, multiple colors, cut and paste from other images, and flood fills, and to write out the result as a PNG or JPEG file. The most common applications of GD involve website development, although it can be used with any standalone application!

Security Fix(es):

** DISPUTED ** gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes."(CVE-2021-40145)

Record
OESA-2022-1613
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2021-40145 7.5

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. NOTE: the vendor's position is "The GD2 image format is a proprietary image format of libgd. It has to be regarded as being obsolete, and should only be used for development and testing purposes.

Record
UBUNTU-CVE-2021-40145
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVCLSA-2021-1634919016 No score

Fixed CVEs in gd: CVE-2017-6363, CVE-2021-40145

  • CVE-2021-40145: check for memory allocation errors processing GD2 images
  • CVE-2017-6363: make sure transparent index is within bounds of the palette
Record
CLSA-2021-1634919016
Updated
2026-11-02
OSVCLSA-2021-1635439636 No score

Fix of CVE: CVE-2017-6363, CVE-2021-40145

  • CVE-2021-40145: check for memory allocation errors processing GD2 images
  • CVE-2017-6363: make sure transparent index is within bounds of the palette
Record
CLSA-2021-1635439636
Updated
2026-11-02
OSVCLSA-2021-1635459219 No score

Fix CVE(s): CVE-2021-40812, CVE-2021-40145, CVE-2021-38115, CVE-2017-6363

  • SECURITY UPDATE: unhandled memory allocation error in gdImageGd2Ptr
    • debian/patches/CVE-2021-40145.patch: check for non-zero return code from _gdImageGd2
    • CVE-2021-40145
  • SECURITY UPDATE: unhandled value returned from gdPutBuf
    • debian/patches/CVE-2021-40812.patch: handle possible gdPutBuf error in _gdImageBmpCtx and _gdImageWebpCtx CVE-2021-40812
  • SECURITY UPDATE: unhandled value returned from gdGetBuf
    • debian/patches/CVE-2021-38115.patch: handle possible gdGetBuf error in read_header_tga CVE-2021-38115
  • SECURITY UPDATE: handle possible heap buffer overread
    • debian/patches/CVE-2017-6363.patch: make sure transparent index is within bounds of the palette CVE-2017-6363
Record
CLSA-2021-1635459219
Updated
2026-11-02
OSVCLSA-2022-1644931813 No score

Fix of CVE: CVE-2021-40145

  • CVE-2021-40145: Fix a double free
Record
CLSA-2022-1644931813
Updated
2026-11-02
OSVCLSA-2022-1646915745 No score

Fix of CVE: CVE-2021-40145

  • CVE-2021-40145: Fix a double free in gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library
Record
CLSA-2022-1646915745
Updated
2026-11-02
OSVCLSA-2026-1776445382 No score

gd: Fix of CVE-2021-40145

  • Fix CVE-2021-40145: double-free in gdImageGd2Ptr()
Record
CLSA-2026-1776445382
Updated
2026-11-02
OSVCLSA-2026-1777541021 No score

gd: Fix of CVE-2021-40145

  • CVE-2021-40145: Fix a double free in gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library
Record
CLSA-2026-1777541021
Updated
2026-11-02
OSVCLSA-2026-1777969863 No score

gd: Fix of CVE-2021-40145

  • CVE-2021-40145: fix double free in gdImageGd2Ptr
Record
CLSA-2026-1777969863
Updated
2026-11-02
OSVCLSA-2026-1777970160 No score

gd: Fix of CVE-2021-40145

  • CVE-2021-40145: fix double free in gdImageGd2Ptr
Record
CLSA-2026-1777970160
Updated
2026-11-02
OSVMGASA-2021-0433 No score

Updated libgd packages fix security vulnerability

read_header_tga in gd_tga.c in the GD Graphics Library (aka LibGD) through 2.3.2 allows remote attackers to cause a denial of service (out-of-bounds read) via a crafted TGA file. (CVE-2021-38115)

gdImageGd2Ptr in gd_gd2.c in the GD Graphics Library (aka LibGD) through 2.3.2 has a double free. (CVE-2021-40145)

Record
MGASA-2021-0433
Updated
2026-11-02
OSVUSN-5068-1 No score

libgd2 vulnerabilities

It was discovered that GD Graphics Library incorrectly handled certain GD and GD2 files. An attacker could possibly use this issue to cause a crash or expose sensitive information. This issue only affected Ubuntu 20.04 LTS, Ubuntu 18.04 LTS, Ubuntu 16.04 ESM, and Ubuntu 14.04 ESM. (CVE-2017-6363)

It was discovered that GD Graphics Library incorrectly handled certain TGA files. An attacker could possibly use this issue to cause a denial of service or expose sensitive information. (CVE-2021-381)

It was discovered that GD Graphics Library incorrectly handled certain files. An attacker could possibly use this issue to cause a crash. (CVE-2021-40145)

Record
USN-5068-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
gd
Alpine:v3.11
before 2.2.5-r4
2.2.5-r4
gd
Alpine:v3.12
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.13
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.14
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.15
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.16
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.17
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.18
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.19
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.20
before 2.3.0-r1
2.3.0-r1
Show 50 moreShow less
Affected packages
PackageAffectedFixed
gd
Alpine:v3.21
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.22
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.23
before 2.3.0-r1
2.3.0-r1
gd
Alpine:v3.24
before 2.3.0-r1
2.3.0-r1
gd
Azure Linux:2
before 2.3.0-5
2.3.0-5
gd
TuxCare:OracleLinux:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
gd-devel
TuxCare:OracleLinux:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
gd-progs
TuxCare:OracleLinux:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
gd
TuxCare:CentOS:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
gd-devel
TuxCare:CentOS:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
gd-progs
TuxCare:CentOS:6
From an advisory covering 2 CVEs
before 2.0.35-12.el6.cloudlinux.els
2.0.35-12.el6.cloudlinux.els
libgd-dev
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 2.1.1-4ubuntu0.16.04.13
2.1.1-4ubuntu0.16.04.13
libgd-tools
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 2.1.1-4ubuntu0.16.04.13
2.1.1-4ubuntu0.16.04.13
libgd3
TuxCare:Ubuntu:16.04
From an advisory covering 4 CVEs
before 2.1.1-4ubuntu0.16.04.13
2.1.1-4ubuntu0.16.04.13
gd
TuxCare:CentOS:8.4
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-devel
TuxCare:CentOS:8.4
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-progs
TuxCare:CentOS:8.4
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd
TuxCare:CentOS:8.5
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-devel
TuxCare:CentOS:8.5
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-progs
TuxCare:CentOS:8.5
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd
TuxCare:AlmaLinux:9.2
before 2.3.2-3.el9.tuxcare.els1
2.3.2-3.el9.tuxcare.els1
gd-devel
TuxCare:AlmaLinux:9.2
before 2.3.2-3.el9.tuxcare.els1
2.3.2-3.el9.tuxcare.els1
gd-progs
TuxCare:AlmaLinux:9.2
before 2.3.2-3.el9.tuxcare.els1
2.3.2-3.el9.tuxcare.els1
gd
TuxCare:CentOS-Stream:8
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-devel
TuxCare:CentOS-Stream:8
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd-progs
TuxCare:CentOS-Stream:8
before 2.2.5-7.el8.tuxcare.els1
2.2.5-7.el8.tuxcare.els1
gd
TuxCare:OracleLinux:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
gd-devel
TuxCare:OracleLinux:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
gd-progs
TuxCare:OracleLinux:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
gd
TuxCare:RHEL:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
gd-devel
TuxCare:RHEL:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
gd-progs
TuxCare:RHEL:7
before 2.0.35-27.el7_9.tuxcare.els1
2.0.35-27.el7_9.tuxcare.els1
libgd2
Debian:12
before 2.3.3-1
2.3.3-1
libgd2
Debian:13
before 2.3.3-1
2.3.3-1
libgd2
Debian:14
before 2.3.3-1
2.3.3-1
libgd2
Debian:11
From an advisory covering 3 CVEs
before 2.3.0-2+deb11u1, plus listed versions
2.3.0-2
2.3.0-2+deb11u1
libgd
Mageia:8
From an advisory covering 2 CVEs
before 2.3.1-1.1.mga8
2.3.1-1.1.mga8
gd
openEuler:20.03-LTS-SP1
before 2.3.0-3.oe1
2.3.0-3.oe1
gd
openEuler:20.03-LTS-SP2
before 2.3.0-3.oe1
2.3.0-3.oe1
gd
openEuler:20.03-LTS-SP3
before 2.3.0-3.oe1
2.3.0-3.oe1
gd
openEuler:22.03-LTS
before 2.3.2-2.oe2203
2.3.2-2.oe2203
libgd2
Ubuntu:Pro:14.04:LTS
before 2.1.0-3ubuntu0.11+esm2, plus listed versions
2.1.0-22.1.0-32.1.0-3ubuntu0.12.1.0-3ubuntu0.22.1.0-3ubuntu0.3
Show 7 moreShow less
2.1.0-3ubuntu0.52.1.0-3ubuntu0.62.1.0-3ubuntu0.72.1.0-3ubuntu0.82.1.0-3ubuntu0.102.1.0-3ubuntu0.112.1.0-3ubuntu0.11+esm1
2.1.0-3ubuntu0.11+esm2
libgd2
Ubuntu:Pro:16.04:LTS
before 2.1.1-4ubuntu0.16.04.12+esm1, plus listed versions
2.1.1-4build12.1.1-4build22.1.1-4ubuntu0.16.04.12.1.1-4ubuntu0.16.04.22.1.1-4ubuntu0.16.04.3
Show 7 moreShow less
2.1.1-4ubuntu0.16.04.52.1.1-4ubuntu0.16.04.62.1.1-4ubuntu0.16.04.72.1.1-4ubuntu0.16.04.82.1.1-4ubuntu0.16.04.102.1.1-4ubuntu0.16.04.112.1.1-4ubuntu0.16.04.12
2.1.1-4ubuntu0.16.04.12+esm1
libgd2
Ubuntu:18.04:LTS
before 2.2.5-4ubuntu0.5, plus listed versions
2.2.5-32.2.5-42.2.5-4ubuntu0.22.2.5-4ubuntu0.32.2.5-4ubuntu0.4
2.2.5-4ubuntu0.5
libgd2
Ubuntu:20.04:LTS
before 2.2.5-5.2ubuntu2.1, plus listed versions
2.2.5-5.22.2.5-5.2ubuntu2
2.2.5-5.2ubuntu2.1
libgd2
Ubuntu:22.04:LTS
before 2.3.0-2ubuntu1
2.3.0-2ubuntu1
libgd2
Ubuntu:Pro:14.04:LTS
From an advisory covering 3 CVEs
before 2.1.0-3ubuntu0.11+esm2, plus listed versions
2.1.0-22.1.0-32.1.0-3ubuntu0.12.1.0-3ubuntu0.22.1.0-3ubuntu0.3
Show 7 moreShow less
2.1.0-3ubuntu0.52.1.0-3ubuntu0.62.1.0-3ubuntu0.72.1.0-3ubuntu0.82.1.0-3ubuntu0.102.1.0-3ubuntu0.112.1.0-3ubuntu0.11+esm1
2.1.0-3ubuntu0.11+esm2
libgd2
Ubuntu:Pro:16.04:LTS
From an advisory covering 3 CVEs
before 2.1.1-4ubuntu0.16.04.12+esm1, plus listed versions
2.1.1-4build12.1.1-4build22.1.1-4ubuntu0.16.04.12.1.1-4ubuntu0.16.04.22.1.1-4ubuntu0.16.04.3
Show 7 moreShow less
2.1.1-4ubuntu0.16.04.52.1.1-4ubuntu0.16.04.62.1.1-4ubuntu0.16.04.72.1.1-4ubuntu0.16.04.82.1.1-4ubuntu0.16.04.102.1.1-4ubuntu0.16.04.112.1.1-4ubuntu0.16.04.12
2.1.1-4ubuntu0.16.04.12+esm1
libgd2
Ubuntu:18.04:LTS
From an advisory covering 3 CVEs
before 2.2.5-4ubuntu0.5, plus listed versions
2.2.5-32.2.5-42.2.5-4ubuntu0.22.2.5-4ubuntu0.32.2.5-4ubuntu0.4
2.2.5-4ubuntu0.5
libgd2
Ubuntu:20.04:LTS
From an advisory covering 3 CVEs
before 2.2.5-5.2ubuntu2.1, plus listed versions
2.2.5-5.22.2.5-5.2ubuntu2
2.2.5-5.2ubuntu2.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-40145 is a high vulnerability (CVSS 7.5) in Libgd, published August 26, 2021. Its validity is disputed. EPSS puts the chance of exploitation in the next 30 days at 2.13%, the 82nd percentile. Fixed in gd 2.2.5-r4.

References

Show 19 moreShow less
MoveEnter Open