Issue summary: A signed integer overflow when sizing the destination buffer for Unicode output in ASN1mbstringncopy() can lead to a heap buffer overflow.
Impact summary: A heap buffer overflow may lead to a crash or possibly attacker controlled code execution or other undefined behaviour.
In ASN1mbstringcopy() and ASN1mbstringncopy() the destination size for Unicode output is computed in a signed int: by left shift of the input character count for BMPSTRING (UTF-16) and UNIVERSALSTRING (UTF-32), and by summing per-character byte counts for UTF8STRING. The calculation overflows when the input reaches around 2^30 characters. In the worst case (UNIVERSALSTRING at 2^30 characters) the size wraps to zero, OPENSSL_malloc(1) is called, and the subsequent character copy writes several gigabytes past the one-byte allocation.
X.509 certificate processing routes through ASN1STRINGsetbyNID(), whose DIRSTRINGTYPE mask excludes UNIVERSALSTRING and whose per-NID size limits cap the input length; no network protocol or certificate-handling path in OpenSSL exercises the overflow. Triggering the bug requires an application that calls ASN1mbstringcopy() or ASN1mbstringncopy() directly, or registers a custom string type via ASN1STRINGTABLEadd(), with attacker-controlled input on the order of half a gigabyte or more. For these reasons this issue was assigned Low severity.
The FIPS modules in 4.0, 3.6, 3.5, 3.4 and 3.0 are not affected by this issue, as the affected code is outside the OpenSSL FIPS module boundary.
{
"cwe_ids": [
"CWE-787"
],
"cna_assigner": "openssl",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/7xxx/CVE-2026-7383.json"
}{
"cpe": [
"cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*",
"cpe:2.3:a:openssl:openssl:4.0.0:-:*:*:*:*:*:*"
],
"extracted_events": [
{
"introduced": "1.0.2"
},
{
"fixed": "1.0.2zq"
},
{
"introduced": "1.1.1"
},
{
"fixed": "1.1.1zh"
},
{
"introduced": "3.0.0"
},
{
"fixed": "3.0.21"
},
{
"introduced": "3.4.0"
},
{
"fixed": "3.4.6"
},
{
"introduced": "3.5.0"
},
{
"fixed": "3.5.7"
},
{
"introduced": "3.6.0"
},
{
"fixed": "3.6.3"
},
{
"introduced": "4.0.0-NA"
},
{
"last_affected": "4.0.0-NA"
}
],
"source": [
"CPE_RANGE",
"CPE_STRING",
"REFERENCES"
]
}"2026-07-22T00:45:50Z"
[
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"243971072618222724126117138392541085907",
"20203436555900253968670420024125559450",
"261033251671054815966464244630025010874",
"142558467251092045021326807845044327645",
"117558078243606577959089637136237792030",
"124332917225391423252605388545338682722",
"236022608503733170562534553288003810395",
"339832511801857794746629870610675811880",
"314277570596906803737453056118000261489",
"134443953973411113628429047361571354695",
"144241986910067820723321631094658024558",
"219027348492242387101505984291253252762",
"197249709654825572065845136116068698100",
"335442194952519091195796659076425621527",
"94024945373243508884955678864647600249",
"58865074517344503016033744066393422789",
"171075818861470609519508474684508188088",
"183308020435695821222991028080353540824",
"112766856209011567470513760761740501796"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/4f8d2bddaa2c8e06f9c33390ee1717059a6e4be6",
"id": "CVE-2026-7383-03cd20c7",
"target": {
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 3297.0,
"function_hash": "157368430457296408057518218641344868108"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/d32350ae8ef7426718f5aa9e383d4b51398ee255",
"id": "CVE-2026-7383-1be3bd59",
"target": {
"function": "ASN1_mbstring_ncopy",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 195.0,
"function_hash": "326715636192485159031379249291784863467"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/d32350ae8ef7426718f5aa9e383d4b51398ee255",
"id": "CVE-2026-7383-35f12443",
"target": {
"function": "out_utf8",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"243971072618222724126117138392541085907",
"20203436555900253968670420024125559450",
"261033251671054815966464244630025010874",
"142558467251092045021326807845044327645",
"117558078243606577959089637136237792030",
"124332917225391423252605388545338682722",
"236022608503733170562534553288003810395",
"339832511801857794746629870610675811880",
"314277570596906803737453056118000261489",
"134443953973411113628429047361571354695",
"144241986910067820723321631094658024558",
"219027348492242387101505984291253252762",
"197249709654825572065845136116068698100",
"335442194952519091195796659076425621527",
"94024945373243508884955678864647600249",
"58865074517344503016033744066393422789",
"171075818861470609519508474684508188088",
"183308020435695821222991028080353540824",
"112766856209011567470513760761740501796"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/d32350ae8ef7426718f5aa9e383d4b51398ee255",
"id": "CVE-2026-7383-53da0590",
"target": {
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 195.0,
"function_hash": "326715636192485159031379249291784863467"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/c332adaced43bcbb85f97410597e951c11ec3083",
"id": "CVE-2026-7383-5a2e414f",
"target": {
"function": "out_utf8",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"243971072618222724126117138392541085907",
"20203436555900253968670420024125559450",
"261033251671054815966464244630025010874",
"142558467251092045021326807845044327645",
"117558078243606577959089637136237792030",
"124332917225391423252605388545338682722",
"236022608503733170562534553288003810395",
"339832511801857794746629870610675811880",
"314277570596906803737453056118000261489",
"134443953973411113628429047361571354695",
"144241986910067820723321631094658024558",
"219027348492242387101505984291253252762",
"197249709654825572065845136116068698100",
"335442194952519091195796659076425621527",
"94024945373243508884955678864647600249",
"58865074517344503016033744066393422789",
"171075818861470609519508474684508188088",
"183308020435695821222991028080353540824",
"112766856209011567470513760761740501796"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/bd17511070fb39a67bfa19682affb765e706a974",
"id": "CVE-2026-7383-6d93e3cf",
"target": {
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 3172.0,
"function_hash": "186349096673253037366471905327905215678"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/bd17511070fb39a67bfa19682affb765e706a974",
"id": "CVE-2026-7383-6ea28808",
"target": {
"function": "ASN1_mbstring_ncopy",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 195.0,
"function_hash": "326715636192485159031379249291784863467"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/4f8d2bddaa2c8e06f9c33390ee1717059a6e4be6",
"id": "CVE-2026-7383-6ecfcbdc",
"target": {
"function": "out_utf8",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"243971072618222724126117138392541085907",
"20203436555900253968670420024125559450",
"261033251671054815966464244630025010874",
"142558467251092045021326807845044327645",
"117558078243606577959089637136237792030",
"124332917225391423252605388545338682722",
"236022608503733170562534553288003810395",
"339832511801857794746629870610675811880",
"314277570596906803737453056118000261489",
"134443953973411113628429047361571354695",
"144241986910067820723321631094658024558",
"219027348492242387101505984291253252762",
"197249709654825572065845136116068698100",
"335442194952519091195796659076425621527",
"94024945373243508884955678864647600249",
"58865074517344503016033744066393422789",
"171075818861470609519508474684508188088",
"183308020435695821222991028080353540824",
"112766856209011567470513760761740501796"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/80c15faaf78042bbb8654a0e234c50c381732f74",
"id": "CVE-2026-7383-7397b06f",
"target": {
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 3109.0,
"function_hash": "65331361705884786675178309567558276074"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/4f8d2bddaa2c8e06f9c33390ee1717059a6e4be6",
"id": "CVE-2026-7383-810515e4",
"target": {
"function": "ASN1_mbstring_ncopy",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 3109.0,
"function_hash": "65331361705884786675178309567558276074"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/80c15faaf78042bbb8654a0e234c50c381732f74",
"id": "CVE-2026-7383-81b05481",
"target": {
"function": "ASN1_mbstring_ncopy",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 195.0,
"function_hash": "326715636192485159031379249291784863467"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/80c15faaf78042bbb8654a0e234c50c381732f74",
"id": "CVE-2026-7383-a18e4192",
"target": {
"function": "out_utf8",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"28170854778703993674264004058177114599",
"73132526844288570625317440636111911761",
"177405411499435185068645597737938634778",
"224809958623850711330610094965797758930",
"295554444428855106393106961197201359586"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/e04bd3433fd84e1861bf258ea37928d9845e6a86",
"id": "CVE-2026-7383-c377fa22",
"target": {
"file": "include/openssl/opensslv.h"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"243971072618222724126117138392541085907",
"20203436555900253968670420024125559450",
"261033251671054815966464244630025010874",
"142558467251092045021326807845044327645",
"117558078243606577959089637136237792030",
"124332917225391423252605388545338682722",
"236022608503733170562534553288003810395",
"339832511801857794746629870610675811880",
"314277570596906803737453056118000261489",
"134443953973411113628429047361571354695",
"144241986910067820723321631094658024558",
"219027348492242387101505984291253252762",
"197249709654825572065845136116068698100",
"335442194952519091195796659076425621527",
"94024945373243508884955678864647600249",
"58865074517344503016033744066393422789",
"171075818861470609519508474684508188088",
"183308020435695821222991028080353540824",
"112766856209011567470513760761740501796"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/c332adaced43bcbb85f97410597e951c11ec3083",
"id": "CVE-2026-7383-d050859d",
"target": {
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"251633914150035957322733061977107206211",
"338514574181828579838011565939158652696",
"76638288692106140328510055542557597351",
"142922657400765574308962710386922248045",
"71649992455794854055653842592139575350",
"65527166711110472566013424527579064967",
"253196866009476977787139000804413898733",
"172177136897997206866313011107384691461"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/e818b74be2170fbe957a07b0da4401c2b694b3b8",
"id": "CVE-2026-7383-e051451f",
"target": {
"file": "crypto/opensslv.h"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 3297.0,
"function_hash": "157368430457296408057518218641344868108"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/c332adaced43bcbb85f97410597e951c11ec3083",
"id": "CVE-2026-7383-e999ea89",
"target": {
"function": "ASN1_mbstring_ncopy",
"file": "crypto/asn1/a_mbstr.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 195.0,
"function_hash": "326715636192485159031379249291784863467"
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/bd17511070fb39a67bfa19682affb765e706a974",
"id": "CVE-2026-7383-fb21566a",
"target": {
"function": "out_utf8",
"file": "crypto/asn1/a_mbstr.c"
}
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-7383.json"