Skip to main content

DSpace CVE-2026-49833

| EUVDEUVD-2026-70235 MEDIUM
Path Traversal (CWE-22)
2026-07-08 https://github.com/DSpace/DSpace GHSA-9qm4-rh6w-pq5x
5.5
CVSS 3.1 · Vendor: https://github.com/DSpace/DSpace
Share

Severity by source

Vendor (https://github.com/DSpace/DSpace) PRIMARY
5.5 MEDIUM
AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:L/A:L
vuln.today AI
5.5 MEDIUM

Network vector is correct for a web app; AC:H reflects multi-step payload-staging requirement; PR:H is mandatory as DSpace admin credentials are required; C:H for arbitrary file read; I:L because code execution requires a secondary weakness in the Velocity implementation, not this CVE alone.

3.1 AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:L/A:L
4.0 AV:N/AC:H/AT:P/PR:H/UI:N/VC:H/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/DSpace/DSpace).

CVSS VectorVendor: https://github.com/DSpace/DSpace

Attack Vector
Network
Attack Complexity
High
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
Low
Availability
Low

Lifecycle Timeline

2
Analysis Generated
Jul 08, 2026 - 21:57 vuln.today
CVE Published
Jul 08, 2026 - 20:26 github-advisory
MEDIUM 5.5

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 10 maven packages depend on org.dspace:dspace-api (7 direct, 3 indirect)

Ecosystem-wide dependent count for version 8.0-rc1.

DescriptionCVE.org

Overview

A path traversal vulnerability is possible via the COAR Notify / LDN service in DSpace. _This vulnerability impacts DSpace versions 8.0 <= 8.3, 9.0 <= 9.2._ The attacker MUST already have DSpace administrator credentials in order to perform the attack.

When reading a file input stream of an "inbound pattern" / "template", used to generate an LDN message, the LDN class does not check for path traversal or restrict the templates to a known base path. This could allow an untrusted file from elsewhere in the file system (e.g. an export log, a bitstream path, a temporary file) to be read and interpreted as an Apache Velocity template.

Expected behaviour : Only the trusted templates kept in $dspace.dir/config/ldn should be allowed or used by LDN.

Impact

On its own this seems a fairly low-impact problem: only DSpace Administrators can set LDN template names in services, and you typically need more access to manipulate files on the server.

However, this vulnerability was included as part of an attack chain that demonstrated the ability of a DSpace Administrator to put the malicious Velocity payload in a predictable place (e.g. temporary log file from a running process) and then have that file referenced as the template name in a new service.

This means it is possible (non-trivial, but proven) for an attacker with DSpace administrator credentials to either disclose information via a specially crafted Velocity template, or exploit another weakness in the DSpace Velocity implementation by executing arbitrary java code.

Patches

The fix is included in DSpace 8.4, 9.3 and 10.0. Please upgrade to one of these versions or disable LDN (see below)

If users cannot upgrade immediately, it is possible to manually patch their DSpace backend. (No changes are necessary to the frontend.) A pull request exists which can be used to patch systems running DSpace 8.x or 9.x.

Apply the patch to a DSpace

If at all possible, DSpace recommends disabling LDN (see below) or upgrading the user's DSpace site based on the upgrade instructions. However, if users are unable to do so, they can manually apply the above patches to their DSpace backend as follows:

  1. Download the appropriate patch file to the machine where DSpace backend is running
  2. From the [dspace-src] folder, apply the patch, e.g. git apply [name-of-file].patch
  3. Now, update the DSpace site (based loosely on the Upgrade instructions). This generally involves three steps:
  4. Rebuild DSpace, e.g. mvn -U clean package (This will recompile all DSpace backend code)
  5. Redeploy DSpace, e.g. ant update (This will copy all newly built code to their installation directory). Depending on their setup they also may need to copy the updated "server" webapp over to their Tomcat webapps folder.
  6. Restart Tomcat (or runnable JAR)

Workarounds

  • In dspace.cfg or local.cfg, disable LDN (set ldn.enabled=false) if it is not crucial to the operation of the repository. (NOTE: LDN is disabled by default, so many DSpace sites may not use this feature)
  • Once users have patched their site or upgraded, they may safely enable LDN again.

Credits

Discovered & reported by Pablo Picurelli Ortiz (@superpegaso2703), cybersecurity student at Universidad Rey Juan Carlos. Code fix developed by Kim Shepherd (@kshepherd) of The Library Code

AnalysisAI

Path traversal via the COAR Notify / Linked Data Notifications (LDN) service in DSpace 8.0-8.3 and 9.0-9.2 allows an authenticated DSpace administrator to reference arbitrary filesystem paths as LDN inbound-pattern templates, causing those files to be read and interpreted as Apache Velocity templates. While no public exploit or active exploitation has been identified, the vulnerability was demonstrated as part of a proven attack chain in which an administrator stages a malicious Velocity payload in a predictable file location and triggers its execution, enabling either sensitive file disclosure or arbitrary Java code execution via Velocity template injection. No special conditions (KEV, public PoC) are confirmed at time of analysis.

Technical ContextAI

DSpace (pkg:maven/org.dspace:dspace-api) is a widely-used Java/Tomcat-based open-source repository platform. Its COAR Notify / LDN feature processes inbound notification patterns using Apache Velocity templates stored under $dspace.dir/config/ldn. The vulnerable LDN class reads the template file path from a service configuration field without validating that the path stays within the trusted config/ldn base directory, a classic CWE-22 (Path Traversal) root cause. Because Velocity templates can execute Java expressions and method calls, any attacker-controlled file that reaches the Velocity engine - such as an export log or temporary file containing a crafted payload - can yield information disclosure or arbitrary code execution within the JVM context of the running DSpace/Tomcat process.

RemediationAI

The primary fix is to upgrade to DSpace 8.4, 9.3, or 10.0, which contain the validated patch developed by Kim Shepherd of The Library Code. For installations that cannot immediately upgrade, the vendor provides downloadable patch files: for 9.x, apply https://github.com/DSpace/DSpace/pull/12552.patch; for 8.x, apply https://github.com/DSpace/DSpace/pull/12540.patch. These patches also resolve a related path traversal in the Curation Task reporter (GHSA-v66x-68f2-pxf5). After downloading the patch, apply it with git apply [patch-file].patch from the [dspace-src] directory, then rebuild (mvn -U clean package), redeploy (ant update), and restart Tomcat. If patching is not immediately possible, set ldn.enabled=false in dspace.cfg or local.cfg - the vendor notes LDN is disabled by default, so many sites are already protected. Re-enabling LDN is safe only after patching or upgrading. Note that disabling LDN removes COAR Notify interoperability functionality for the duration of the workaround.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

Share

CVE-2026-49833 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy