🟢CVE-2026-54291

Přehled

Toto oznámení se týká známé bezpečnostní chyby zjištěné v závislosti třetí strany používané v rámci DPGW.

Podrobnosti o zranitelnosti

  • CVE ID: CVE-2026-54291
  • Název závislosti: org.postgresql:postgresql (PostgreSQL JDBC Driver, pgjdbc)
  • Ovlivněná verze závislosti: 42.7.4 – 42.7.11 (opraveno ve verzi 42.7.12)
  • Skóre závažnosti: NIST 5.9 Medium
    (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N); CNA (GitHub) 8.2 High (CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:L/SA:N)

Verze DPGW ovlivňující verze závislostí

  • <= 1.14.08-REL (obsahuje balíček pgjdbc 42.7.11)
  • <= 1.13.29-REL (obsahuje balíček pgjdbc 42.7.11)
  • <= 1.12.51-REL (obsahuje balíček pgjdbc 42.7.11)
    Větev 1.11 (v současné době 1.11.47-REL) obsahuje pgjdbc 42.7.3, jehož verze je starší než kód s bezpečnostní chybou a nespadá do rozsahu příslušných verzí.

Posouzení rizik a použitelnosti

Použití
DPGW používá jako klientský ovladač pro svou aplikační databázi ovladač PostgreSQL JDBC (pgjdbc). Připojení k databázi se konfiguruje v sekci souboru dpgw.xml pomocí parametru connection-url; výchozí a dokumentovaná hodnota je jdbc:postgresql://localhost/…. DPGW nenastavuje vlastnost připojení channelBinding a ani nezapíná TLS pro připojení k databázi (sslmode / ssl nejsou nakonfigurovány v žádné dodávané ani modelové konfiguraci).

Analýza
CVE-2026-54291 představuje nepozorovatelné snížení úrovně autentizace při vázání kanálu v knihovně pgjdbc. Pokud klient prostřednictvím připojení TLS požaduje nastavení channelBinding=require, klient SCRAM vrátí prázdná bajtová pole namísto toho, aby vyhodil chybu, když narazí na certifikát TLS podepsaný nepodporovaným podpisovým algoritmem. To umožňuje aktivnímu útočníkovi typu „man-in-the-middle“ na trase TCP/TLS mezi klientem JDBC a serverem PostgreSQL snížit úroveň zabezpečení z SCRAM-SHA-256-PLUS (s vázáním kanálu) na prostý SCRAM-SHA-256 (bez vázání kanálu), čímž obchází ochranu proti útokům typu MITM, kterou má vázání kanálu zaručit. K zneužití je nutné, aby se útočník nacházel na síťové trase mezi aplikací a její databází.

V konfiguraci nasazení, které se týká toto bezpečnostní upozornění – tedy v případě, kdy se databáze PostgreSQL nachází na stejném hostiteli jako DPGW a přijímá pouze připojení z localhostu – provoz mezi DPGW a databází nikdy neopouští tento hostitel. Neexistuje žádný síťový segment, který by útočník mohl obsadit, takže předpoklad zranitelnosti typu „man-in-the-middle“ nemůže být splněn. To odpovídá výchozí a zdokumentované konfiguraci DPGW (jdbc:postgresql://localhost/…). Navíc DPGW nepožaduje vazbu kanálu a pro připojení k databázi nepoužívá protokol TLS, takže k zranitelné směrovací cestě vůbec nedochází.

Stav
Neovlivněno

Dopad na DPGW

V případě nasazení, kdy je databáze PostgreSQL umístěna na stejném hostiteli jako DPGW a je přístupná pouze přes localhost, nedochází k žádnému dopadu. Jelikož mezi DPGW a databází neexistuje žádná síťová cesta, nelze splnit podmínku útoku typu „man-in-the-middle“ související s CVE-2026-54291.

Poznámka: V případě nasazení, kde je DPGW připojen k instanci PostgreSQL přes síť (například k databázi na samostatném hostiteli, jak se používá v některých konfiguracích s více lokalitami nebo replikačními sadami) a která pro ochranu proti útokům typu „man-in-the-middle“ (MITM) využívají nastavení channelBinding=require, je třeba tento ovladač považovat za zranitelný a provést níže uvedenou opravu. Standardní nasazení DPGW tuto konfiguraci nepoužívají.

Náprava a zmírnění dopadů

Oprava
Ovladač byl aktualizován na opravenou verzi ve vývojové větvi:
– hlavní větev (příští řada verzí) — pgjdbc aktualizováno na verzi 42.7.13 (změna „chore“(Security): aktualizace PostgreSQL z důvodu CVE-2026-54291)
Jelikož DPGW není ve standardní konfiguraci databáze localhost ovlivněno, bude aktualizace pgjdbc na verzi 42.7.12+ začleněna do udržovaných větví 1.12 / 1.13 / 1.14 v rámci rutinní údržby závislostí, nikoli jako nouzové vydání. Větev 1.11 není na úrovni závislostí (pgjdbc 42.7.3) ovlivněna a nevyžaduje žádné změny.

Akce uživatele
U standardní konfigurace (databáze na stejném hostiteli, připojení pouze přes localhost) není nutný žádný zásah ze strany uživatele.

Provozovatelé mohou ověřit, zda používají konfiguraci, která není touto chybou dotčena, tak, že zkontrolují, zda adresa connection-url v sekci souboru dpgw.xml odkazuje na localhost (nebo 127.0.0.1) a zda je PostgreSQL nakonfigurován tak, aby přijímal pouze lokální připojení. Správci, kteří provozují DPGW se vzdálenou databází PostgreSQL přes nedůvěryhodnou síť, by měli provést upgrade na verzi DPGW obsahující pgjdbc 42.7.12 nebo novější.