Vulnerabilities in pkg:maven/dev.dsf/dsf-common-jetty

PACKAGE
Advisory Identifier: GHSA-gj7p-595x-qwf5
Advisory Summary

CVE-2026-40939 is a MODERATE data sharing framework is missing vulnerability (CWE-613: Insufficient Session Expiration) affecting Dsf common jetty libraries in the Maven ecosystem. The issue involves data sharing framework is missing session timeout for oidc sessions. Remediation is available in the latest vendor maintenance releases.

1 Known Advisory Record(s)
Package Vulnerability Intelligence

pkg:maven/dev.dsf/dsf-common-jetty

1 Known Advisory Record(s)

Vulnerability advisories affecting package pkg:maven/dev.dsf/dsf-common-jetty. Select an advisory below to view technical details or fixes.

Advisory ID CVE / NVD Severity Summary
GHSA-gj7p-595x-qwf5 CVE-2026-40939 MODERATE Data Sharing Framework is Missing Session Timeout for OIDC Sessions

CVE-2026-40939 at a Glance

CVE Identifier CVE-2026-40939
GHSA Identifier GHSA-gj7p-595x-qwf5
Severity MODERATE
CVSS v3.1 Base Score N/A
CWE Classification CWE-613: Insufficient Session Expiration
Affected Product Dsf common jetty
Package Ecosystem Maven
Published Date
Last Updated

How to Fix CVE-2026-40939

To remediate this vulnerability, upgrade all affected Dsf common jetty dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

dev.dsf:dsf-common-jetty fixed: Latest secure release
<dependency>
    <groupId>dev.dsf</groupId>
    <artifactId>dsf-common-jetty</artifactId>
    <version>Latest secure release</version>
</dependency>
dev.dsf:dsf-fhir-server fixed: Latest secure release
<dependency>
    <groupId>dev.dsf</groupId>
    <artifactId>dsf-fhir-server</artifactId>
    <version>Latest secure release</version>
</dependency>
dev.dsf:dsf-bpe-server fixed: Latest secure release
<dependency>
    <groupId>dev.dsf</groupId>
    <artifactId>dsf-bpe-server</artifactId>
    <version>Latest secure release</version>
</dependency>
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

mvn dependency:tree -Dincludes=dev.dsf

How to Check if You Are Affected

To determine whether your Java application is affected by CVE-2026-40939, inspect your build dependencies using the Maven Dependency Plugin:

mvn dependency:tree -Dincludes=dev.dsf

Analyze the terminal output to locate any version of Dsf common jetty in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than the patched release), your application is affected.

