CWE-611
AllowedImproper Restriction of XML External Entity Reference
Abstraction: Base · Status: Draft
The product processes an XML document that can contain XML entities with URIs that resolve to documents outside of the intended sphere of control, causing the product to embed incorrect documents into its output.
1712 vulnerabilities reference this CWE, most recent first.
GHSA-XX7G-F287-F9FQ
Vulnerability from github – Published: 2022-05-24 17:29 – Updated: 2023-10-27 11:34Jenkins Liquibase Runner Plugin 1.4.5 and earlier does not configure its XML parser to prevent XML external entity (XXE) attacks.
This allows attackers able to provide Liquibase changesets evaluated by the plugin to have Jenkins parse a crafted XML file that uses external entities for extraction of secrets from the Jenkins controller or server-side request forgery.
Jenkins Liquibase Runner Plugin 1.4.7 no longer parses Liquibase changesets.
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 1.4.5"
},
"package": {
"ecosystem": "Maven",
"name": "org.jenkins-ci.plugins:liquibase-runner"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.4.7"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2020-2284"
],
"database_specific": {
"cwe_ids": [
"CWE-611"
],
"github_reviewed": true,
"github_reviewed_at": "2022-12-19T23:52:27Z",
"nvd_published_at": "2020-09-23T14:15:00Z",
"severity": "HIGH"
},
"details": "Jenkins Liquibase Runner Plugin 1.4.5 and earlier does not configure its XML parser to prevent XML external entity (XXE) attacks.\n\nThis allows attackers able to provide Liquibase changesets evaluated by the plugin to have Jenkins parse a crafted XML file that uses external entities for extraction of secrets from the Jenkins controller or server-side request forgery.\n\nJenkins Liquibase Runner Plugin 1.4.7 no longer parses Liquibase changesets.",
"id": "GHSA-xx7g-f287-f9fq",
"modified": "2023-10-27T11:34:49Z",
"published": "2022-05-24T17:29:16Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-2284"
},
{
"type": "PACKAGE",
"url": "https://github.com/jenkinsci/liquibase-runner-plugin"
},
{
"type": "WEB",
"url": "https://www.jenkins.io/security/advisory/2020-09-23/#SECURITY-1887"
},
{
"type": "WEB",
"url": "http://www.openwall.com/lists/oss-security/2020/09/23/1"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "XXE vulnerability in Jenkins Liquibase Runner Plugin"
}
GHSA-XXP4-HW2V-2VCR
Vulnerability from github – Published: 2022-05-13 01:31 – Updated: 2022-05-13 01:31In Eclipse Kura versions up to 4.0.0, the Web UI package and component services, the Artemis simple Mqtt component and the emulator position service (not part of the device distribution) could potentially be target of XXE attack due to an improper factory and parser initialisation.
{
"affected": [],
"aliases": [
"CVE-2019-10244"
],
"database_specific": {
"cwe_ids": [
"CWE-611"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2019-04-09T16:29:00Z",
"severity": "HIGH"
},
"details": "In Eclipse Kura versions up to 4.0.0, the Web UI package and component services, the Artemis simple Mqtt component and the emulator position service (not part of the device distribution) could potentially be target of XXE attack due to an improper factory and parser initialisation.",
"id": "GHSA-xxp4-hw2v-2vcr",
"modified": "2022-05-13T01:31:33Z",
"published": "2022-05-13T01:31:33Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-10244"
},
{
"type": "WEB",
"url": "https://bugs.eclipse.org/bugs/show_bug.cgi?id=545835"
},
{
"type": "WEB",
"url": "http://www.securityfocus.com/bid/107844"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
Mitigation
Many XML parsers and validators can be configured to disable external entity expansion.
CAPEC-221: Data Serialization External Entities Blowup
This attack takes advantage of the entity replacement property of certain data serialization languages (e.g., XML, YAML, etc.) where the value of the replacement is a URI. A well-crafted file could have the entity refer to a URI that consumes a large amount of resources to create a denial of service condition. This can cause the system to either freeze, crash, or execute arbitrary code depending on the URI.