​​Встречайте,Spring4Shell. Правда, если сравнивать обнаруженнуюRCEв Java Spring FrameworkсLog4Shell, эффект которой можно назвать бомбой, то новая0-Dayскорее всего на этом фоне будет выглядеть как связка петард.Уязвимость удаленного выполнения кода былаобнаруженав среде Spring вскоре после того, как некий китайский исследователь, которыйвыпустилнаGitHubсоответствующийPoC, который вскоре после этого удалил вместе со своими аккаунтами.Spring- достаточно популярная платформа для создания приложений на основеJava EE (Enterprise Edition), которая позволяет быстро и легко их разрабатывать, а затем и  разворачивать на серверах, в том числеApache Tomcat, в виде автономных пакетов со всеми необходимыми зависимостями.ПоданнымPraetorian, непропатченная уязвимость затрагиваетSpring CoreвJava Development Kit (JDK)версии 9 и более поздних и является обходом другой уязвимости, отслеживаемой как CVE-2010-1622, что позволяет злоумышленнику, не прошедшему проверку подлинности, выполнять произвольный код в целевой системе.Дополнительные сведения о новой уязвимости не разглашаются, специалисты по поддержке фреймворкаSpring.io, дочерняя компанияVMware, вовсю работают над исправлением.Новая бага отличается от двух предыдущих уязвимостей, раскрытых в структуре приложения на этой неделе, включаяDoS-уязвимость выраженийSpring Framework(CVE-2022-22950) и уязвимость доступа к ресурсам выраженийSpring Cloud(CVE-2022-22963).Spring RCEвызвана небезопасной десериализацией переданных аргументов.Praetorianтакже подтвердила, что ошибка зависит от определенных конфигураций для правильного использования. Для эксплуатации требуется конечная точка с включеннымDataBinder(например, запросPOST, который автоматически декодирует данные из тела запроса) и сильно зависит от контейнера сервлетов для приложения.Например, когдаSpringразвернут наApache Tomcat, доступенWebAppClassLoader, что позволяет злоумышленнику вызывать геттеры и сеттеры, чтобы в конечном итоге записать вредоносныйJSP-файл на диск. Однако, еслиSpringразвернут с использованием встроенного контейнера сервлетовTomcat, загрузчик классов — этоLaunchedURLClassLoader, доступ к которому ограничен.В некоторых конфигурациях эксплуатация этой проблемы проста, поскольку для этого требуется, чтобы злоумышленник отправил созданный запросPOSTв уязвимую систему.ПомнениюспециалистовFlashpoint, первоначальный анализ новой уязвимости выполнения кода вSpring Coreпредполагает, что ее влияние может быть несерьезным. Для эксплуатации уязвимости злоумышленникам необходимо будет найти и идентифицировать экземпляры веб-приложений, которые на самом деле используютDeserializationUtils.Кроме того, несмотря на общедоступность эксплойтов,Rapid7утверждают, что в настоящее время неясно, какие реальные приложения используют уязвимую функциональность.ISACзаявили, что еще не завершили свои тесты и не могут однозначно подтвердить действительностьPoCдля ошибкиRCE.Вместе с тем, согласно заключению аналитикаУилла ДорманнаизCERT/CC, эксплойтSpring4Shellв дикой природе все же функционирует и существуют реальные уязвимые приложения. Вообще, по данным источниковBleepingComputer, уязвимость активно используется в атаках.Поскольку для этой уязвимости в настоящее время нет исправления, настоятельно рекомендуется как можно скорее реализовать меры по смягчению атак, связанных с ограничениями функционалаSpring Core DataBinder.