CVE-2026-50578
HighCVSS 7.5Exploitation Probability (EPSS)
Low risk8th percentile - higher than 8% of all known CVEs
Summary
ePA 3.x Integration before version 1.3.0 disables TLS certificate verification for both ePA connections in app/vau/VAUProtokoll.py and Konnektor connections in app/konnektor/Konnektor.py. A network-positioned attacker can present an arbitrary certificate, terminate the TLS connection, and intercept ePA traffic. The VAU protocol does not provide an effective fallback because its application-layer certificate validation is also broken. The Konnektor session uses self.session.verify set to False, so an attacker impersonating the Konnektor can receive the client's mutual TLS certificate exchange and observe smartcard operations.
Risk Assessment
Interception of ePA traffic can lead to exposure of sensitive patient health data, compromising confidentiality and privacy.
Recommendation
Upgrade ePA 3.x Integration to version 1.3.0 or later. Ensure TLS certificate verification is enabled.
Other vulnerabilities in ePA 3.x Integration
See all- CVE-2026-52723Critical
ePA 3.x Integration before version 1.3.0 contains a vulnerability in VAU server certificate validation. A network-positioned attacker can intercept the VAU handshake and impersonate the server, controlling session keys and reading or modifying encrypted traffic.
- CVE-2026-50577High
ePA 3.x Integration before version 1.3.0 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, allowing forged AES-GCM messages and injection of malicious responses.
- CVE-2026-50576Medium
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 does not neutralize CRLF characters in values used by app/vau/VAUProtokoll.py to construct VAU inner HTTP requests. The build_inner_header function interpolates the uri, host, accept_type, content_type, content_length, USER_AGENT, and insurant_id values into request lines and headers, including x-useragent and x-insurantid. An authenticated attacker who controls a value can inject additional headers into the inner request. Depending on ePA server handling, an injected x-insurantid header can expose another patient's records, and injected Authorization headers can bypass the intended authentication or authorization context. Session-derived USER_AGENT input can also poison requests across the session. This issue is fixed in version 1.3.0.
Original NVD description (English source)
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 disables TLS certificate verification for both ePA connections in app/vau/VAUProtokoll.py and Konnektor connections in app/konnektor/Konnektor.py. A network-positioned attacker can present an arbitrary certificate, terminate the TLS connection, and intercept ePA traffic. The VAU protocol does not provide an effective fallback because its application-layer certificate validation is also broken in affected versions. The Konnektor session uses self.session.verify set to False while the client authenticates with self.session.cert, so an attacker impersonating the Konnektor can receive the client's mutual TLS certificate exchange and observe smartcard operations. This issue is fixed in version 1.3.0.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

