{"id":"CVE-2019-9843","aliases":["EUVD-2019-0583","GHSA-7v35-qwwj-p98g"],"status":"published","title":"Improper Restriction of XML External Entity Reference in DiffPlug Spotless","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01499,"percentile":0.74438,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-611"],"published":"2019-03-15T23:00:00Z","modified":"2026-10-20T10:51:43Z","fixes":[{"ecosystem":"Maven","package":"com.diffplug.spotless:spotless-plugin-gradle","fixed_in":["3.20.0"],"sources":["ghsa","osv"]},{"ecosystem":"Maven","package":"com.diffplug.spotless:spotless-maven-plugin","fixed_in":["1.20.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"com.diffplug.spotless:spotless-plugin-gradle","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.20.0"}]}]},{"source":"ghsa","ecosystem":"Maven","package":"com.diffplug.spotless:spotless-maven-plugin","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.20.0"}]}]},{"source":"osv","ecosystem":"Maven","package":"com.diffplug.spotless:spotless-plugin-gradle","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.20.0"}]}],"versions":["3.0.0","3.0.0.BETA2","3.0.0.BETA3","3.0.0.RC1","3.0.0.RC2","3.1.0","3.10.0","3.12.0","3.13.0","3.14.0","3.15.0","3.16.0","3.17.0","3.18.0","3.19.0","3.2.0","3.3.0","3.3.1","3.3.2","3.4.0","3.4.1","3.5.0","3.5.1","3.5.2","3.6.0","3.7.0","3.8.0","3.9.0"]},{"source":"osv","ecosystem":"Maven","package":"com.diffplug.spotless:spotless-maven-plugin","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.20.0"}]}],"versions":["1.0.0.BETA1","1.0.0.BETA2","1.0.0.BETA3","1.0.0.BETA4","1.0.0.BETA5","1.13.0","1.14.0","1.15.0","1.16.0","1.17.0","1.18.0","1.19.0"]}],"products":[{"vendor":"diffplug","product":"gradle"},{"vendor":"diffplug","product":"maven"}],"references":[{"url":"https://github.com/diffplug/spotless/blob/master/plugin-maven/CHANGES.md#version-1200---march-14th-2018-javadoc-jcenter","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","advisory","web"]},{"url":"https://github.com/diffplug/spotless/issues/358","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://github.com/diffplug/spotless/blob/master/plugin-gradle/CHANGES.md#version-3200---march-11th-2018-javadoc-jcenter","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","advisory","web"]},{"url":"https://github.com/diffplug/spotless/pull/369","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://lists.apache.org/thread.html/r7406e297228c42deeecdd12a576e39d63073faebf14b027b7608fdfd%40%3Cissues.iceberg.apache.org%3E","tags":["mailing-list","x_refsource_MLIST","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-9843","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-7v35-qwwj-p98g"},{"url":"https://github.com/diffplug/spotless","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2019-9843","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-03-15T23:00:00Z","modified":"2024-08-04T22:01:55.188Z","updated_at":"2026-11-02T14:20:20.397093Z"}],"euvd":[{"id":"EUVD-2019-0583","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-03-15T23:00:00Z","modified":"2024-08-04T22:01:55Z","updated_at":"2026-11-03T02:40:55.125862Z"}],"ghsa":[{"id":"GHSA-7v35-qwwj-p98g","title":"Improper Restriction of XML External Entity Reference in DiffPlug Spotless","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-07-05T21:07:40Z","modified":"2023-01-28T05:00:54Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-611"],"updated_at":"2026-11-02T14:36:22.592333Z"}],"nvd":[{"id":"CVE-2019-9843","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-06-28T18:15:15.33Z","modified":"2026-06-17T02:44:42.237Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5.1,"vector":"AV:N/AC:H/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-611"],"updated_at":"2026-11-02T14:05:17.695191Z"}],"osv":[{"id":"CVE-2019-9843","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-06-28T18:15:15.33Z","modified":"2026-10-20T10:51:43.96693243Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:13.492058Z"},{"id":"GHSA-7v35-qwwj-p98g","title":"Improper Restriction of XML External Entity Reference in DiffPlug Spotless","description":"In DiffPlug Spotless before 1.20.0 (library and Maven plugin) and before 3.20.0 (Gradle plugin), the XML parser would resolve external entities over both HTTP and HTTPS and didn't respect the resolveExternalEntities setting. For example, this allows disclosure of file contents to a MITM attacker if a victim performs a spotlessApply operation on an untrusted XML file.","status":"published","published":"2019-07-05T21:07:40Z","modified":"2023-11-08T04:01:47.951255Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-611"],"updated_at":"2026-11-02T15:46:41.349637Z"}]}}
