Medium
Security advisory
A NULL pointer dereference flaw was found in GnuTLS. As Nettle's hash update functions internally call memcpy, providing zero-length input may cause undefined behavior. This flaw leads to a denial of service after authentication in rare circumstances.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2021-4209
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 09:25 UTC · Revision 1
Source evidence
A NULL pointer dereference flaw was found in GnuTLS. As Nettle's hash update functions internally call memcpy, providing zero-length input may cause undefined behavior. This flaw leads to a denial of service after authentication in rare circumstances.
osv:CVE-2021-4209
Complete source record
{
"id": "44715633074e7195c1d594b9d5e5234a4e7229731b6bcc50bdbe7bf5a8567843",
"url": "https://osv.dev/vulnerability/CVE-2021-4209",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2021-4209",
"summary": "A NULL pointer dereference flaw was found in GnuTLS. As Nettle's hash update functions internally call memcpy, providing zero-length input may cause undefined behavior. This flaw leads to a denial of service after authentication in rare circumstances.",
"evidence": "osv:CVE-2021-4209",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2021-4209",
"aliases": [
"CVE-2021-4209"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/gnutls/gnutls",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "f213ec01faa8fd7e7478f85a76352be875f53e4b"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:gnu:gnutls:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "3.7.3"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"3.7.2",
"3.7.1",
"3.7.0",
"3.6.14",
"3.6.13",
"gnutls_3_6_12",
"3.6.12",
"gnutls_3_6_11_1",
"gnutls_3_6_11",
"gnutls_3_6_10",
"gnutls_3_6_9",
"gnutls_3_6_7",
"gnutls_3_6_6",
"gnutls_3_6_5",
"gnutls_3_6_4",
"gnutls_3_6_3",
"gnutls_3_6_2",
"gnutls_3_6_1",
"gnutls_3_6_0_1",
"gnutls_3_6_0",
"gnutls_3_5_7",
"gnutls_3_5_5",
"gnutls_3_5_4",
"gnutls_3_5_3",
"gnutls_3_5_2",
"gnutls_3_5_1",
"gnutls_3_5_0",
"gnutls_3_4_3",
"gnutls_3_4_2",
"gnutls_3_4_1",
"gnutls_3_4_0",
"gnutls_3_3_6",
"gnutls_3_3_5",
"gnutls_3_3_4",
"gnutls_3_3_3",
"gnutls_3_3_2",
"gnutls_3_3_1",
"gnutls_3_3_0",
"gnutls_3_2_6",
"gnutls_3_2_5",
"gnutls_3_2_4",
"gnutls_3_2_3",
"gnutls_3_2_3pre0",
"gnutls_3_2_2",
"gnutls_3_2_0",
"gnutls_3_1_9",
"gnutls_3_1_8",
"gnutls_3_1_7",
"gnutls_3_1_6",
"gnutls_3_1_5",
"gnutls_3_1_4",
"gnutls_3_1_3",
"gnutls_3_1_2",
"gnutls_3_1_0",
"gnutls_3_1_0pre0",
"gnutls_3_0_21",
"gnutls_3_0_18",
"gnutls_3_0_17",
"gnutls_3_0_16",
"gnutls_3_0_15",
"gnutls_3_0_14",
"gnutls_3_0_13",
"gnutls-3_0_12",
"gnutls_3_0_11",
"gnutls_3_0_10",
"gnutls_3_0_9",
"gnutls_3_0_8",
"gnutls_3_0_7",
"gnutls_3_0_6",
"gnutls_3_0_5",
"gnutls_3_0_4",
"gnutls_3_0_3",
"gnutls_3_0_2",
"gnutls_3_0_0",
"gnutls_2_99_4",
"gnutls_2_99_3",
"gnutls_2_99_2",
"gnutls_2_99_1",
"gnutls_2_99_0",
"gnutls_2_11_6",
"gnutls_2_11_5",
"gnutls_2_11_4",
"gnutls_2_11_3",
"gnutls_2_9_10",
"gnutls_2_9_9",
"gnutls_2_9_8",
"gnutls_2_9_7",
"gnutls_2_9_6",
"gnutls_2_9_5",
"gnutls_2_9_4",
"gnutls_2_9_3",
"gnutls_2_9_2",
"gnutls_2_7_12",
"gnutls_2_7_11",
"gnutls_2_7_10",
"gnutls_2_7_9",
"gnutls_2_7_8",
"gnutls_2_7_7",
"gnutls_2_7_6",
"gnutls_2_7_5",
"gnutls_2_7_4",
"gnutls_2_7_3",
"gnutls_2_7_1",
"gnutls_2_7_0",
"gnutls_2_5_8",
"gnutls_2_5_7",
"gnutls_2_5_6",
"gnutls_2_5_4",
"gnutls_2_5_3",
"gnutls_2_5_2",
"gnutls_2_5_1",
"gnutls_2_5_0",
"gnutls_2_4_0",
"gnutls_2_3_15",
"gnutls_2_3_14",
"gnutls_2_3_13",
"gnutls_2_3_12",
"gnutls_2_3_11",
"gnutls_2_3_10",
"gnutls_2_3_9",
"gnutls_2_3_8",
"gnutls_2_3_7",
"gnutls_2_3_6",
"gnutls_2_3_5",
"gnutls_2_3_3",
"gnutls_2_3_1",
"gnutls_2_3_0",
"gnutls_2_1_8",
"gnutls_2_1_7",
"gnutls_2_1_6",
"gnutls_2_1_5",
"gnutls_2_1_4",
"gnutls_2_1_3",
"gnutls_2_1_2",
"gnutls_2_0_1",
"gnutls_2_1_1",
"gnutls_2_1_0",
"gnutls_2_0_0",
"gnutls_1_7_19",
"gnutls_1_7_18",
"gnutls_1_7_17",
"gnutls_1_7_16",
"gnutls_1_7_15",
"gnutls_1_7_14",
"gnutls_1_7_13",
"gnutls_1_7_12",
"gnutls_1_7_11",
"gnutls_1_7_10",
"gnutls_1_7_9",
"gnutls_1_7_8",
"gnutls_1_7_7",
"gnutls_1_7_6",
"gnutls_1_7_5",
"gnutls_1_7_4",
"gnutls_1_7_3",
"gnutls_1_7_2",
"gnutls_1_7_1",
"gnutls_1_6_1",
"gnutls_1_7_0",
"gnutls_1_6_0",
"gnutls_1_5_5",
"gnutls_1_5_4",
"gnutls_1_5_3",
"gnutls_1_5_2",
"gnutls_1_5_1",
"gnutls_1_5_0",
"gnutls_1_4_2",
"gnutls_1_4_1",
"gnutls_1_4_0",
"gnutls_1_2_11",
"gnutls_1_3_5",
"gnutls_1_3_4",
"gnutls_1_2_10",
"gnutls_1_3_3",
"gnutls_1_3_2",
"gnutls_1_3_1",
"gnutls_1_3_0",
"gnutls_1_2_9",
"gnutls_1_2_8",
"gnutls_1_2_7",
"gnutls_1_2_6",
"gnutls_1_2_5",
"gnutls_1_2_4",
"gnutls_1_2_3",
"gnutls_1_0_25",
"gnutls_1_2_2",
"gnutls_1_2_1",
"gnutls_1_2_0",
"gnutls_1_0_24",
"gnutls_1_1_23",
"gnutls_1_0_23",
"gnutls_1_1_22",
"gnutls_1_0_22",
"gnutls_1_1_21",
"gnutls_1_1_20",
"gnutls_1_1_19",
"gnutls_1_0_21",
"gnutls_1_1_18",
"gnutls_1_1_17",
"gnutls_1_0_20",
"gnutls_1_1_16",
"gnutls_1_1_15",
"gnutls_1_1_14",
"gnutls_1_1_13",
"gnutls_1_1_12",
"gnutls_1_1_11",
"gnutls_1_1_10",
"gnutls_1_1_9",
"gnutls_1_1_8",
"gnutls_1_1_7",
"gnutls_1_1_7_pre0",
"gnutls_1_1_6",
"gnutls_1_1_5",
"gnutls_1_1_4",
"gnutls_1_1_3",
"gnutls_1_1_2",
"gnutls_1_1_1",
"gnutls_1_1_0",
"gnutls_1_0_0",
"gnutls_0_9_99",
"gnutls_0_9_98",
"gnutls_0_9_97",
"gnutls_0_9_96",
"gnutls_0_9_95",
"gnutls_0_9_94",
"gnutls_0_9_93",
"gnutls_0_9_92",
"gnutls_0_9_91",
"gnutls_0_9_90",
"gnutls_0_9_8",
"gnutls_0_9_7",
"gnutls_0_9_6",
"gnutls_0_9_5",
"gnutls_0_9_4",
"gnutls_0_9_3",
"gnutls_0_9_2",
"gnutls_0_9_1",
"gnutls_0_8_1",
"gnutls_0_8_0",
"gnutls_0_6_0",
"gnutls_0_5_11",
"gnutls_0_5_10",
"gnutls_0_5_x_before_int_fixes",
"gnutls_0_5_9",
"gnutls_0_5_8",
"gnutls_0_5_7",
"gnutls_0_5_6",
"gnutls_0_5_5",
"gnutls_0_5_x_before_types_change",
"gnutls_0_5_4",
"gnutls_0_5_x_with_export_ciphersuites",
"gnutls_0_5_x_before_export_ciphersuites",
"gnutls_0_5_1",
"gnutls_0_5_0",
"gnutls_0_4_with_libtasn1",
"gnutls_0_4_3",
"gnutls_0_4_2",
"gnutls_0_4_1",
"gnutls_0_4_0",
"gnutls_0_3_92",
"gnutls_0_3_91",
"gnutls_0_3_90",
"gnutls_0_3_2",
"gnutls_0_3_1",
"gnutls_0_3_0",
"gnutls_0_2_91",
"gnutls_0_2_90",
"gnutls_0_2_11",
"gnutls_0_2_10",
"gnutls_0_2_9",
"gnutls_0_2_4",
"gnutls_0_2_3",
"gnutls_0_2_2",
"gnutls_0_2_1",
"gnutls_0_2_0",
"gnutls_0_1_9",
"gnutls_0_1_4",
"gnutls-0_1_2",
"gnutls-0-1-0-srp",
"gnutls-0-0-7",
"gnutls0-0-6",
"gnutls0-0-5",
"gnutls0-0-4"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-4209.json"
}
},
{
"ranges": [
{
"repo": "https://gitlab.com/gnutls/gnutls",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "f213ec01faa8fd7e7478f85a76352be875f53e4b"
},
{
"fixed": "3db352734472d851318944db13be73da61300568"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:gnu:gnutls:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "3.7.3"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "3db352734472d851318944db13be73da61300568"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"3.7.2",
"3.7.1",
"3.7.0",
"3.6.14",
"3.6.13",
"gnutls_3_6_12",
"3.6.12",
"gnutls_3_6_11_1",
"gnutls_3_6_11",
"gnutls_3_6_10",
"gnutls_3_6_9",
"gnutls_3_6_7",
"gnutls_3_6_6",
"gnutls_3_6_5",
"gnutls_3_6_4",
"gnutls_3_6_3",
"gnutls_3_6_2",
"gnutls_3_6_1",
"gnutls_3_6_0_1",
"gnutls_3_6_0",
"gnutls_3_5_7",
"gnutls_3_5_5",
"gnutls_3_5_4",
"gnutls_3_5_3",
"gnutls_3_5_2",
"gnutls_3_5_1",
"gnutls_3_5_0",
"gnutls_3_4_3",
"gnutls_3_4_2",
"gnutls_3_4_1",
"gnutls_3_4_0",
"gnutls_3_3_6",
"gnutls_3_3_5",
"gnutls_3_3_4",
"gnutls_3_3_3",
"gnutls_3_3_2",
"gnutls_3_3_1",
"gnutls_3_3_0",
"gnutls_3_2_6",
"gnutls_3_2_5",
"gnutls_3_2_4",
"gnutls_3_2_3",
"gnutls_3_2_3pre0",
"gnutls_3_2_2",
"gnutls_3_2_0",
"gnutls_3_1_9",
"gnutls_3_1_8",
"gnutls_3_1_7",
"gnutls_3_1_6",
"gnutls_3_1_5",
"gnutls_3_1_4",
"gnutls_3_1_3",
"gnutls_3_1_2",
"gnutls_3_1_0",
"gnutls_3_1_0pre0",
"gnutls_3_0_21",
"gnutls_3_0_18",
"gnutls_3_0_17",
"gnutls_3_0_16",
"gnutls_3_0_15",
"gnutls_3_0_14",
"gnutls_3_0_13",
"gnutls-3_0_12",
"gnutls_3_0_11",
"gnutls_3_0_10",
"gnutls_3_0_9",
"gnutls_3_0_8",
"gnutls_3_0_7",
"gnutls_3_0_6",
"gnutls_3_0_5",
"gnutls_3_0_4",
"gnutls_3_0_3",
"gnutls_3_0_2",
"gnutls_3_0_0",
"gnutls_2_99_4",
"gnutls_2_99_3",
"gnutls_2_99_2",
"gnutls_2_99_1",
"gnutls_2_99_0",
"gnutls_2_11_6",
"gnutls_2_11_5",
"gnutls_2_11_4",
"gnutls_2_11_3",
"gnutls_2_9_10",
"gnutls_2_9_9",
"gnutls_2_9_8",
"gnutls_2_9_7",
"gnutls_2_9_6",
"gnutls_2_9_5",
"gnutls_2_9_4",
"gnutls_2_9_3",
"gnutls_2_9_2",
"gnutls_2_7_12",
"gnutls_2_7_11",
"gnutls_2_7_10",
"gnutls_2_7_9",
"gnutls_2_7_8",
"gnutls_2_7_7",
"gnutls_2_7_6",
"gnutls_2_7_5",
"gnutls_2_7_4",
"gnutls_2_7_3",
"gnutls_2_7_1",
"gnutls_2_7_0",
"gnutls_2_5_8",
"gnutls_2_5_7",
"gnutls_2_5_6",
"gnutls_2_5_4",
"gnutls_2_5_3",
"gnutls_2_5_2",
"gnutls_2_5_1",
"gnutls_2_5_0",
"gnutls_2_4_0",
"gnutls_2_3_15",
"gnutls_2_3_14",
"gnutls_2_3_13",
"gnutls_2_3_12",
"gnutls_2_3_11",
"gnutls_2_3_10",
"gnutls_2_3_9",
"gnutls_2_3_8",
"gnutls_2_3_7",
"gnutls_2_3_6",
"gnutls_2_3_5",
"gnutls_2_3_3",
"gnutls_2_3_1",
"gnutls_2_3_0",
"gnutls_2_1_8",
"gnutls_2_1_7",
"gnutls_2_1_6",
"gnutls_2_1_5",
"gnutls_2_1_4",
"gnutls_2_1_3",
"gnutls_2_1_2",
"gnutls_2_0_1",
"gnutls_2_1_1",
"gnutls_2_1_0",
"gnutls_2_0_0",
"gnutls_1_7_19",
"gnutls_1_7_18",
"gnutls_1_7_17",
"gnutls_1_7_16",
"gnutls_1_7_15",
"gnutls_1_7_14",
"gnutls_1_7_13",
"gnutls_1_7_12",
"gnutls_1_7_11",
"gnutls_1_7_10",
"gnutls_1_7_9",
"gnutls_1_7_8",
"gnutls_1_7_7",
"gnutls_1_7_6",
"gnutls_1_7_5",
"gnutls_1_7_4",
"gnutls_1_7_3",
"gnutls_1_7_2",
"gnutls_1_7_1",
"gnutls_1_6_1",
"gnutls_1_7_0",
"gnutls_1_6_0",
"gnutls_1_5_5",
"gnutls_1_5_4",
"gnutls_1_5_3",
"gnutls_1_5_2",
"gnutls_1_5_1",
"gnutls_1_5_0",
"gnutls_1_4_2",
"gnutls_1_4_1",
"gnutls_1_4_0",
"gnutls_1_2_11",
"gnutls_1_3_5",
"gnutls_1_3_4",
"gnutls_1_2_10",
"gnutls_1_3_3",
"gnutls_1_3_2",
"gnutls_1_3_1",
"gnutls_1_3_0",
"gnutls_1_2_9",
"gnutls_1_2_8",
"gnutls_1_2_7",
"gnutls_1_2_6",
"gnutls_1_2_5",
"gnutls_1_2_4",
"gnutls_1_2_3",
"gnutls_1_0_25",
"gnutls_1_2_2",
"gnutls_1_2_1",
"gnutls_1_2_0",
"gnutls_1_0_24",
"gnutls_1_1_23",
"gnutls_1_0_23",
"gnutls_1_1_22",
"gnutls_1_0_22",
"gnutls_1_1_21",
"gnutls_1_1_20",
"gnutls_1_1_19",
"gnutls_1_0_21",
"gnutls_1_1_18",
"gnutls_1_1_17",
"gnutls_1_0_20",
"gnutls_1_1_16",
"gnutls_1_1_15",
"gnutls_1_1_14",
"gnutls_1_1_13",
"gnutls_1_1_12",
"gnutls_1_1_11",
"gnutls_1_1_10",
"gnutls_1_1_9",
"gnutls_1_1_8",
"gnutls_1_1_7",
"gnutls_1_1_7_pre0",
"gnutls_1_1_6",
"gnutls_1_1_5",
"gnutls_1_1_4",
"gnutls_1_1_3",
"gnutls_1_1_2",
"gnutls_1_1_1",
"gnutls_1_1_0",
"gnutls_1_0_0",
"gnutls_0_9_99",
"gnutls_0_9_98",
"gnutls_0_9_97",
"gnutls_0_9_96",
"gnutls_0_9_95",
"gnutls_0_9_94",
"gnutls_0_9_93",
"gnutls_0_9_92",
"gnutls_0_9_91",
"gnutls_0_9_90",
"gnutls_0_9_8",
"gnutls_0_9_7",
"gnutls_0_9_6",
"gnutls_0_9_5",
"gnutls_0_9_4",
"gnutls_0_9_3",
"gnutls_0_9_2",
"gnutls_0_9_1",
"gnutls_0_8_1",
"gnutls_0_8_0",
"gnutls_0_6_0",
"gnutls_0_5_11",
"gnutls_0_5_10",
"gnutls_0_5_x_before_int_fixes",
"gnutls_0_5_9",
"gnutls_0_5_8",
"gnutls_0_5_7",
"gnutls_0_5_6",
"gnutls_0_5_5",
"gnutls_0_5_x_before_types_change",
"gnutls_0_5_4",
"gnutls_0_5_x_with_export_ciphersuites",
"gnutls_0_5_x_before_export_ciphersuites",
"gnutls_0_5_1",
"gnutls_0_5_0",
"gnutls_0_4_with_libtasn1",
"gnutls_0_4_3",
"gnutls_0_4_2",
"gnutls_0_4_1",
"gnutls_0_4_0",
"gnutls_0_3_92",
"gnutls_0_3_91",
"gnutls_0_3_90",
"gnutls_0_3_2",
"gnutls_0_3_1",
"gnutls_0_3_0",
"gnutls_0_2_91",
"gnutls_0_2_90",
"gnutls_0_2_11",
"gnutls_0_2_10",
"gnutls_0_2_9",
"gnutls_0_2_4",
"gnutls_0_2_3",
"gnutls_0_2_2",
"gnutls_0_2_1",
"gnutls_0_2_0",
"gnutls_0_1_9",
"gnutls_0_1_4",
"gnutls-0_1_2",
"gnutls-0-1-0-srp",
"gnutls-0-0-7",
"gnutls0-0-6",
"gnutls0-0-5",
"gnutls0-0-4"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-4209.json",
"vanir_signatures": [
{
"id": "CVE-2021-4209-1d4b3fe6",
"digest": {
"length": 292,
"function_hash": "236935491575988941758897380685262140406"
},
"source": "https://gitlab.com/gnutls/gnutls@3db352734472d851318944db13be73da61300568",
"target": {
"file": "lib/nettle/mac.c",
"function": "wrap_nettle_hash_fast"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CVE-2021-4209-d7f7968a",
"digest": {
"threshold": 0.9,
"line_hashes": [
"275608571458383794299871881526938393840",
"233275457814939103921727359368080843473",
"149924555111173732165894474521323559217",
"34228096393390421288319336369992983832"
]
},
"source": "https://gitlab.com/gnutls/gnutls@3db352734472d851318944db13be73da61300568",
"target": {
"file": "lib/nettle/mac.c"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
}
],
"vanir_signatures_modified": "2026-10-24T14:21:21Z"
}
}
],
"modified": "2026-10-24T14:21:21.580260198Z",
"provider": "osv",
"references": [
"https://cert-portal.siemens.com/productcert/html/ssa-398330.html",
"https://access.redhat.com/security/cve/CVE-2021-4209",
"https://gitlab.com/gnutls/gnutls/-/issues/1306",
"https://gitlab.com/gnutls/gnutls/-/merge_requests/1503",
"https://security.netapp.com/advisory/ntap-20220915-0005/",
"https://bugzilla.redhat.com/show_bug.cgi?id=2044156",
"https://gitlab.com/gnutls/gnutls/-/commit/3db352734472d851318944db13be73da61300568"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:redhat:enterprise_linux:8.0:*:*:*:*:*:*:*"
],
"vendor_product": "redhat:enterprise_linux",
"extracted_events": [
{
"range": [
{
"introduced": "8.0"
},
{
"last_affected": "8.0"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2021-4209",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 443639,
"published_at": "2022-08-24T16:15:09.927+00:00"
}