Настройки безопасности системы

Данный раздел предназначен для описания дополнительных настроек обеспечения безопасности системы.

Смена всех паролей в системе

  1. Необходимо сменить системного пользователя для pauth-server

  2. Сменить пароли для системных пользователей Postgresql

  3. Сменить пароль системных пользователей ClickHouse

  4. Смена пароля системного пользователя для komrad-bus

Rate Limit или защита от DOS-атак

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

  # Настройки алгоритма ограничения числа запросов к HTTP
  rate-limit:
    # Включить лимиты на HTTP запросы
    enabled: true
    # Максимальное число запросов от одного пользователя на один метод API в секунду.
    # На ограничение стоит допуск со стандартным распределением вероятности +-50%.
    rps: 40
    # Считать раздельно лимиты для выбранных HTTP-заголовков.
    vary-by-headers: []
    # Считать раздельно лимиты для запросов от одного пользователя с разных IP-адресов.
    # В этом случае раздельно будут считаться запросы от одного и того же пользователя с разных IP-адресов.
    vary-by-remote-address: false

Атака Slowloris

В файле конфигурации вы можете задать время сброса HTTP-соединения при условии, если идут только HTTP-заголовки, а тело запроса долго не идёт.

 ReadHeaderTimeout: 10 * time.Second,

Если будут приходить только заголовки, то тогда раз в 10 секунд будет сбрасываться соединение.

Цифровой отпечаток пользователя

В KOMRAD реализована возможность сбора отпечатков браузера и системы пользователя. Данная информация может быть полезна при расследовании каких-либо внутренних инцидентов. Таким образом можно выявить факт несанкционированного доступа. Например, когда кто-то вошёл в систему с компьютера тестировщика, аккаунта DevOPS-инженера или разработчика.

На каждый вход в систему и каждое обновление страницы создаётся специальное событие безопасности. Максимум информации заносится в поля события, в Raw попадает строка user fingerprint = <число>, где число – уникальный идентификатор параметров системы данного пользователя.

Откройте события –> Поиск по событиям. В графе «Исходный текст (Raw)» отобразится уже упомянутый user fingerprint с уникальным идентификатором для каждого пользователя, заходившего в систему.

fingerprint

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

fingerprint2

Совместное использование ресурсов между источниками

Для безопасности системы мы ограничиваем возможность обращения к серверу со сторонних адресов и имён.

При смене IP-адреса машины, на которой установлен KOMRAD, необходимо изменить его и в настройках сервера:
# Настройки защиты для Cross-Origin-Resource-Sharing (CORS)
  cors:
    enabled: true
    # При возникновении ошибок с CORS возможный выход - небезопасная настройка `allowedorigins: ["*"]`
    # allowedorigins: ["*"]
    allowedorigins:
    - http://localhost:8080
    - https://ip
    - https://ip:443
    - https://127.0.0.1
    - https://127.0.0.1:443
    - https://::1
    - https://::1:443
    - https://name
    - https://name:443
    - https://localhost
    - https://localhost:3400
    - https://localhost:443
    - https://localhost:9050
   # Список FQDN от которых разрешены запросы, если список пустой - запросы со всех
    # хостов будут приниматься. Можно использовать регулярные выражения.
    AllowedHosts:
    - ip
    - ip:443
    - 127.0.0.1
    - 127.0.0.1:443
    - "::1"
    - "::1:443"
    - name
    - name:443
    - komrad.enterprise.lan
    - localhost
    - localhost:3400
    - localhost:443
    - localhost:8080

Перевыпуск сертификатов

Сертификаты имеют срок годности и за ним необходимо следить. Мы рекомендуем проводить смену клиентских сертификатов как можно чаще, поскольку они располагаются на АРМ клиентов и наиболее подвержены компрометации.

Проверить срок действия сертификатов можно командой:

openssl x509 -in /var/lib/echelon/komrad/certs/ca.pem -text -noout | grep "Not After" && openssl x509 -in /var/lib/echelon/komrad/certs/server.pem -text -noout | grep "Not After" && openssl x509 -in /var/lib/echelon/komrad/certs/client.pem -text -noout | grep "Not After"

Подробнее о доступных флагах для генерации сертификатов здесь

Для перевыпуска сертификатов выполните шаги из раздела "Создание сертификатов", а затем выполните перезапуск машины

Последнее изменение 28.07.2023