{"id":"CVE-2024-1455","aliases":["EUVD-2024-0987","GHSA-q84m-rmw3-4382","PYSEC-2026-1519"],"status":"published","title":"Billion Laughs Attack leading to DoS in langchain-ai/langchain","description":"A vulnerability in the langchain-ai/langchain repository allows for a Billion Laughs Attack, a type of XML External Entity (XXE) exploitation. By nesting multiple layers of entities within an XML document, an attacker can cause the XML parser to consume excessive CPU and memory resources, leading to a denial of service (DoS).","severity":{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00764,"percentile":0.5572,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-776"],"published":"2024-03-26T14:03:46Z","modified":"2026-10-28T02:31:10Z","fixes":[{"ecosystem":"PyPI","package":"langchain-core","fixed_in":["0.1.35"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"langchain-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.35"}]}]},{"source":"osv","ecosystem":"PyPI","package":"langchain-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.35"}]}],"versions":["0.0.1","0.0.10","0.0.11","0.0.12","0.0.13","0.0.13rc1","0.0.13rc2","0.0.2","0.0.3","0.0.4","0.0.5","0.0.6","0.0.7","0.0.8","0.0.9","0.1.0","0.1.1","0.1.10","0.1.11","0.1.12","0.1.12rc1","0.1.13","0.1.14","0.1.15","0.1.15rc1","0.1.15rc2","0.1.16","0.1.17","0.1.18","0.1.19","0.1.2","0.1.20","0.1.21","0.1.22","0.1.23","0.1.24","0.1.25","0.1.26","0.1.27","0.1.28","0.1.29","0.1.3","0.1.30","0.1.31","0.1.32","0.1.33","0.1.33rc1","0.1.34","0.1.4","0.1.5","0.1.6","0.1.7","0.1.8","0.1.9"]},{"source":"osv","ecosystem":"PyPI","package":"langchain-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.35"}]}],"versions":["0.0.1","0.0.10","0.0.11","0.0.12","0.0.13","0.0.13rc1","0.0.13rc2","0.0.2","0.0.3","0.0.4","0.0.5","0.0.6","0.0.7","0.0.8","0.0.9","0.1.0","0.1.1","0.1.10","0.1.11","0.1.12","0.1.12rc1","0.1.13","0.1.14","0.1.15","0.1.15rc1","0.1.15rc2","0.1.16","0.1.17","0.1.18","0.1.19","0.1.2","0.1.20","0.1.21","0.1.22","0.1.23","0.1.24","0.1.25","0.1.26","0.1.27","0.1.28","0.1.29","0.1.3","0.1.30","0.1.31","0.1.32","0.1.33","0.1.33rc1","0.1.34","0.1.4","0.1.5","0.1.6","0.1.7","0.1.8","0.1.9"]}],"products":[{"vendor":"langchain","product":"langchain"},{"vendor":"langchain-ai","product":"langchain-ai/langchain"},{"vendor":"langchain-ai","product":"langchain-ai\\/langchain"}],"references":[{"url":"https://huntr.com/bounties/4353571f-c70d-4bfd-ac08-3a89cecb45b6","tags":["x_transferred","Exploit","Third Party Advisory","web"]},{"url":"https://github.com/langchain-ai/langchain/commit/727d5023ce88e18e3074ef620a98137d26ff92a3","tags":["x_transferred","Patch","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-1455","tags":["advisory"]},{"url":"https://github.com/langchain-ai/langchain/pull/17250","tags":["web"]},{"url":"https://github.com/langchain-ai/langchain/pull/19653","tags":["web"]},{"url":"https://github.com/langchain-ai/langchain/pull/19660","tags":["web"]},{"url":"https://github.com/advisories/GHSA-q84m-rmw3-4382","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/1xxx/CVE-2024-1455.json","tags":["advisory"]},{"url":"https://github.com/langchain-ai/langchain","tags":["package"]},{"url":"https://pypi.org/project/langchain-core","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2024-1455","title":"Billion Laughs Attack leading to DoS in langchain-ai/langchain","description":"A vulnerability in the langchain-ai/langchain repository allows for a Billion Laughs Attack, a type of XML External Entity (XXE) exploitation. By nesting multiple layers of entities within an XML document, an attacker can cause the XML parser to consume excessive CPU and memory resources, leading to a denial of service (DoS). ","status":"published","published":"2024-03-26T14:03:46.647Z","modified":"2024-08-15T15:56:19.154Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna"}],"cwes":["CWE-776"],"updated_at":"2026-11-02T14:34:17.865042Z"}],"euvd":[{"id":"EUVD-2024-0987","description":"A vulnerability in the langchain-ai/langchain repository allows for a Billion Laughs Attack, a type of XML External Entity (XXE) exploitation. By nesting multiple layers of entities within an XML document, an attacker can cause the XML parser to consume excessive CPU and memory resources, leading to a denial of service (DoS). ","status":"published","published":"2024-03-26T14:03:46Z","modified":"2024-08-15T15:56:19Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-03T00:56:17.186492Z"}],"ghsa":[{"id":"GHSA-q84m-rmw3-4382","title":"LangChain's XMLOutputParser vulnerable to XML Entity Expansion","description":"The XMLOutputParser in LangChain uses the etree module from the XML parser in the standard python library which has some XML vulnerabilities; see: https://docs.python.org/3/library/xml.html\n\nThis primarily affects users that combine an LLM (or agent) with the `XMLOutputParser` and expose the component via an endpoint on a web-service. \n\nThis would allow a malicious party to attempt to manipulate the LLM to produce a malicious payload for the parser that would compromise the availability of the service.\n\nA successful attack is predicated on:\n\n1. Usage of XMLOutputParser\n2. Passing of malicious input into the XMLOutputParser either directly or by trying to manipulate an LLM to do so on the users behalf\n3. Exposing the component via a web-service","status":"published","published":"2024-03-26T15:30:50Z","modified":"2024-03-27T17:46:45Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-776"],"updated_at":"2026-11-02T14:37:41.821668Z"}],"nvd":[{"id":"CVE-2024-1455","description":"A vulnerability in the langchain-ai/langchain repository allows for a Billion Laughs Attack, a type of XML External Entity (XXE) exploitation. By nesting multiple layers of entities within an XML document, an attacker can cause the XML parser to consume excessive CPU and memory resources, leading to a denial of service (DoS). ","status":"published","published":"2024-03-26T14:15:08.45Z","modified":"2026-06-17T07:04:16.863Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary"},{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"secondary"}],"cwes":["CWE-776"],"updated_at":"2026-11-02T14:09:43.052376Z"}],"osv":[{"id":"CVE-2024-1455","title":"Billion Laughs Attack leading to DoS in langchain-ai/langchain","description":"A vulnerability in the langchain-ai/langchain repository allows for a Billion Laughs Attack, a type of XML External Entity (XXE) exploitation. By nesting multiple layers of entities within an XML document, an attacker can cause the XML parser to consume excessive CPU and memory resources, leading to a denial of service (DoS). ","status":"published","published":"2024-03-26T14:03:46.647Z","modified":"2026-10-28T02:31:10.774731125Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-776"],"updated_at":"2026-11-02T15:44:37.917085Z"},{"id":"GHSA-q84m-rmw3-4382","title":"LangChain's XMLOutputParser vulnerable to XML Entity Expansion","description":"The XMLOutputParser in LangChain uses the etree module from the XML parser in the standard python library which has some XML vulnerabilities; see: https://docs.python.org/3/library/xml.html\n\nThis primarily affects users that combine an LLM (or agent) with the `XMLOutputParser` and expose the component via an endpoint on a web-service. \n\nThis would allow a malicious party to attempt to manipulate the LLM to produce a malicious payload for the parser that would compromise the availability of the service.\n\nA successful attack is predicated on:\n\n1. Usage of XMLOutputParser\n2. Passing of malicious input into the XMLOutputParser either directly or by trying to manipulate an LLM to do so on the users behalf\n3. Exposing the component via a web-service","status":"published","published":"2024-03-26T15:30:50Z","modified":"2026-07-07T17:56:44.86955423Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-776"],"updated_at":"2026-11-02T15:46:54.40888Z"},{"id":"PYSEC-2026-1519","title":"LangChain's XMLOutputParser vulnerable to XML Entity Expansion","description":"The XMLOutputParser in LangChain uses the etree module from the XML parser in the standard python library which has some XML vulnerabilities; see: https://docs.python.org/3/library/xml.html\n\nThis primarily affects users that combine an LLM (or agent) with the `XMLOutputParser` and expose the component via an endpoint on a web-service. \n\nThis would allow a malicious party to attempt to manipulate the LLM to produce a malicious payload for the parser that would compromise the availability of the service.\n\nA successful attack is predicated on:\n\n1. Usage of XMLOutputParser\n2. Passing of malicious input into the XMLOutputParser either directly or by trying to manipulate an LLM to do so on the users behalf\n3. Exposing the component via a web-service","status":"published","published":"2026-07-07T11:45:36.601622Z","modified":"2026-07-07T17:46:47.138281611Z","cvss":[{"version":"3.0","score":5.9,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:52:55.06457Z"}]}}
