Перейти к основному содержимому

108 записей с тегом "Безопасность"

Посмотреть все теги

· 11 мин. чтения

1. Введение

Несмотря на то, что SQL Injection является одной из самых известных уязвимостей, он по- прежнему занимает первое место в печально известном списке OWASP Top 10 — теперь это часть более общего класса Injection .

В этом руководстве мы рассмотрим распространенные ошибки кодирования в Java, которые приводят к уязвимости приложения, и способы их предотвращения с помощью API, доступных в стандартной библиотеке времени выполнения JVM. Мы также расскажем, какую защиту мы можем получить с помощью ORM, таких как JPA, Hibernate и других, и о каких слепых зонах нам все еще придется беспокоиться.

2. Как приложения становятся уязвимыми для SQL-инъекций?

Атаки с внедрением работают, потому что для многих приложений единственный способ выполнить данное вычисление — это динамически сгенерировать код, который, в свою очередь, запускается другой системой или компонентом . Если в процессе генерации этого кода мы используем ненадежные данные без надлежащей очистки, мы оставляем открытой дверь для хакеров.

· 4 мин. чтения

1. Обзор

В этом руководстве мы собираемся создать приложение CLI для проверки соединений с любым сервером аутентификации LDAP . Мы не будем использовать LDAP для защиты нашего приложения , так как это можно сделать лучше, используя , например, Spring Security LDAP .

Наличие инструмента для быстрой проверки правильности соединений LDAP полезно еще до разработки приложений, которые их используют. Это также полезно при разработке какой-либо интеграции между приложениями, особенно на этапе установки. И мы сделаем это, используя основные классы Java. Так что никаких дополнительных зависимостей не требуется .

2. Java-клиент LDAP

Начнем с создания нашего единственного класса LdapConnectionTool . Начнем с основного метода. Для простоты вся наша логика будет здесь:

· 3 мин. чтения

1. Введение

В этом кратком руководстве мы увидим, как настроить пользовательский интерфейс Swagger для включения веб-токена JSON (JWT) при вызове нашего API.

2. Зависимости Maven

В этом примере мы будем использовать springfox-boot-starter , который включает в себя все необходимые зависимости для начала работы с Swagger и пользовательским интерфейсом Swagger. Давайте добавим его в наш файл pom.xml :

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

· 4 мин. чтения

1. Обзор

Веб -токен JSON (JWT) часто используется в безопасности REST API. Несмотря на то, что токен может быть проанализирован такими фреймворками, как Spring Security OAuth , мы можем захотеть обработать токен в нашем собственном коде.

В этом руководстве мы расшифруем и проверим целостность JWT .

2. Структура JWT

Во-первых, давайте разберемся со структурой JWT :

· 7 мин. чтения

1. Обзор

В этой статье мы узнаем об основах сервера Tomcat, о том, как он работает, и о том, как включить функцию единого входа ( SSO ) Tomcat. Мы рассмотрим сервер Tomcat и необходимые конфигурации веб-приложения.

2. Архитектура Томкэт

Основными частями, составляющими контейнер сервлетов Catalina, являются сервер, содержащий службы, которые будут определять коннекторы, и механизм, построенный из хостов, и, наконец, эти хосты будут содержать контексты или веб-приложения.

Соединители слушают запросы клиента и отправляют ответы. В Tomcat 10 мы можем найти коннекторы для следующих протоколов: HTTP/1.1 , HTTP/2 и AJP .

· 7 мин. чтения

1. Введение

В этом руководстве мы рассмотрим базовую настройку подключения клиента Spring Boot к брокеру Apache Kafka с использованием аутентификации SSL.

Secure Sockets Layer (SSL) фактически устарел и был заменен Transport Layer Security (TLS) с 2015 года. Однако по историческим причинам Kafka (и Java) по-прежнему ссылаются на «SSL», и мы будем следовать этому соглашению в этой статье. также.

2. Обзор SSL

По умолчанию Apache Kafka отправляет все данные в виде открытого текста и без какой-либо аутентификации.

· 4 мин. чтения

1. Введение

Apache HttpClient — это низкоуровневая облегченная клиентская HTTP-библиотека для связи с HTTP-серверами. В этом руководстве мы узнаем, как настроить поддерживаемые версии безопасности транспортного уровня (TLS) при использовании HttpClient . Мы начнем с обзора того, как работает согласование версии TLS между клиентом и сервером. После этого мы рассмотрим три различных способа настройки поддерживаемых версий TLS при использовании HttpClient .

2. Согласование версии TLS

TLS — это интернет-протокол, обеспечивающий безопасную и надежную связь между двумя сторонами. Он инкапсулирует протоколы прикладного уровня, такие как HTTP. Протокол TLS несколько раз пересматривался с момента его первой публикации в 1999 году. Поэтому важно, чтобы клиент и сервер сначала договорились о том, какую версию TLS они будут использовать при установлении нового соединения. Версия TLS согласовывается после обмена приветственными сообщениями между клиентом и сервером:

  1. Клиент отправляет список поддерживаемых версий TLS.
  2. Сервер выбирает один и включает выбранную версию в ответ.
  3. Клиент и сервер продолжают настройку соединения, используя выбранную версию.

· 4 мин. чтения

1. Обзор

Хранилище HashiCorp — это инструмент для хранения и защиты секретов. Vault, в целом, решает проблему безопасности при разработке программного обеспечения, связанную с управлением секретами. Чтобы узнать больше об этом, ознакомьтесь с нашей статьей здесь .

Spring Vault предоставляет абстракции Spring для хранилища HashiCorp.

В этом руководстве мы рассмотрим пример того, как хранить и извлекать секреты из хранилища.

2. Зависимости Maven

· 2 мин. чтения

1. Обзор

В этом кратком руководстве мы узнаем о классе Cipher в Java. Затем мы увидим, как составить список доступных алгоритмов шифрования и их поставщиков.

2. Класс шифрования

Класс Cipher , расположенный в пакете javax.crypto , является ядром инфраструктуры Java Cryptography Extension (JCE). Эта структура предоставляет набор криптографических шифров для шифрования, дешифрования и хэширования данных.

3. Список алгоритмов шифрования

· 7 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим управление криптографическими ключами и сертификатами в Java с помощью KeyStore API.

2. Хранилища ключей

Если нам нужно управлять ключами и сертификатами в Java, нам нужно хранилище ключей , которое представляет собой просто защищенную коллекцию записей ключей и сертификатов с псевдонимами.

Обычно мы сохраняем хранилища ключей в файловой системе и можем защитить их паролем.