Закрытая программная среда.

Сообщения
14
#1
Доброго времени суток, форумчане. Есть проблема. Точнее вопрос.
Какие папки необходимо подписывать (и бинарно и в расширенных атрибутах) перед включением ЗПС?

Подписали в расширенных атрибутах почти все файлы. Включили ЗПС (контроль расширенных атрибутов).

Система встала. Выдавало что-то с ошибкой группы Kernlog. Доходило до ввода имени пользователя (не графический режим), а при вводе имени ничего не происходило.
Как вообще пользоваться этим ЗПС?

AstraLinux 1.6 SE
 

oko

New member
Сообщения
1 257
#2
to Андрей Хлопков
Primo, механизм ЗПС с расширенными атрибутами в Astra 1.6, imho, сырой, и использовать его "из прихоти" не стоит...
Secundo, подписывать надо только ELF-файлы (исполняемые и, собственно, неизменные на все время функционирования АС), а не все подряд...
Tertio, использовать "Подпись" в разделе ЗПС (что "бинарную", что "расширенные атрибуты") нужно исключительно тогда, когда у вашей организации имеется ключ, подписанный закрытым ключом РусБИТех (не путать! не встроенные в дистрибутив ключи - это открытые ключи для проверки), или иные ключи, подписанные по цепочке, ведущей к ключу РусБИТех. Иначе софт, подписанный "непроверенным" ключом (который вы можете сгенерировать в граф.интерфейсе, например) не будет исполняться, а в /var/log/syslog упадет характерное сообщение:
1. Через граф.интерфейс или консоль создаем собственный ключ и подписываем им исполняемый файл /bin/nano
2. Включаем DIGSIG_ELF_MODE=1 (контроль исполняемых файлов) и перезагружаемся
3. Запускаем nano, получаем "Ошибку сегментирования" и видим в syslog следующий выхлоп:
Sep 26 23:13:03 astra kernel: [ 58.266501] DIGSIG:[ERROR] digsig_gost_bsign_verify: ERROR, signer key was not found (ID=0x9fd48be2)
Sep 26 23:13:03 astra kernel: [ 58.266505] DIGSIG:[ERROR] VERIFICATION FAILED: path=/bin/nano uid=0 gid=0

Quarto, если юзать только софт, встроенный в дистрибутив (полученный из его двухдискового "репозитория", ага), то можно смело включать контроль исполняемых файлов, не включать контроль расширенных атрибутов и не подписывать ничего в разделе ЗПС - при модификации таких исполняемых файлов (например, в результате НСД) система проверит, что файл подписан РусБИТехом по умолчанию, проверит их ЭЦП, убедится, что ЭЦП не совпадает (вернее, новая версия файла не имеет ЭЦП в принципе) и заблокирует его исполнение. Что, собственно, от ЗПС и требуется...
1. Аналогично включаем контроль исполняемых файлов, ничего не подписывая
2. Модифицируем файл /usr/bin/vi (например, закидываем аналогичный из Debian 9) и перезагружаемся
3. Запускаем vi, получаем "Ошибку сегментирования" и видим в syslog следующий выхлоп:
Sep 26 23:13:07 astra kernel: [ 61.711498] DIGSIG:[ERROR] NOT SIGNED: path=/usr/bin/vim.basic uid=0 gid=0

ЗЫ Если подписать файл-из-дистрибутива ключом, не заверенным РусБИТехом, то это перезапишет подпись самого РусБИТеха. Как сбросить это в дефолт не ясно. Т.е. в вашей ситуации, походу, только переустановка системы спасет, если все-таки хотите юзать ЗПС...
 
Сообщения
14
#3
to Андрей Хлопков
Primo, механизм ЗПС с расширенными атрибутами в Astra 1.6, imho, сырой, и использовать его "из прихоти" не стоит...
Secundo, подписывать надо только ELF-файлы (исполняемые и, собственно, неизменные на все время функционирования АС), а не все подряд...
Tertio, использовать "Подпись" в разделе ЗПС (что "бинарную", что "расширенные атрибуты") нужно исключительно тогда, когда у вашей организации имеется ключ, подписанный закрытым ключом РусБИТех (не путать! не встроенные в дистрибутив ключи - это открытые ключи для проверки), или иные ключи, подписанные по цепочке, ведущей к ключу РусБИТех. Иначе софт, подписанный "непроверенным" ключом (который вы можете сгенерировать в граф.интерфейсе, например) не будет исполняться, а в /var/log/syslog упадет характерное сообщение:
1. Через граф.интерфейс или консоль создаем собственный ключ и подписываем им исполняемый файл /bin/nano
2. Включаем DIGSIG_ELF_MODE=1 (контроль исполняемых файлов) и перезагружаемся
3. Запускаем nano, получаем "Ошибку сегментирования" и видим в syslog следующий выхлоп:
Sep 26 23:13:03 astra kernel: [ 58.266501] DIGSIG:[ERROR] digsig_gost_bsign_verify: ERROR, signer key was not found (ID=0x9fd48be2)
Sep 26 23:13:03 astra kernel: [ 58.266505] DIGSIG:[ERROR] VERIFICATION FAILED: path=/bin/nano uid=0 gid=0

Quarto, если юзать только софт, встроенный в дистрибутив (полученный из его двухдискового "репозитория", ага), то можно смело включать контроль исполняемых файлов, не включать контроль расширенных атрибутов и не подписывать ничего в разделе ЗПС - при модификации таких исполняемых файлов (например, в результате НСД) система проверит, что файл подписан РусБИТехом по умолчанию, проверит их ЭЦП, убедится, что ЭЦП не совпадает (вернее, новая версия файла не имеет ЭЦП в принципе) и заблокирует его исполнение. Что, собственно, от ЗПС и требуется...
1. Аналогично включаем контроль исполняемых файлов, ничего не подписывая
2. Модифицируем файл /usr/bin/vi (например, закидываем аналогичный из Debian 9) и перезагружаемся
3. Запускаем vi, получаем "Ошибку сегментирования" и видим в syslog следующий выхлоп:
Sep 26 23:13:07 astra kernel: [ 61.711498] DIGSIG:[ERROR] NOT SIGNED: path=/usr/bin/vim.basic uid=0 gid=0

ЗЫ Если подписать файл-из-дистрибутива ключом, не заверенным РусБИТехом, то это перезапишет подпись самого РусБИТеха. Как сбросить это в дефолт не ясно. Т.е. в вашей ситуации, походу, только переустановка системы спасет, если все-таки хотите юзать ЗПС...
Спасибо, большое, за ответ!