Přehled
Toto oznámení se týká několika známých bezpečnostních zranitelností zjištěných v závislosti třetí strany používané v rámci DPGW: vestavěném webovém serveru Eclipse Jetty.
Podrobnosti o zranitelnosti
- CVE ID: CVE-2026-10050, CVE-2026-10051, CVE-2026-6790, CVE-2026-8384
- Název závislosti: org.eclipse.jetty (jetty-server, jetty-ee10-servlet/servlets, jetty-rewrite, jetty-ee10-proxy, jetty-http2-server, jetty-alpn-*, jetty-client — vše se řeší prostřednictvím vlastnosti jetty.version)
- Ovlivněná verze závislosti:
- CVE-2026-10050, CVE-2026-10051: Jetty 12.0.0–12.0.35 a 12.1.0–12.1.9 (opraveno ve verzi 12.0.36 / 12.1.10)
- CVE-2026-6790, CVE-2026-8384: Jetty 12.0.0–12.0.34 a 12.1.0–12.1.8 (opraveno ve verzi 12.0.35 / 12.1.9)
- DPGW 1.13 obsahuje Jetty 12.1.8, což spadá do všech čtyř dotčených rozsahů.
- Skóre závažnosti (základní):
- CVE-2026-10050 — 8.7 High (
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:N/SA:Ndigest-auth bypass; GHSA-2fvj-hgj9-j2gr) - CVE-2026-10051 — 4.0 Low (
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N; GHSA-f4v5-65jj-pcr2) - CVE-2026-6790 — Low (
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N; GHSA-7p3p-8qv8-m2vh) - CVE-2026-8384 — 5.3 Medium (
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N; GHSA-w7x5-g22v-xqhr)
- CVE-2026-10050 — 8.7 High (
Dotčené verze DPGW
- 1.13 — všechna vydání (<= 1.13.29-REL), která obsahují Jetty 12.1.8
Větev 1.14 není touto situací dotčena: již obsahuje Jetty 12.1.10 (od verze 1.14.08-REL; hlava větve HEAD je na verzi 12.1.11), což je verze, která splňuje nebo překračuje požadavky na opravu všech čtyř CVE. Verze DPGW z řady Jetty 12.0.x jsou sledovány samostatně.
Posouzení rizik a použitelnosti
Použití
DPGW využívá Eclipse Jetty jako svůj HTTP/HTTPS server (WebServerImpl). Běžné konektory obsluhují protokol HTTP/1.1; HTTPS konektory navíc vyjednávají protokol HTTP/2 prostřednictvím ALPN. DPGW používá jetty-server, servletový stack EE10, jetty-rewrite a jetty-ee10-proxy (tři transparentní proxy servlety). Odchozí HTTP požadavky iniciované samotným DPGW využívají Apache HttpClient 5, nikoli HTTP klienta Jetty. Rozhodnutí o řízení přístupu se provádějí v AuthFilteru na základě cesty požadavku (getRequestURI()/getServletPath().startsWith(…)).
Analýza
CVE-2026-10050 — Obcházení ověřování metodou Digest v HTTP klientovi Jetty (základní skóre 8,7, úroveň rizika „High“)
Chyba se nachází v klientské implementaci ověřování metodou Digest v Jetty, která počítá hashové hodnoty Digest pomocí kódování ISO-8859-1, což umožňuje kolize znaků v heslech. Nevztahuje se na DPGW. DPGW nepoužívá HTTP klienta Jetty pro žádné záměrné odchozí požadavky (používá Apache HttpClient 5) a nikdy nekonfiguruje ověřování typu Digest/Basic ani AuthenticationStore. K klientovi Jetty se dostanete pouze tranzitivně přes transparentní proxy servlety, které nekonfigurují žádné ověřování, takže k zranitelné části kódu nikdy nedojde.
CVE-2026-10051 — Únik dat z koncových polí HTTP/1.1 mezi požadavky (základní úroveň 4.0 – Low)
Koncová pole prvního požadavku jsou uchovávána a dochází k jejich úniku do následujících požadavků na stejném trvalém připojení. Nevztahuje se na DPGW. DPGW nikdy nečte ani nezapisuje koncová pole HTTP (funkce getTrailerFields a Trailer se nepoužívají), takže uniklá koncová pole nejsou nikdy zpracována.
CVE-2026-6790 — Nesoulad mezi oprávněním požadavku a hlavičkou Host (základní úroveň: Low)
Jetty striktně nevynucuje shodu oprávnění požadavku s hlavičkou Host, což umožňuje okrajové případy přesměrování, virtuálních hostitelů a reverzních proxy. V standardním nasazení DPGW se tato chyba nevyskytuje. DPGW neinstaluje modul ForwardedRequestCustomizer a neprovádí rozhodnutí o řízení přístupu ani směrování na základě autority v záhlaví Host; název serveru se používá pouze k sestavení URL adres pro přesměrování nebo zpětné volání. DPGW běží samostatně (vlastní ukončení TLS), nikoli jako backend reverzního proxy pro virtuální hostitele, který by se na tomto chování spoléhal.
CVE-2026-8384 — nevyřešené procházení cestou v URI požadavku (základní úroveň 5.3, Medium)
Jetty vrací nevyřešenou cestu požadavku (např. /public/../admin/x namísto normalizované /admin/x) pro URI obsahující sekvence procházení/parametrů. Vlastní kontrola aliasů v Jetty stále blokuje přímé procházení souborů, ale následné aplikace, které činí bezpečnostní rozhodnutí na základě nezpracované cesty, mohou být uvedeny v omyl. Toto je relevantní problém pro DPGW: AuthFilter řídí přístup pomocí kontrol předpon cest (startsWith(„/private/“), „/dw/“, „/replica/“, „/capture/“). Speciálně vytvořená, nevyřešená URI by mohla způsobit, že by tyto kontroly předpon byly vyhodnoceny na základě nekanonické cesty, což by mohlo vést k nesprávnému rozhodnutí o autorizaci nebo směrování.
Stav
Ovlivněno
Skóre závažnosti v kontextu DPGW: 5.3 Medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Závažnost v kontextu DPGW se řídí číslem CVE-2026-8384, což je jediné CVE, u něhož zranitelná kódová cesta DPGW smysluplně funguje. CVE-2026-10050 (základní hodnocení 8,7 – High), CVE-2026-10051 a CVE-2026-6790 se na použití DPGW nevztahují a nepřispívají k efektivní závažnosti.
Dopad na DPGW
Vzdálený, neautentizovaný útočník by mohl vytvořit URI požadavku obsahující sekvence pro procházení cestou/parametry, které Jetty předá aplikaci v nevyhodnocené podobě. Jelikož AuthFilter autorizuje požadavky na základě shody předpon cest, mohla by nekanonická cesta vést k nesprávnému rozhodnutí o řízení přístupu (dopad na integritu, nízký). Přímé procházení souborového systému zůstává blokováno kontrolou aliasů v Jetty a ostatní tři CVE nelze v konfiguraci DPGW zneužít.
Náprava a zmírnění dopadů
Oprava
Aktualizujte integrovaný Jetty na opravenou verzi – 12.1.10 nebo novější z řady 12.1.x (verze 12.1.9 opravuje chyby CVE-2026-6790/CVE-2026-8384; verze 12.1.10 navíc opravuje chyby CVE-2026-10050/CVE-2026-10051). Větev 1.14 již tuto verzi obsahuje (Jetty 12.1.10 ve verzi 1.14.08-REL; 12.1.11 ve větvi HEAD).
Plánovaná oprava
– 1.13 — 1.13.30-REL (23. 7. 2026) – aktualizace verze jetty z 12.1.8 na 12.1.11
Akce uživatele
- Jakmile bude k dispozici, proveďte aktualizaci na verzi DPGW 1.13.x, která obsahuje Jetty 12.1.10 nebo novější.
- Dočasné řešení: umístěte před DPGW reverzní proxy, která normalizuje/odmítá URI požadavků obsahující ../; sekvence pro procházení parametrů cesty, a omezte síťovou expozici webové vrstvy pouze na důvěryhodné klienty.