Eclipse IDE XXE in eclipse.platform
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)
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Java / Kotlin (Maven) | org.eclipse.jdt:org.eclipse.jdt.ui | < 3.30.0 | 3.30.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.core.runtime | < 3.29.0 | 3.29.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.jface | < 3.31.0 | 3.31.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.platform | < 4.29.0 | 4.29.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.ui.forms | < 3.13.0 | 3.13.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.ui.ide | < 3.21.100 | 3.21.100 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.ui.workbench | < 3.130.0 | 3.130.0 |
| Java / Kotlin (Maven) | org.eclipse.platform:org.eclipse.urischeme | < 1.3.100 | 1.3.100 |
Verweise
- 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-emf/org.eclipse.emf/issues/10
- 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/pull/761
- https://github.com/eclipse-cdt/cdt/commit/c7169b3186d2fef20f97467c3e2ad78e2943ed1b
- https://github.com/eclipse-jdt/eclipse.jdt.core/commit/38dd2a878f45cdb3d8d52090f1d6d1b532fd4c4d
- https://github.com/eclipse-jdt/eclipse.jdt.ui/commit/13675b1f8a74f47de4da89ed0ded6af7c21dfbec
- 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/commit/5dc372a0c5002b7f22e5d49eaa1cbf0916455daf
- https://github.com/eclipse-platform/eclipse.platform
- https://gitlab.eclipse.org/security/vulnerability-reports/-/issues/8
- CVSS-Vektor
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N- Schwäche (CWE)
-- Plattform
- Java / Kotlin (Maven)
- Paket
org.eclipse.jdt:org.eclipse.jdt.ui, org.eclipse.platform:org.eclipse.core.runtime, org.eclipse.platform:org.eclipse.jface- Veröffentlicht
- 30.11.2023
- Aktualisiert
- 11.10.2026 12:21
Quellen und Lizenzen
OSV / GitHub Advisory Database - GHSA-j24h-xcpc-9jw8 - CC BY 4.0
Schwachstellenhistorie: org.eclipse.platform:org.eclipse.ui.forms
Alle veröffentlichten Schwachstellen dieses Pakets (Java / Kotlin (Maven)), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
Dies ist die einzige bekannte Schwachstelle dieses Pakets.
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.