Организация базы учетных записей пользователей в ОС Unix.
Учетные записи пользователей операционных систем клона Unix
Хранятся в текстовом файле / etc / passwd в виде отдельных строк и имеют следующий формат:
Логическое имя пользователя ID : хеш-значение его пароля H(P) : системный идентификатор пользователя UID : системный идентификатор первичной группы пользователя GID : полное имя и должность пользователя D : домашний (рабочий) каталог пользователя HD : командный процессор (оболочка), применяемый пользователем, SH
Привилегии пользователей в ОС Unix
Определяются полями учетной записи UID, GID, HD и SH.
При работе в системе пользователь полностью идентифицируется своим системным идентификатором UID, поэтому два пользователя с одинаковым идентификатором, будут обладать совершенно одинаковыми правами в системе.
В учетных записях псевдопользователей в поле хеш-значения пароля помещается *, что не позволяет применять эти логические имена для входа в систему.
Привилегии пользователей в ОС Unix
Поскольку привилегии пользователя в КС определяются не его логическим именем, а значением UID, вход в систему пользователя с именем root и с системным идентификатором, отличным от нуля, не обеспечит ему привилегий суперпользователя.
С другой стороны, вход в систему пользователя с произвольным логическим именем и с UID, равным нулю, даст ему все полномочия суперпользователя.
Алгоритм хеширования паролей
На основе времени суток генерируется случайное значение S (12 битов или больше), которое затем преобразуется в строку из двух или более символов и запоминается в файле учетных записей как первые символы поля с хеш-значением пароля.
Магическое значение M длиной 64 бита, состоящее из нулей или пробелов, зашифровывается по алгоритму DES, причем в качестве ключа шифрования длиной 56 бит используется пароль пользователя P, а S применяется для модификации алгоритма шифрования.
Алгоритм хеширования паролей
Полученное значение длиной 64 бита вновь зашифровывается на том же ключе (общее число повторений равно 25);
Полученное окончательное значение преобразуется в 11 символов (каждым 6 битам соответствует один символ из множества {‘.’, ‘/’, ‘0’-‘9’, ‘A’-‘Z’, ‘a’-‘z’});
Полученная строка символов записывается в файл учетных записей после случайного значения.
В современных версиях Unix на шагах 2 и 3 вместо функции шифрования DES используется функция хеширования MD5.
Минимальная длина пароля
Поскольку пароль используется в алгоритме хеширования в качестве ключа DES-шифрования длиной 56 бит, его минимальную длину целесообразно выбирать равной восьми символам (56 бит в кодировке ASCII).
Затенение паролей
По умолчанию к файлу / etc / passwd разрешен доступ по чтению для всех пользователей КС. Это необходимо, поскольку сведения об идентификаторах пользователя и группы, домашнем каталоге и логическом имени пользователя из этого файла должны быть доступны различным программам.
Дата добавления: 2021-09-25; просмотров: 308;