{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-33939",
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "state": "PUBLISHED",
        "assignerShortName": "GitHub_M",
        "dateReserved": "2026-03-24T19:50:52.103Z",
        "datePublished": "2026-03-27T21:08:24.664Z",
        "dateUpdated": "2026-09-04T12:04:44.445Z"
    },
    "containers": {
        "cna": {
            "title": "Handlebars.js has Denial of Service via Malformed Decorator Syntax in Template Compilation",
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-754",
                            "lang": "en",
                            "description": "CWE-754: Improper Check for Unusual or Exceptional Conditions",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "attackComplexity": "LOW",
                        "attackVector": "NETWORK",
                        "availabilityImpact": "HIGH",
                        "baseScore": 7.5,
                        "baseSeverity": "HIGH",
                        "confidentialityImpact": "NONE",
                        "integrityImpact": "NONE",
                        "privilegesRequired": "NONE",
                        "scope": "UNCHANGED",
                        "userInteraction": "NONE",
                        "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                        "version": "3.1"
                    }
                }
            ],
            "references": [
                {
                    "name": "https://github.com/handlebars-lang/handlebars.js/security/advisories/GHSA-9cx6-37pm-9jff",
                    "tags": [
                        "x_refsource_CONFIRM"
                    ],
                    "url": "https://github.com/handlebars-lang/handlebars.js/security/advisories/GHSA-9cx6-37pm-9jff"
                },
                {
                    "name": "https://github.com/handlebars-lang/handlebars.js/commit/68d8df5a88e0a26fe9e6084c5c6aaebe67b07da2",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/handlebars-lang/handlebars.js/commit/68d8df5a88e0a26fe9e6084c5c6aaebe67b07da2"
                },
                {
                    "name": "https://github.com/handlebars-lang/handlebars.js/releases/tag/v4.7.9",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/handlebars-lang/handlebars.js/releases/tag/v4.7.9"
                }
            ],
            "affected": [
                {
                    "vendor": "handlebars-lang",
                    "product": "handlebars.js",
                    "versions": [
                        {
                            "version": ">= 4.0.0, < 4.7.9",
                            "status": "affected"
                        }
                    ]
                }
            ],
            "providerMetadata": {
                "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
                "shortName": "GitHub_M",
                "dateUpdated": "2026-03-27T21:08:24.664Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, when a Handlebars template contains decorator syntax referencing an unregistered decorator (e.g. `{{*n}}`), the compiled template calls `lookupProperty(decorators, \"n\")`, which returns `undefined`. The runtime then immediately invokes the result as a function, causing an unhandled `TypeError: ... is not a function` that crashes the Node.js process. Any application that compiles user-supplied templates without wrapping the call in a `try/catch` is vulnerable to a single-request Denial of Service. Version 4.7.9 fixes the issue. Some workarounds are available. Wrap compilation and rendering in `try/catch`. Validate template input before passing it to `compile()`; reject templates containing  decorator syntax (`{{*...}}`) if decorators are not used in your application. Use the pre-compilation workflow; compile templates at build time and serve only pre-compiled  templates; do not call `compile()` at request time."
                }
            ],
            "source": {
                "advisory": "GHSA-9cx6-37pm-9jff",
                "discovery": "UNKNOWN"
            }
        },
        "adp": [
            {
                "references": [
                    {
                        "url": "https://github.com/handlebars-lang/handlebars.js/security/advisories/GHSA-9cx6-37pm-9jff",
                        "tags": [
                            "exploit"
                        ]
                    }
                ],
                "metrics": [
                    {
                        "other": {
                            "type": "ssvc",
                            "content": {
                                "timestamp": "2026-03-30T18:52:18.558792Z",
                                "id": "CVE-2026-33939",
                                "options": [
                                    {
                                        "Exploitation": "poc"
                                    },
                                    {
                                        "Automatable": "yes"
                                    },
                                    {
                                        "Technical Impact": "partial"
                                    }
                                ],
                                "role": "CISA Coordinator",
                                "version": "2.0.3"
                            }
                        }
                    }
                ],
                "title": "CISA ADP Vulnrichment",
                "providerMetadata": {
                    "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
                    "shortName": "CISA-ADP",
                    "dateUpdated": "2026-03-30T18:52:24.142Z"
                }
            },
            {
                "affected": [
                    {
                        "collectionURL": "https://catalog.redhat.com/software/containers/",
                        "cpes": [
                            "cpe:/a:redhat:cluster_observability_operator:1.5::el9"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "cluster-observability-operator/logging-console-plugin-pf4-rhel9",
                        "product": "Cluster Observability Operator 1.5.0",
                        "vendor": "Red Hat",
                        "versions": [
                            {
                                "lessThan": "*",
                                "status": "unaffected",
                                "version": "1782839279",
                                "versionType": "rpm"
                            }
                        ]
                    },
                    {
                        "collectionURL": "https://catalog.redhat.com/software/containers/",
                        "cpes": [
                            "cpe:/a:redhat:cluster_observability_operator:1.5::el9"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "cluster-observability-operator/logging-console-plugin-pf5-rhel9",
                        "product": "Cluster Observability Operator 1.5.0",
                        "vendor": "Red Hat",
                        "versions": [
                            {
                                "lessThan": "*",
                                "status": "unaffected",
                                "version": "1782840539",
                                "versionType": "rpm"
                            }
                        ]
                    },
                    {
                        "collectionURL": "https://catalog.redhat.com/software/containers/",
                        "cpes": [
                            "cpe:/a:redhat:cluster_observability_operator:1.5::el9"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "cluster-observability-operator/troubleshooting-panel-console-plugin-pf6-rhel9",
                        "product": "Cluster Observability Operator 1.5.0",
                        "vendor": "Red Hat",
                        "versions": [
                            {
                                "lessThan": "*",
                                "status": "unaffected",
                                "version": "1782839996",
                                "versionType": "rpm"
                            }
                        ]
                    },
                    {
                        "collectionURL": "https://catalog.redhat.com/software/containers/",
                        "cpes": [
                            "cpe:/a:redhat:openshift_devspaces:3.27::el9"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "devspaces/code-rhel9",
                        "product": "Red Hat OpenShift Dev Spaces 3.27",
                        "vendor": "Red Hat",
                        "versions": [
                            {
                                "lessThan": "*",
                                "status": "unaffected",
                                "version": "1776744110",
                                "versionType": "rpm"
                            }
                        ]
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:cryostat:4"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "handlebars",
                        "product": "Cryostat 4",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/elasticsearch6-rhel9",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/elasticsearch-operator-bundle",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/elasticsearch-proxy-rhel9",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/elasticsearch-rhel9-operator",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/kibana6-rhel8",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:logging:5"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "openshift-logging/logging-curator5-rhel9",
                        "product": "Logging Subsystem for Red Hat OpenShift",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:jboss_data_grid:8"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "handlebars",
                        "product": "Red Hat Data Grid 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:10"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "firefox",
                        "product": "Red Hat Enterprise Linux 10",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:10"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "thunderbird",
                        "product": "Red Hat Enterprise Linux 10",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:7"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "firefox",
                        "product": "Red Hat Enterprise Linux 7",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:8"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "389-ds:1.4/389-ds-base",
                        "product": "Red Hat Enterprise Linux 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:8"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "firefox",
                        "product": "Red Hat Enterprise Linux 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:8"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "grafana",
                        "product": "Red Hat Enterprise Linux 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:8"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "mozjs60",
                        "product": "Red Hat Enterprise Linux 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:8"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "thunderbird",
                        "product": "Red Hat Enterprise Linux 8",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:9"
                        ],
                        "defaultStatus": "affected",
                        "packageName": "firefox",
                        "product": "Red Hat Enterprise Linux 9",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/o:redhat:enterprise_linux:9"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "thunderbird",
                        "product": "Red Hat Enterprise Linux 9",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:openshift_ai"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9",
                        "product": "Red Hat OpenShift AI (RHOAI)",
                        "vendor": "Red Hat"
                    },
                    {
                        "collectionURL": "https://access.redhat.com/downloads/content/package-browser/",
                        "cpes": [
                            "cpe:/a:redhat:jboss_enterprise_bpms_platform:7"
                        ],
                        "defaultStatus": "unaffected",
                        "packageName": "handlebars",
                        "product": "Red Hat Process Automation 7",
                        "vendor": "Red Hat"
                    }
                ],
                "datePublic": "2026-03-27T21:08:24.664Z",
                "descriptions": [
                    {
                        "lang": "en",
                        "value": "A flaw was found in Handlebars.js. A remote attacker can exploit this by submitting a malformed Handlebars template that includes decorator syntax referencing an unregistered decorator. When the application attempts to compile this template without proper error handling, it triggers an unhandled `TypeError`. This error causes the Node.js process to crash, resulting in a Denial of Service (DoS) for the affected application."
                    }
                ],
                "metrics": [
                    {
                        "other": {
                            "content": {
                                "namespace": "https://access.redhat.com/security/updates/classification/",
                                "value": "Important"
                            },
                            "type": "Red Hat severity rating"
                        }
                    },
                    {
                        "cvssV3_1": {
                            "attackComplexity": "LOW",
                            "attackVector": "NETWORK",
                            "availabilityImpact": "HIGH",
                            "baseScore": 7.5,
                            "baseSeverity": "HIGH",
                            "confidentialityImpact": "NONE",
                            "integrityImpact": "NONE",
                            "privilegesRequired": "NONE",
                            "scope": "UNCHANGED",
                            "userInteraction": "NONE",
                            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                            "version": "3.1"
                        },
                        "format": "CVSS"
                    }
                ],
                "problemTypes": [
                    {
                        "descriptions": [
                            {
                                "cweId": "CWE-248",
                                "description": "Uncaught Exception",
                                "lang": "en",
                                "type": "CWE"
                            }
                        ]
                    }
                ],
                "references": [
                    {
                        "tags": [
                            "vdb-entry",
                            "x_refsource_REDHAT"
                        ],
                        "url": "https://access.redhat.com/security/cve/CVE-2026-33939"
                    },
                    {
                        "name": "RHBZ#2452508",
                        "tags": [
                            "issue-tracking",
                            "x_refsource_REDHAT"
                        ],
                        "url": "https://bugzilla.redhat.com/show_bug.cgi?id=2452508"
                    },
                    {
                        "tags": [
                            "x_sadp-csaf-vex"
                        ],
                        "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-33939.json"
                    },
                    {
                        "tags": [
                            "vendor-advisory",
                            "x_refsource_REDHAT"
                        ],
                        "url": "https://access.redhat.com/errata/RHSA-2026:34342"
                    },
                    {
                        "tags": [
                            "vendor-advisory",
                            "x_refsource_REDHAT"
                        ],
                        "url": "https://access.redhat.com/errata/RHSA-2026:10175"
                    }
                ],
                "solutions": [
                    {
                        "lang": "en",
                        "value": "RHSA-2026:34342: Cluster Observability Operator 1.5.0"
                    },
                    {
                        "lang": "en",
                        "value": "RHSA-2026:10175: Red Hat OpenShift Dev Spaces 3.27"
                    }
                ],
                "timeline": [
                    {
                        "lang": "en",
                        "time": "2026-03-27T22:01:36.296Z",
                        "value": "Reported to Red Hat."
                    },
                    {
                        "lang": "en",
                        "time": "2026-03-27T21:08:24.664Z",
                        "value": "Made public."
                    }
                ],
                "title": "handlebars.js: Handlebars.js: Denial of Service via malformed decorator syntax in template compilation",
                "workarounds": [
                    {
                        "lang": "en",
                        "value": "To mitigate this issue, applications utilizing Handlebars.js should implement robust error handling during template compilation and rendering. Specifically, wrap template compilation and rendering calls in `try/catch` blocks to gracefully handle `TypeError` exceptions. Alternatively, validate user-supplied template input to reject decorator syntax (`{{*...}}`) if decorators are not actively used by the application. Employing a pre-compilation workflow, where templates are compiled at build time and only pre-compiled templates are served, can also prevent runtime exploitation. If the application is a service, a restart may be required for changes to take effect."
                    }
                ],
                "x_adpType": "supplier",
                "x_generator": {
                    "engine": "sadp-cli 1.0.0"
                },
                "providerMetadata": {
                    "orgId": "0b0ca135-0b70-47e7-9f44-1890c2a1c46c",
                    "shortName": "redhat-SADP",
                    "dateUpdated": "2026-09-04T12:04:44.445Z"
                }
            }
        ]
    }
}