Pull to refresh
132
0
Send message

Вы используете ненадежный код

Reading time6 min
Views4K

В декабре прошлого года Log4Shell сократил ночи многих людей в мире JVM. Хуже того, используя аналогию с землетрясением, после первоначального землетрясения возникло множество афтершоков.

Я сразу установил связь между Log4Shell и Security Manager. Сначала я не хотел об этом писать. Но ко мне поступили просьбы, и я не мог обойти это стороной.

Насколько я помню команда Oracle отказалась от Security Manager в Java 17. Один из аргументов, на котором основывалось это решение, заключается в том, что он изначально был разработан для защиты апплетов. 

Апплеты загружались из Интернета, поэтому их нужно было считать ненадежным кодом. Следовательно, нам пришлось запускать их в песочнице.

Хотя они никогда этого не говорили, из этого утверждения следует неявное следствие: поскольку апплеты теперь устарели, мы запускаем только доверенный код. Следовательно, мы можем отказаться от диспетчера безопасности. 

Это просто неправильно, и я объясню почему в этом посте.

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

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments4

Дыра в безопасности, похожая на Log4Shell, обнаружена в популярном Java SQL движке базы данных H2

Reading time5 min
Views6.2K

«Это Log4Shell, Джим, но не в том виде, в каком мы его знаем» — так никогда не говорил Commander Spock.

Это краткий обзор ошибки CVE-2021-42392дыры в системе безопасности, о которой недавно сообщили исследователи из компании по управлению цепочками поставок программного обеспечения Jfrog.

На этот раз ошибка находится не в осажденном наборе инструментов Apache Log4j, а в популярном Java SQL сервере под названием H2 Database Engine.

H2 не похож на традиционную SQL систему, такую ​​как MySQL или Microsoft SQL server.

Хотя вы можете запускать H2 как отдельный сервер для подключения других приложений, он главным образом известен из-за его скромных размеров и автономном характере работы.

В результате вы можете встраивать код H2 SQL базы данных прямо в свои собственные Java-приложения и запускать свои базы данных полностью в памяти без необходимости в отдельных серверных процессах.

Как и в случае с Log4j, это означает, что в вашей организации могут быть неявно запущенные экземпляры кода H2 Database Engine, если вы используете какие-либо приложения или компоненты разработки, которые сами по себе незаметно включают его.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments5

Как проверить, зависит ли Java проект от уязвимой версии Log4j

Reading time4 min
Views17K

Если ваше приложение использует Log4j с версии 2.0-alpha1 до 2.14.1, вам следует как можно скорее выполнить обновление до последней версии (2.16.0 на момент написания этой статьи - 20 декабря).

Log4j уязвимость отслеживаться как CVE-2021-44228 (также известный как Log4Shell) позволяет злоумышленнику выполнить произвольный код в системе. 

В заметке описаны инструменты для проверки зависимости Java проекта от уязвимой версии Log4j.

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments8

Что такое Spring Framework? От внедрения зависимостей до Web MVC

Reading time41 min
Views472K


Вы можете использовать это руководство для различных целей:


  • Чтобы понять, что такое Spring Framework
  • Как работают ее основные фичи: такие как внедрение зависимостей или Web MVC
  • Это также исчерпывающий FAQ (Перечень часто задаваемых вопросов)

Примечание: Статья ~ 9000 слов, вероятно, не стоит читать ее на мобильном устройстве. Добавьте ее в закладки и вернитесь позже. И даже на компьютере ешь читай этого слона по одному кусочку за раз :-)


Содержание


  • Введение
  • Основы внедрения зависимостей
  • Контейнер Spring IOC / Dependency Injection
  • Spring AOP (Аспектно-ориентированное программирование) и прокси
  • Управление ресурсами Spring
  • Spring Web MVC
  • Дополнительные модули Spring Framework
  • Spring Framework: часто задаваемые вопросы
  • Заключение
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments14

Рекомендации по REST API — примеры проектирования веб-сервисов на Java и Spring

Reading time11 min
Views99K
Это последняя статья из серии статей про REST API:


В этой статье вы познакомитесь с рекомендациями по REST API и с примерами разработки из Java и Spring Web Services.

При разработке хорошего REST API важно иметь хорошие микросервисы.
Как вы разрабатываете свой REST API? Каковы лучшие практики?


Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments1

Различия REST и SOAP

Reading time3 min
Views710K
Эта вторая статья в серии постов о разработке REST API:


В этой статье рассматриваются некоторые аспекты основных различий между REST и SOAP.

Упс… на самом деле, сравнивать их немного похоже на сравнение яблок с апельсинами, поскольку SOAP — это формат протокола, основанный на XML, тогда как REST — это архитектурный подход.


Читать дальше →
Total votes 6: ↑4 and ↓2+2
Comments7

Information

Rating
Does not participate
Registered
Activity