← Back to CVE Explorer

CVE-2026-50577

Full vulnerability record from the local CVENow database.

Description

ePA 3.x Integration implements the authorization workflow and writes Medical Information Objects to Germany's electronic patient record. Prior to 1.3.0, ePA 3.x Integration leaves request_counter unchanged in app/vau/VAUProtokoll.py while constructing VAU messages. The frozen client request counter causes the server side to reuse AES-GCM nonce and key combinations across responses. A network attacker who collects repeated ciphertexts can recover the XOR of plaintexts and use predictable inner HTTP headers and JSON fields to recover sensitive data, including patient health records. Repeated nonces can also enable recovery of the GHASH authentication key through the Joux forbidden attack, allowing forged AES-GCM messages and injection of malicious responses. The response-counter check also fails to maintain last_response_counter, weakening replay and ordering validation. This issue is fixed in version 1.3.0.

Severity
HIGH
CVSS score
7.4 (v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-08-18 17:16:58.790000
Last modified
2026-10-22 22:10:00.250000
View original CVE JSON
{
  "id": "CVE-2026-50577",
  "sourceIdentifier": "[email protected]",
  "published": "2026-08-18T17:16:58.790",
  "lastModified": "2026-10-22T22:10:00.250",
  "vulnStatus": "Deferred",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "ePA 3.x Integration implements the authorization workflow and writes Medical Information Objects to Germany's electronic patient record. Prior to 1.3.0, ePA 3.x Integration leaves request_counter unchanged in app/vau/VAUProtokoll.py while constructing VAU messages. The frozen client request counter causes the server side to reuse AES-GCM nonce and key combinations across responses. A network attacker who collects repeated ciphertexts can recover the XOR of plaintexts and use predictable inner HTTP headers and JSON fields to recover sensitive data, including patient health records. Repeated nonces can also enable recovery of the GHASH authentication key through the Joux forbidden attack, allowing forged AES-GCM messages and injection of malicious responses. The response-counter check also fails to maintain last_response_counter, weakening replay and ordering validation. This issue is fixed in version 1.3.0."
    },
    {
      "lang": "es",
      "value": "La Integración ePA 3.x implementa el flujo de trabajo de autorización y escribe Objetos de Información Médica en el registro electrónico de pacientes de Alemania. Antes de la versión 1.3.0, la Integración ePA 3.x deja request_counter sin cambios en app/vau/VAUProtokoll.py al construir mensajes VAU. El contador de solicitudes del cliente congelado hace que el lado del servidor reutilice combinaciones de nonce y clave AES-GCM en las respuestas. Un atacante de red que recopila textos cifrados repetidos puede recuperar el XOR de los textos planos y usar encabezados HTTP internos y campos JSON predecibles para recuperar datos sensibles, incluyendo registros de salud de pacientes. Los nonces repetidos también pueden permitir la recuperación de la clave de autenticación GHASH a través del ataque prohibido de Joux, permitiendo mensajes AES-GCM falsificados e inyección de respuestas maliciosas. La verificación del contador de respuestas también falla en mantener last_response_counter, debilitando la validación de repetición y orden. Este problema está solucionado en la versión 1.3.0."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "fbeta-GmbH",
          "product": "ePA3-Service-OpenSource",
          "versions": [
            {
              "version": "< 1.3.0",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N",
          "baseScore": 7.4,
          "baseSeverity": "HIGH",
          "attackVector": "NETWORK",
          "attackComplexity": "HIGH",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "NONE"
        },
        "exploitabilityScore": 2.2,
        "impactScore": 5.2
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-08-19T14:52:41.729661Z",
          "id": "CVE-2026-50577",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-323"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/fbeta-GmbH/ePA3-Service-OpenSource/commit/85c4c516088c38b9cf2343f388ad67a6744e9814",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/fbeta-GmbH/ePA3-Service-OpenSource/pull/10",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/fbeta-GmbH/ePA3-Service-OpenSource/releases/tag/1.3.0",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/fbeta-GmbH/ePA3-Service-OpenSource/security/advisories/GHSA-vmfm-3f7g-r9qg",
      "source": "[email protected]"
    },
    {
      "url": "https://www.machinespirits.de/advisory/df27cd",
      "source": "[email protected]"
    }
  ]
}