Memory exhaustion when compiling regular expressions in regexp/syntax
Programs which compile regular expressions from untrusted sources may be vulnerable to memory exhaustion or denial of service. The parsed regexp representation is linear in the size of the input, but in some cases the constant factor can be as high as 40,000, making relatively small regexps consume much larger amounts of memory. After fix, each regexp being parsed is limited to a 256 MB memory footprint. Regular expressions whose representation would use more space than that are rejected. Normal use of regular expressions is unaffected.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2022-41715
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 00:49 UTC · Revision 1
Source evidence
Memory exhaustion when compiling regular expressions in regexp/syntax
core-osv · Original sourcePublished 14 Oct 2022, 00:00 UTC
Programs which compile regular expressions from untrusted sources may be vulnerable to memory exhaustion or denial of service. The parsed regexp representation is linear in the size of the input, but in some cases the constant factor can be as high as 40,000, making relatively small regexps consume much larger amounts of memory. After fix, each regexp being parsed is limited to a 256 MB memory footprint. Regular expressions whose representation would use more space than that are rejected. Normal use of regular expressions is unaffected.
osv:CVE-2022-41715
Complete source record
{
"id": "9f62e6c7a71cd8e47e23bef157775f02889003774334335b482f2d69f4a1b3bf",
"url": "https://osv.dev/vulnerability/CVE-2022-41715",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Memory exhaustion when compiling regular expressions in regexp/syntax",
"summary": "Programs which compile regular expressions from untrusted sources may be vulnerable to memory exhaustion or denial of service. The parsed regexp representation is linear in the size of the input, but in some cases the constant factor can be as high as 40,000, making relatively small regexps consume much larger amounts of memory. After fix, each regexp being parsed is limited to a 256 MB memory footprint. Regular expressions whose representation would use more space than that are rejected. Normal use of regular expressions is unaffected.",
"evidence": "osv:CVE-2022-41715",
"products": [],
"severity": "unknown",
"structured": {
"id": "CVE-2022-41715",
"aliases": [
"BIT-golang-2022-41715",
"CVE-2022-41715",
"GO-2022-1039"
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/golang/go",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "947091d31ccda14b0a362adff37b6e037f0f59f3"
},
{
"fixed": "895664482c0ebe5cec4a6935615a1e9610bbf1e3"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:golang:go:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "1.18.7"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:golang:go:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "1.19.0"
},
{
"fixed": "1.19.2"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"go1.18.6",
"go1.19.1",
"go1.19",
"go1.18.5",
"go1.19rc2",
"go1.18.4",
"go1.19rc1",
"go1.18.3",
"go1.19beta1",
"go1.18.2",
"go1.18.1",
"go1.18",
"go1.18rc1",
"go1.18beta2",
"go1.18beta1",
"go1.17beta1",
"go1.16beta1",
"go1.15beta1",
"go1.14beta1",
"go1.13beta1",
"go1.12beta2",
"go1.12beta1",
"go1.11beta3",
"go1.11beta2",
"go1.11beta1",
"go1.10rc2",
"go1.10rc1",
"go1.10beta2",
"go1.10beta1",
"go1.9beta2",
"go1.9beta1",
"go1.8beta2",
"go1.8beta1",
"go1.7rc4",
"go1.7rc3",
"go1.7rc2",
"go1.7rc1",
"go1.7beta2",
"go1.7beta1",
"go1.6beta2",
"go1.6beta1",
"go1.5beta3",
"go1.5beta2",
"go1.5beta1",
"go1.4beta1",
"go1.3beta2",
"go1.3beta1",
"weekly.2012-03-27",
"weekly",
"weekly.2012-03-22",
"weekly.2012-03-13",
"weekly.2012-03-04",
"weekly.2012-02-22",
"weekly.2012-02-14",
"weekly.2012-02-07",
"weekly.2012-01-27",
"weekly.2012-01-20",
"weekly.2012-01-15",
"weekly.2011-12-22",
"weekly.2011-12-14",
"weekly.2011-12-06",
"weekly.2011-12-02",
"weekly.2011-12-01",
"weekly.2011-11-18",
"weekly.2011-11-09",
"weekly.2011-11-08",
"weekly.2011-11-02",
"weekly.2011-11-01",
"weekly.2011-10-26",
"weekly.2011-10-25",
"weekly.2011-10-18",
"weekly.2011-10-06",
"weekly.2011-09-21",
"weekly.2011-09-16",
"weekly.2011-08-17",
"weekly.2011-09-07",
"weekly.2011-09-01",
"weekly.2011-08-10",
"weekly.2011-07-07",
"weekly.2011-07-29",
"weekly.2011-07-19",
"weekly.2011-06-09",
"weekly.2011-06-23",
"weekly.2011-06-16",
"weekly.2011-06-02",
"weekly.2011-05-22",
"weekly.2011-04-27",
"weekly.2011-04-13",
"weekly.2011-04-04",
"weekly.2011-03-28",
"weekly.2011-03-15",
"weekly.2011-03-07.1",
"release.r56",
"weekly.2011-03-07",
"weekly.2011-02-24",
"weekly.2011-02-15",
"weekly.2011-02-01.1",
"weekly.2011-02-01",
"weekly.2011-01-20",
"weekly.2011-01-19",
"weekly.2011-01-12",
"weekly.2011-01-06",
"weekly.2010-12-22",
"weekly.2010-12-15.1",
"weekly.2010-12-15",
"weekly.2010-12-08",
"weekly.2010-12-02",
"weekly.2010-11-23",
"weekly.2010-11-10",
"weekly.2010-11-02",
"weekly.2010-10-27",
"weekly.2010-10-20",
"weekly.2010-10-13.1",
"weekly.2010-10-13",
"weekly.2010-09-29",
"weekly.2010-09-22",
"weekly.2010-09-15",
"weekly.2010-09-06",
"weekly.2010-08-25",
"weekly.2010-08-11",
"weekly.2010-08-04",
"weekly.2010-07-29",
"weekly.2010-07-14",
"weekly.2010-07-01",
"weekly.2010-06-21",
"weekly.2010-06-09",
"weekly.2010-05-27",
"weekly.2010-05-04",
"weekly.2010-04-27",
"weekly.2010-04-13",
"weekly.2010-03-30",
"weekly.2010-03-22",
"weekly.2010-03-15",
"weekly.2010-03-04",
"weekly.2010-02-23",
"weekly.2010-02-17",
"weekly.2010-02-04",
"weekly.2010-01-27",
"weekly.2010-01-13",
"weekly.2010-01-05",
"weekly.2009-12-22",
"weekly.2009-12-09",
"weekly.2009-12-07",
"weekly.2009-11-17",
"weekly.2009-11-12",
"weekly.2009-11-10.1",
"weekly.2009-11-10",
"weekly.2009-11-06"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-41715.json"
}
}
],
"modified": "2026-10-28T02:30:48.513228468Z",
"provider": "osv",
"references": [
"https://go.dev/cl/439356",
"https://go.dev/issue/55949",
"https://groups.google.com/g/golang-announce/c/xtuG5faxtaU",
"https://pkg.go.dev",
"https://pkg.go.dev/vuln/GO-2022-1039",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41715.json",
"https://nvd.nist.gov/vuln/detail/CVE-2022-41715",
"https://security.gentoo.org/glsa/202311-09"
],
"provider_metadata": {
"cna_assigner": "Go",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"fixed": "1.18.7"
},
{
"introduced": "1.19.0-0"
},
{
"fixed": "1.19.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41715.json"
}
},
"related_cves": [
{
"value": "CVE-2022-41715",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 516742,
"published_at": "2022-10-14T00:00:00+00:00"
}