Spring Web Services w wersjach 2.4.3, 3.0.4 i starszych jest podatny na atak XML External Entity Injection (XXE) podczas przetwarzania danych XML pochodzących z niezaufanych źródeł. Podatność otrzymała ocenę CVSS 9.8 (krytyczna), co oznacza możliwość pełnego naruszenia poufności, integralności i dostępności systemu bez jakiegokolwiek uwierzytelnienia.
▸ Pokaż oryginał (EN)
Spring Web Services, versions 2.4.3, 3.0.4, and older unsupported versions of all three projects, were susceptible to XML External Entity Injection (XXE) when receiving XML data from untrusted sources.
Atakujący wysyła do aplikacji opartej na Spring Web Services specjalnie spreparowany dokument XML zawierający odwołania do zewnętrznych encji (External Entity). Parser XML, o ile nie jest odpowiednio zabezpieczony, przetwarza te odwołania i może odczytywać lokalne pliki systemowe, wysyłać zapytania do wewnętrznych zasobów sieciowych (SSRF) lub ujawniać inne wrażliwe dane. Atak nie wymaga uwierzytelnienia ani interakcji użytkownika, a wektor sieciowy (AV:N) sprawia, że jest możliwy do przeprowadzenia zdalnie przez dowolnego użytkownika mogącego przesłać dane XML do aplikacji.
Atakujący może uzyskać nieautoryzowany dostęp do poufnych danych (np. plików konfiguracyjnych, haseł), przeprowadzić atak SSRF na wewnętrzną infrastrukturę, a w określonych warunkach doprowadzić do odmowy działania usługi lub wykonania dalszych działań kompromitujących system.
Należy zaktualizować Spring Web Services do wersji wyższych niż 2.4.3 lub 3.0.4 zgodnie z zaleceniami Pivotal (https://pivotal.io/security/cve-2019-3773). Użytkownicy produktów Oracle powinni zastosować patche wskazane w biuletynach bezpieczeństwa Oracle CPU (styczeń 2021, kwiecień 2021, lipiec 2021). Jako środek doraźny należy wyłączyć obsługę zewnętrznych encji XML (External Entity Processing) w parserze XML używanym przez aplikację.
Pivotal Software Spring Web Services w wersjach 2.4.3, 3.0.4 oraz wszystkich starszych, niewspieranych wersjach. Podatność dotyczy również produktów Oracle: Financial Services Analytical Applications Infrastructure, Flexcube Private Banking — w wersjach wskazanych w referencjach producenta Oracle.
Podatność została opublikowana 18 stycznia 2019 roku. Dotyczy wszystkich trzech gałęzi projektu Spring Web Services wymienionych w opisie (w tym nieobsługiwanych już wersji), co zwiększa zasięg zagrożenia w środowiskach korzystających z niezaktualizowanego oprogramowania.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HOracle Financial Services Analytical Applications Infrastructure
APPOracle8.0.6 – 8.1.0Oracle Flexcube Private Banking
APPOracle12.0.012.1.0Pivotal Software Spring Web Services
APPPivotal Software≤ 2.4.33.0.0 – 3.0.4
Powiązane podatności
Spring4Shell — RCE przez data binding w Spring MVC/WebFlux na JDK 9+
RCE w Spring Cloud Function poprzez złośliwy SpEL routing-expression
Pominięcie uwierzytelnienia w Oracle Financial Services Analytical Applications Infrastructure
Apache Maven: podążanie za niezaufanymi repozytoriami HTTP (MitM)
Apache ActiveMQ — RCE przez błędną konfigurację JMX RMIConnectorServer