Objevili zranitelnost v Spring Framework

Nedávno to zprávy prolomily byla zjištěna kritická zranitelnost typu zero day v modulu Spring Core je dodáván jako součást Spring Framework, která umožňuje vzdálenému neověřenému útočníkovi spustit jejich kód na serveru.

Podle některých odhadů modul Spring Core používá se v 74 % aplikací Java. Nebezpečí zranitelnosti snižuje skutečnost, že pouze aplikace, které použijte anotaci "@RequestMapping".Zapojením obslužných rutin požadavků a použitím vazby parametrů webového formuláře ve formátu „název=hodnota“ (POJO, Plain Old Java Object) namísto JSON/XML jsou náchylné k útoku. Zatím není jasné, kterých Java aplikací a frameworků se problém týká.

Tato chyba zabezpečení nazvaná „Spring4Shell“ využívá injekce třídy vedoucí k úplnému RCE a je velmi závažná. Název „Spring4Shell“ byl vybrán, protože Spring Core je všudypřítomná knihovna, podobná log4j, která zplodila nechvalně známou zranitelnost Log4Shell.

Jsme přesvědčeni, že uživatelé používající JDK verze 9 a novější jsou zranitelní vůči útoku RCE. Všechny verze Spring Core jsou ovlivněny.

Existují strategie ke zmírnění útoku a věříme, že ne všechny servery Spring jsou nutně zranitelné, v závislosti na dalších faktorech probraných níže. To znamená, že v současné době doporučujeme, aby všichni uživatelé použili zmírnění nebo upgradovali, pokud používají Spring Core.

Zneužití této chyby zabezpečení je možné pouze při použití Java/JDK 9 nebo novější verzi. Tato chyba zabezpečení blokuje zařazení polí „class“, „module“ a „classLoader“ na černou listinu nebo použití explicitní bílé listiny povolených polí.

Problém je způsobeno schopností obejít ochranu proti zranitelnosti CVE-2010-1622, Opraveno v Spring Frameworku v roce 2010 a spojené se spouštěním obslužné rutiny classLoader při analýze parametrů požadavku.

Operace exploitu je omezena na odeslání požadavku cs parametry "class.module.classLoader.resources.context.parent.pipeline.first.*", jejichž zpracování při použití "WebappClassLoaderBase" vede k volání třídy AccessLogValve.

Zadaná třída vám umožňuje nakonfigurovat logger tak, aby vytvořil libovolný soubor jsp v kořenovém prostředí Apache Tomcat a zapsal do tohoto souboru kód určený útočníkem. Vytvořený soubor je k dispozici pro přímé požadavky a lze jej použít jako webový shell. K útoku na zranitelnou aplikaci v prostředí Apache Tomcat stačí odeslat požadavek s určitými parametry pomocí utility curl.

Zvažovaný problém ve Spring Core nezaměňovat s nově identifikovanými zranitelnostmi CVE-2022-22963 a CVE-2022-22950. První problém se týká balíčku Spring Cloud a také umožňuje vzdálené spuštění kódu (exploit). CVE-2022-22963 je opraveno ve vydáních Spring Cloud 3.1.7 a 3.2.3.

Druhý problém CVE-2022-22950 je přítomen ve Spring Expression, lze jej použít ke spuštění DoS útoků a je opraven v Spring Framework 5.3.17. To jsou zásadně odlišné zranitelnosti. Vývojáři Spring Framework zatím neučinili žádné prohlášení o nové zranitelnosti a nevydali opravu.

Jako dočasné ochranné opatření se doporučuje používat v kódu černou listinu neplatných parametrů dotazu.

Stále není jasné, jak katastrofální mohou být následky identifikovaného problému a zda budou útoky tak masivní jako v případě zranitelnosti v Log4j 2. Zranitelnost dostala kódové označení Spring4Shell, CVE-2022-22965 a byly vydány aktualizace Spring Framework 5.3.18 a 5.2.20 řešit zranitelnost.

Oprava je nyní k dispozici od 31. března 2022 v nejnovějších jarních verzích 5.3.18 a 5.2.20. Všem uživatelům doporučujeme provést upgrade. Pro ty, kteří nemohou upgradovat, jsou možná následující zmírnění:

Na základě příspěvku Praetoriana potvrzujícího přítomnost RCE v Spring Core je aktuálně doporučeným přístupem záplata DataBinder přidáním černé listiny vzorů zranitelných polí potřebných pro využití.

Nakonec ano máte zájem se o tom dozvědět více o poznámce můžete zkontrolovat podrobnosti Na následujícím odkazu.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.