Note: The mvn dependency:tree -Dincludes=dev.dsf command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-613: Insufficient Session Expiration, where according to wasc, "insufficient session expiration is when a web site permits an attacker to reuse old session credentials or session ids for authorization.". In Dsf common jetty, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Affected Components DSF FHIR Server with enabled [OIDC authentication](https://dsf.dev/operations/v2.1.0/fhir/oidc.html). DSF BPE Server with enabled [OIDC authentication](https://dsf.dev/operations/v2.1.0/bpe/oidc.html). ### Summary OIDC-authenticated sessions had no configured maximum inactivity timeout. Sessions persisted indefinitely after login, even after the OIDC access token expired. ### Impact If a user logs in via OIDC and leaves their browser without explicitly logging out, the session remains valid indefinitely. Another person using the same browser can access the DSF UI with the previous user's permissions. This is a realistic threat in hospital environments with shared workstations. Only affects OIDC browser sessions, not relevant for mTLS machine-to-machine communication. ### Fix (commits f4ecb00, 7d25fea) - Added configurable session timeout via `dev.dsf.server.auth.oidc.session.timeout` (default: `PT30M`). - Enabled `logoutWhenIdTokenIsExpired(true)` in OpenID configuration to tie session lifetime to token lifetime. - Websocket sessions are now closed with `VIOLATED_POLICY` when credentials expire, prevents stale websocket connections from continuing to receive events after session timeout.

CVE-2026-40939 Affected Dsf common jetty Versions

3 component(s)
Product / Package Ecosystem Affected Versions Fixed Version
dev.dsf:dsf-common-jetty
Maven
dev.dsf:dsf-fhir-server
Maven
dev.dsf:dsf-bpe-server
Maven

References

Frequently Asked Questions

What is CVE-2026-40939?
CVE-2026-40939 is a security vulnerability in Dsf common jetty involving Data Sharing Framework is Missing Session Timeout for OIDC Sessions under CWE-613: Insufficient Session Expiration.
Which Dsf common jetty versions are affected?
Affected versions include releases prior to current release patches across affected packages: dev.dsf:dsf-common-jetty, dev.dsf:dsf-fhir-server, dev.dsf:dsf-bpe-server.
What version fixes CVE-2026-40939?
Upgrading to current release patches (or the latest patched release for your respective branch) resolves the vulnerability.
Is dsf-common-jetty affected?
Yes, dev.dsf:dsf-common-jetty is affected in releases prior to Latest secure release. Upgrade your dependency to Latest secure release or later.
Is dsf-fhir-server affected?
Yes, dev.dsf:dsf-fhir-server is affected in releases prior to Latest secure release. Upgrade your dependency to Latest secure release or later.
What CWE is associated with CVE-2026-40939?
CVE-2026-40939 is classified under CWE-613: Insufficient Session Expiration (According to WASC, "Insufficient Session Expiration is when a web site permits an attacker to reuse old session credentials or session IDs for authorization.").
How can I check Maven dependencies for CVE-2026-40939?
Run the dependency tree command: 'mvn dependency:tree -Dincludes=dev.dsf'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-gj7p-595x-qwf5",
  "modified" : "2026-04-24T21:11:02Z",
  "published" : "2026-04-15T19:19:43Z",
  "aliases" : [ "CVE-2026-40939" ],
  "summary" : "Data Sharing Framework is Missing Session Timeout for OIDC Sessions",
  "details" : "### Affected Components\nDSF FHIR Server with enabled [OIDC authentication](https://dsf.dev/operations/v2.1.0/fhir/oidc.html).\nDSF BPE Server with enabled [OIDC authentication](https://dsf.dev/operations/v2.1.0/bpe/oidc.html).\n\n### Summary\nOIDC-authenticated sessions had no configured maximum inactivity timeout. Sessions persisted indefinitely after login, even after the OIDC access token expired.\n\n### Impact\nIf a user logs in via OIDC and leaves their browser without explicitly logging out, the session remains valid indefinitely. Another person using the same browser can access the DSF UI with the previous user's permissions. This is a realistic threat in hospital environments with shared workstations.\n\nOnly affects OIDC browser sessions, not relevant for mTLS machine-to-machine communication.\n\n### Fix (commits f4ecb00, 7d25fea)\n- Added configurable session timeout via `dev.dsf.server.auth.oidc.session.timeout` (default: `PT30M`).\n- Enabled `logoutWhenIdTokenIsExpired(true)` in OpenID configuration to tie session lifetime to token lifetime.\n- Websocket sessions are now closed with `VIOLATED_POLICY` when credentials expire, prevents stale websocket connections from continuing to receive events after session timeout.",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:P/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "dev.dsf:dsf-common-jetty"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "< 2.1.0"
    }
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "dev.dsf:dsf-fhir-server"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "< 2.1.0"
    }
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "dev.dsf:dsf-bpe-server"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "< 2.1.0"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/datasharingframework/dsf/security/advisories/GHSA-gj7p-595x-qwf5"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-40939"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/datasharingframework/dsf/commit/7d25feafb83d66cb59985ac88568b67d937b1937"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/datasharingframework/dsf/commit/f4ecb002f7d12642f92da6b79371ed367d0140e7"
  }, {
    "type" : "WEB",
    "url" : "https://dsf.dev/operations/v2.1.0/bpe/oidc.html"
  }, {
    "type" : "WEB",
    "url" : "https://dsf.dev/operations/v2.1.0/fhir/oidc.html"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/datasharingframework/dsf"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-613" ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-04-15T19:19:43Z",
    "nvd_published_at" : "2026-04-21T22:16:19Z"
  }
}