Anton Sidorov homepage

Bookmark this to keep an eye on my project updates!

Follow me on GitHub

Security

TODO

  • АСП
  • Аутентификация HTTPS
  • PCI DSS
  • k8s
    • TLS – cert-manager
    • Key Managment, Key Vault
  • Zero Trust

Крипто Защита Информации (СКЗИ)

Криптоалгоритмы

  • подписание - состоит из операции хэширования и шифрования
    • ГОСТ Р 34.10 2012, 2001
  • шифрование
    • ГОСТ 2015, 2012, 2001
    • RSA
    • трафика
      • ГОСТ 28147-89
      • ГОСТ Р 34.10-2012
      • алгоритм «Кузнечик» в соответствии с ГОСТ Р 34.12-2015
  • хэширование
    • ГОСТ Р 31.11
    • HMAC SHA256 симметричный
    • RS256 - ассиметричный. Приватным ключом подпись создается, публичным ключом проверяется подлинность
    • кодирование
      • base64urlas
  • имитозащита - защита целостности сообщения

ГОСТ

  • Криптоалгоритмы ГОСТ Р 34.10-2012, ГОСТ 34.10-18 256 бит
    • необходимо использовать сертифицированные ФСБ РФ СКЗИ
    • Open Source
      • на основе криптобиблиотеки OpenSSL - полноценная криптографическая библиотека с открытым исходным кодом, широко известна из-за расширения SSL/TLS, используемого в веб-протоколе HTTPS.
        • Поддерживает почти все низкоуровневые алгоритмы хеширования, шифрования и электронной подписи
        • криптографических стандартов:
          • RSA, DH, DSA, сертификаты X.509, подписывать их, формировать CSR и CRT, шифровать данные и тестировать SSL/TLS соединения
          • ГОСТ через расширение библиотеки OpenSSL ГОСТ алгоритмами gost-engine
        • Proxy nginx
        • stunnel - программа, на которую можно переложить всю логику шифрования трафика между сервером и клиентом
          • stunnel:port openssl-gost-stunnel (>=v.1.0.2)
          • шифрование через криптобиблиотеку openssl и расширешение библиотеки ГОСТ алгоритмами gost-engine
          • docker-openssl-gost
          • криптотуннель с валидным ключом, подписанным самим «КриптоПро», и с алгоритмом шифрования GOST_2012, 512 бит
      • на основе криптобиблиотек КриптоПро
    • Commercial
    • выбор

Международные

  • Криптоалгоритмы международные RSA\AES
    • IPSec VPN Site-to-Site - CISCO

Подписание ЭЦП

  • Электронная подпись (ЭЦП) содержит номер, сгенерированный и зашифрованный при помощи криптографического программного обеспечения.
  • Алгоритм
    • Хэширование сообщения: на входе сообщение произвольной длины, на выходе хэш значение фиксированной длины
    • Шифрование хэша - не обязательно
    • При формировании ЭЦП закрытый ключ отправителя используется, проверка - открытым ключом отправителя
    • При шифровании сообщения - открытый ключ получателя, расшифрование сообщения - закрытым ключом получателя
  • Три вида электронной подписи:
    • Простая электронная подпись
    • Усиленная неквалифицированная электронная подпись (УНЭП)
    • Усиленная квалифицированная электронная подпись (УКЭП)
      • получают в аккредитованном удостоверяющем центре (УЦ)
  • Форматы ЭЦП
    • Присоединённая
      • содержится в самом документе
      • чтобы прочитать документ потребуется ПО
    • Отсоединённая
      • содержится в отдельном файле .SIG
      • чтобы прочитать документ НЕ потребуется ПО, не изменяет подписываемый документ
      • Как создать программно в КриптоПро
      • в формате
        • pkcs 7 через Приложение cryptcp для КриптоПро CSP
          • в кодировке DER или BASE64
        • Base64String
    • Интегрированная

Шифрование канала связи (трафика) TLS, mTLS, VPN туннель

type

Технологии и протоколы шифрования и имитозащиты передаваемого трафика:

  • SSL VPN\TLS VPN\mTLS VPN
    • устанавливает безопасный удаленный доступ между личным устройством и офисной сетью через веб-портал и тоннель, защищенный SSL\TLS
    • can only support browser-based applications
      • роль клиента в SSL\TLS\mTLS может исполнять любой современный браузер
    • web servers always аутентификация по цифровым сертификатам
  • Site-to-Site VPN выступает в качестве внутренней частной сети для компаний со множеством подразделений в отдельных географических регионах на основе:
    • GRE
    • L2TPv3
    • IPSec VPN Стандарт RFC2401-2412
      • может работать в двух режимах: туннельном и транспортном
      • защищают весь трафик между двумя узлами, позволяя пользователю в случае удалённого подключения к доверенной сети быть её полноправным членом, как если бы он находился непосредственно в ней.
      • аутентификация сторон при использовании технологии VPN обычно выполняется на основе сертификатов (IPsec) или предварительно распределённых секретных ключей (IPsec, IPlir)
      • включает протоколы
        • ESP (Encapsulating Security Payload – безопасная инкапсуляция полезной нагрузки)
        • AH (Authentication Header – заголовок аутентификации)
        • IKE (Internet Key Exchange protocol – протокол обмена ключами)
      • host to net
      • net to net
      • transport mode
  • VPN клиент или открытая сеть VPN
    • В VPN клиенте администратор сети несет ответственность за установку и настройку VPN-сервиса.
    • Затем файл конфигурации распределяется клиентам или конечным пользователям, которым необходим доступ.
    • После этого клиент может установить VPN-подключение к сети компании на локальном компьютере или мобильном устройстве.
  • OpenVPN
  • PPTP (Point-to-Point Tunneling Protocol)
  • DTLS

Сертификаты

Технологии

Примеры требований

  • Взаимодействие осуществляется через сеть Интернет по протоколу HTTP с использованием стандартного сетевого порта
  • Передача конфиденциальной информации в рамках взаимодействия не предполагается
  • Взаимная аутентификация клиента и сервера на базе SSL-сертификатов, шифрование передаваемой информации с использованием протокола HTTPS (TLS 1.2)
  • SSL-сертификаты должны быть выпущены доверенными удостоверяющими центрами
  • В случае, если взаимодействие осуществляется по внешним сетям передачи данных (далее – внешние сети), и участвующая во взаимодействии ИС Компании не является публичной , сетевой доступ к ИС Компании из внешних сетей, открываемый для обеспечения взаимодействия, должен быть ограничен конкретными адресами внешней ИС или сетью ее владельца и конкретными сетевыми протоколами, используемыми ИС Компании.
  • Токен (id сессии), при его использовании, должен быть динамическим (актуальным только для одной сессии одного клиента) и не должен передаваться в URL.