CVE-2023-4218
Eclipse IDE XXE in eclipse.platform
Impact
### Impact xml files like ".project" are parsed vulnerable against all sorts of XXE attacks. The user just needs to open any evil project or update an open project with a vulnerable file (for example for review a foreign repository or patch). Vulnerablility was found by static code analysis (SonarLint). Example `.project` file: ``` <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE price [ <!ENTITY xxe SYSTEM "http://127.0.0.1:49416/evil">]> <projectDescription> <name>p</name> <comment>&xxe;</comment> </projectDescription> ``` ### Patches Similar patches including junit test that shows the vulnerability have already applied to PDE (see https://github.com/eclipse-pde/eclipse.pde/pull/667). A solution to platform should be the same: just reject parsing any XML that contains any `DOCTYPE`. ### Workarounds No known workaround. User can only avoid to get/open any foreign files with eclipse. Firewall rules against loss of data (but not against XML bomb). ### References https://cwe.mitre.org/data/definitions/611.html https://rules.sonarsource.com/java/RSPEC-2755 https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/8 (Report for multiple projects affected)
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| maven | org.eclipse.platform:org.eclipse.core.runtime | < 3.29.0 | 3.29.0 |
| maven | org.eclipse.platform:org.eclipse.platform | < 4.29.0 | 4.29.0 |
| maven | org.eclipse.platform:org.eclipse.jface | < 3.31.0 | 3.31.0 |
| maven | org.eclipse.platform:org.eclipse.ui.forms | < 3.13.0 | 3.13.0 |
| maven | org.eclipse.platform:org.eclipse.ui.ide | < 3.21.100 | 3.21.100 |
| maven | org.eclipse.platform:org.eclipse.ui.workbench | < 3.130.0 | 3.130.0 |
| maven | org.eclipse.platform:org.eclipse.urischeme | < 1.3.100 | 1.3.100 |
| maven | org.eclipse.jdt:org.eclipse.jdt.ui | < 3.30.0 | 3.30.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Eclipse | Eclipse Ide | before 4.29 |
| Eclipse | Org.Eclipse.Core.Runtime | before 3.29.0 |
| Eclipse | Pde | before 3.13.2400 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/eclipse-cdt/cdt/commit/c7169b3186d2fef20f97467c3e2ad78e2943ed1b
- https://github.com/eclipse-emf/org.eclipse.emf/issues/10
- https://github.com/eclipse-jdt/eclipse.jdt.core/commit/38dd2a878f45cdb3d8d52090f1d6d1b532fd4c4d
- https://github.com/eclipse-jdt/eclipse.jdt.ui/commit/13675b1f8a74f47de4da89ed0ded6af7c21dfbec
- https://github.com/eclipse-pde/eclipse.pde/pull/632/
- https://github.com/eclipse-pde/eclipse.pde/pull/667/
- https://github.com/eclipse-platform/eclipse.platform.releng.buildtools/pull/45
- https://github.com/eclipse-platform/eclipse.platform.swt/commit/bf71db5ddcb967c0863dad4745367b54f49e06ba
- https://github.com/eclipse-platform/eclipse.platform.ui/commit/f243cf0a28785b89b7c50bf4e1cce48a917d89bd
- https://github.com/eclipse-platform/eclipse.platform/pull/761
- https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/8
- https://github.com/advisories/GHSA-j24h-xcpc-9jw8
- https://github.com/eclipse-platform/eclipse.platform/security/advisories/GHSA-j24h-xcpc-9jw8
- https://nvd.nist.gov/vuln/detail/CVE-2023-4218
- https://github.com/eclipse-platform/eclipse.platform/commit/5dc372a0c5002b7f22e5d49eaa1cbf0916455daf
- https://github.com/eclipse-pde/eclipse.pde/pull/632
- https://github.com/eclipse-pde/eclipse.pde/pull/667