Spring Framework

Продукт
Дата премьеры системы: 2002/10/01
Дата последнего релиза: 2022/04/01
Технологии: Средства разработки приложений

Содержание

The Spring Framework (или коротко Spring) — open source фреймворк для Java-платформы и .NET Framework (форк под названием Spring.NET).

MVC

Spring имеет собственную MVC-платформу веб-приложений. Spring MVC предоставляет разработчику следующие возможности (на март 2022 года):

  • Ясное и прозрачное разделение между слоями в MVC и запросах.
  • Стратегия интерфейсов — каждый интерфейс делает только свою часть работы.
  • Интерфейс всегда может быть заменен альтернативной реализацией.
  • Интерфейсы тесно связаны с Servlet API.
  • Высокий уровень абстракции для веб-приложений.
  • В веб-приложениях можно использовать различные части Spring, а не только Spring MVC.

2022: Обнаружение уязвимости нулевого дня

Центр мониторинга и реагирования UserGate сообщил 31 марта 2022 года, о уязвимости нулевого дня в библиотеке Spring, работающей на JDK, которая может нанести урон огромному количеству приложений. На конец марта 2022 года CVE ID еще не присвоен. Рабочее название уязвимости - SpringShell.

Уязвимость существует в ядре Spring на JDK версии 9.0 и выше.

В JDK версии 9.0 и выше атакующий может получить доступ к AccessLogValve и передать вредоносные значения поля через параметр связующей функции фреймворка, что приводит к исполнению произвольного кода на целевой системе.Как зародилась масштабная коррупционная схема при внедрении ИТ в ПФР при участии «Техносерва» и «Редсис». Подробности 38.5 т

На конец марта 2022 года известно, что для эксплуатации уязвимости необходимо два условия: использование Spring MVC framework и JDK версии 9.0 и выше.

Компания UserGate советует:

  • обновить компонент Spring Cloud Function до версий 3.1.7 и 3.2.3 соответственно;
  • проверить актуальность подписки на модуль Security Updates. При использовании профиля сигнатур UserGate, все новые сигнатуры начинают работать автоматически.

По информации «Ростелеком-Солар» на 8 апреля 2022 года, критической уязвимости CVE-2022-22965 по CVSS была присвоена оценка опасности 9.8/10 баллов. Она была исправлена в версиях Spring Framework 5.3.18 и 5.2.20.

Уязвимость была выявлена в модуле Spring Core и позволяла привязывать данные в http-запросе к полям объектов приложения. Баг содержался в реализации метода getCachedIntrospectionResults, который может быть использован для несанкционированного доступа к этим объектам при передаче данных имен классов этих объектов через указанный HTTP-запрос.

Уязвимость присутствует в приложениях Spring MVC и Spring WebFlux, работающих под Java Development Kit (версии 9+), эксплуатация которых может привести к компрометации огромного количества серверов. Наиболее высокой угрозе подвержены корпоративные Java-приложения на базе Spring Framework с правами root, так как уязвимость в них позволяет скомпрометировать всю систему.

2010

Текущая версия Spring (на сентябрь 2010 года) - 3.0.3.

Несмотря на то, что Spring Framework не обеспечивал какую-либо конкретную модель программирования, он стал широко распространённым в Java-сообществе главным образом как альтернатива и замена модели Enterprise JavaBeans. Spring Framework предоставляет бо́льшую свободу Java-разработчикам в проектировании, кроме того, он предоставляет хорошо документированные и лёгкие в использовании средства решения проблем, возникающих при создании приложений промышленного масштаба.

Между тем, особенности ядра Spring Framework применимы в любом Java-приложении, и существует множество расширений и усовершенствований для построения веб-приложений на Java Enterprise платформе. По этим причинам Spring приобрёл большую популярность и признаётся разработчиками как стратегически важный фреймворк.

2004-2005: Стабильные релизы

Первый стабильный релиз 1.0 был выпущен в марте 2004. Последующие стабильные релизы вышли в сентябре 2004 года и марте 2005 года.

2003: Выпуск под лицензией Apache 2.0

Фреймворк был впервые выпущен под лицензией Apache 2.0 license в июне 2003 года.

2002: Первая версия

Первая версия была написана Родом Джонсоном, который впервые опубликовал её вместе с изданием своей книги «Expert One-on-One Java EE Design and Development» (Wrox Press, октябрь 2002 года).





Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Microsoft (41, 47)
  Солар (ранее Ростелеком-Солар) (2, 46)
  Oracle (49, 26)
  Hyperledger (Open Ledger Project) (1, 23)
  IBM (33, 18)
  Другие (553, 270)