Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Признаки проблемы

Выполнение системного вызова shmget() из пользовательской сессии с ненулевой классификационной меткой заканчивается ошибкой вида:

Блок кода
Can't shmget: at ..


Информация
titleДанная статья применима к:
Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
  • Astra Linux Special Edition РУСБ.10015-17
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10015-03 (очередное обновление 7.6)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1
  • Astra Linux Special Edition РУСБ.10015-16 и исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12

Данная статья неприменима к Astra Linux Special Edition РУСБ.10015-10


Особенности применения IPC в Astra Linux Special Edition

Устранение проблемы

ПредупреждениеПроблема вызвана запретом на межпроцессное взаимодействие ( 

По умолчанию при работе с Astra Linux Special Edition с включенным МРД запрещено межпроцессное взаимодействие (

inter-process communication, IPC) между пользовательскими сессиями, имеющими ненулевую классификационную меткую. При этом работа IPC разрешена:

  • внутри одной сессии независимо от классификационной метки сессии;
  • между разными сессиями, имеющими нулевые классификационные метки (т.е. имеющими иерархический уровень конфиденциальности ноль и неиерархические категории конфиденциальности ноль).

При работе в сессиях с ненулевой классификационной меткой

. Этот запрет установлен

для каждой такой сессии создается свое отдельное пространство IPC, и работа IPC с любыми другими сессиями по умолчанию невозможна. Это ограничение установлено в Astra Linux Special Edition

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

в соответствии с нормативными требованиями к системам защиты информации и политиками мандатного управления доступом (МРД). Доверенным системным процессам для использования IPC между сессиями может быть предоставлена PARSEC-привилегия parsec_cap_ipc_owner (см. Привилегии PARSEC), назначение которой пользовательским процессами должно быть исключено.

Проявление ограничения применения IPC

При действии ограничения применения IPC попытка выполнения из пользовательской сессии с ненулевой классификационной меткой системного вызова shmget() заканчивается ошибкой.

Снятие ограничения применения IPC в Astra Linux Special Edition

Предупреждение
Снятие ограничений применения IPC на уровне пользовательских сессий ведет к появлению возможности использования недоверенных пользовательских приложений для несанкционированного доступа к информации с использованием механизмов IPC.

Для снятия ограничения применения IPC (разрешения применения IPC независимо от классификационной метки пользовательской сессии) выполнить следующие действия:

  • В
Для того, чтобы разрешить использование IPC независимо от классификационой метки сессии необходимо в
  • файлах авторизации пользователей в каталоге /etc/pam.d в вызовы PAM-модуля pam_parsec_mac.so добавить параметр public_sysv_ipc
.
  • ;
  • Если в файле имеются
нескоколько
  • несколько вызовов PAM-модуля pam_paresec_mac.so, то параметр public_sysv_ipc добавить ко всем существующим вызовам.

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

Блок кода
/etc/pam.d/fly-dm:session required pam_parsec_mac.so unshare_root_only public_sysv_ipc
/etc/pam.d/fly-dm:auth required pam_parsec_mac.so public_sysv_ipc 
/etc/pam.d/fly-dm:account required pam_parsec_mac.so labelselect=appset public_sysv_ipc 
/etc/pam.d/fly-dm:session required pam_parsec_mac.so public_sysv_ipc 

/etc/pam.d/fly-dm-np:session required pam_parsec_mac.so unshare_root_only public_sysv_ipc 
/etc/pam.d/fly-dm-np:auth required pam_parsec_mac.so public_sysv_ipc 
/etc/pam.d/fly-dm-np:account required pam_parsec_mac.so labelselect=appset public_sysv_ipc 
/etc/pam.d/fly-dm-np:session required pam_parsec_mac.so public_sysv_ipc 

/etc/pam.d/login:session required pam_parsec_mac.so unshare_root_only public_sysv_ipc
/etc/pam.d/login:auth required pam_parsec_mac.so public_sysv_ipc 
/etc/pam.d/login:account required pam_parsec_mac.so so public_sysv_ipc 
/etc/pam.d/login:session required pam_parsec_mac.so
 public_sysv_ipc 
/etc/pam.d/passwd:password required pam_parsec_mac.so public_sysv_ipc

/etc/pam.d/sshd:session    required     pam_parsec_mac.so stub public_sysv_ipc

/etc/pam.d/sumac.xauth:auth       required   pam_parsec_mac.so public_sysv_ipc
/etc/pam.d/sumac.xauth:account       required   pam_parsec_mac.so labelselect=appset public_sysv_ipc 
/etc/pam.d/sumac.xauth:session required pam_parsec_mac.so public_sysv_ipc 

Если в каталоге /etc/pam.d имеются дополнительные файлы то в них нужно сделать внести аналогичные изменения.