Учебное пособие: Мобильная система Вооруженных Сил (МСВС) - политика пользователей и групп

В данной главе рассматриваются следующие вопросы:

- пользователи;

- различия между привилегированными и непривилегированными пользователями;

- файлы входа в систему;

- файл /etc/passwd;

- файл /etc/shadow;

- файл /etc/gshadow;

- файл /etc/login.defs;

- модификация сведений об устаревании паролей;

- РАМ.

В основе безопасности МСВС лежат концепции пользователей и групп. Все решения о том, что разрешается или не разрешается делать пользователю, принимаются на основании того, кем является вошедший в систему пользователь с точки зрения ядра операционной системы.

Общий взгляд на пользователей

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

При создании нового пользователя ему ставится в соответствие уникальное имя

ПРИМЕЧАНИЕ

Система определяет привилегии пользователя на основании идентификатора пользователя (userID, UID). В отличие от имени пользователя, UID может и не быть уникальным, в этом случае для сопоставления ему имени пользователя берется первое найденное имя, UID которого совпадает с данным.

Каждому новому регистрируемому в системе пользователю ставятся в соответствие определенные элементы системы.

Привилегированные и непривилегированные пользователи

При добавлении нового пользователя в систему ему выделяется специальный номер, называемый идентификатором пользователя (userID, UID). В Caldera МСВС выделение идентификаторов новым пользователям начинается с 500 и продолжается в сторону больших чисел, вплоть до 65 534. Номера до 500 зарезервированы для системных учетных записей.

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

Нумерация идентификаторов начинается с 0 и продолжается до 65 535. UID 0 — это особенный UID. Любой процесс или пользователь с нулевым идентификатором является привилегированным. Такой человек или процесс имеет неограниченную власть над системой. Ничто не может служить для него запретом. Учетная запись root (учетная запись, UID которой равен 0), также называемая учетной записью суперпользователя, делает вошедшего с ее использованием если не владельцем, то как минимум его доверенным лицом.

Остается UID, равный 65 535. Он тоже не из обычных. Этот UID принадлежит пользователю nobody(никто).

Когда-то одним из способов взлома системы было создание пользователя с идентификатором 65 536, в результате чего он получал привилегии суперпользователя. Действительно, если взять любой UID и перевести соответствующее число в двоичную форму, то получится комбинация из шестнадцати двоичных разрядов, каждый из которых равен либо 0, либо 1. Подавляющее количество идентификаторов включают в себя как нули, так и единицы. Исключением является нулевой UID суперпользователя, состоящий из одних нулей, и UIDnobody, равный 65535 и состоящий из 16 единиц, то есть 1111111111111111. Число 65 536 нельзя разместить в 16 разрядах — для представления этого числа в двоичной форме требуется использовать уже 17 разрядов. Самый старший разряд будет равен единице (1), все остальные равны нулю (0). Так что же происходит при создании пользователя с идентификатором длиной в 17 двоичных разрядов — 10000000000000000? Теоретически, пользователь с нулевым идентификатором: поскольку под идентификатор отводится лишь 16 двоичных разрядов, 17 разряд хранить негде, и он отбрасывается. Стало быть, единственная единица идентификатора теряется, и остаются одни нули, а в системе появляется новый пользователь с идентификатором, а значит, и привилегиями, суперпользователя. Но теперь же в МСВС нет программ, которые позволили бы вам установить UID в 65 536.

ПРИМЕЧАНИЕ

Пользователей с идентификаторами, превышающими 65 536, создавать можно, но использовать их без подмены /bin/login не получится.

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

Файл /etc/passwd

Желающий войти в систему должен ввести имя пользователя и пароль, которые проверяются по базе данных пользователей, хранящейся в файле /etc/passwd. В нем, кроме всего прочего, хранятся пароли всех пользователей. При подключении к системе введенный пароль сверяется с паролем, соответствующим данному имени, и в случае совпадения пользователь допускается в систему, после чего запускается программа, указанная для данного имени пользователя в файле паролей. Если это командная оболочка, пользователь получает возможность вводить команды.

Рассмотрим листинг 1.1. Это файл passwd в старом стиле.

Листинг 1.1. Файл /etc/passwd в старом стиле

root: *:1i DYwrOmhmEBU: 0:0: root:: /root: /bin/bash

bin:*:1:1:bin:/bin:

--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 328
Бесплатно скачать Учебное пособие: Мобильная система Вооруженных Сил (МСВС) - политика пользователей и групп