Я могу опустить последние несколько символов своего пароля на Ubuntu 14.04

У нас есть Ubuntu 14.04.3 LTS на нашей лаборатории ПК в моем колледже. Сегодня я заметил серьезную ошибку.

Я могу пропустить последние несколько символов своего пароля и все еще войти в систему гладко. Например, если мой пароль a1b2c3d4e5f6g7h8, Я могу ввести a1b2c3d4e и все еще войдите в систему. Многие другие люди также заметили эту ошибку.

Обратите внимание, что пароль не может быть обойден полностью - максимум, который я смог пропустить, 7 символов. Если я пытаюсь пропустить еще, сообщение "Неверный пароль, попробуйте еще раз", появляется. Также обратите внимание, что любая случайная перестановка подстроки пароля не работает.

Это также происходит, если я блокирую экран вручную и ввожу пароль снова. Та же ошибка присутствует при использовании ssh и хорошо, поиск с помощью Google и поиск Переполнения стека не помогли.

Мой вопрос - как я исправляю эту ошибку, если я могу зафиксировать его вообще? Наш sysadm не будет доступен перед понедельником, и это действительно беспокоит меня.

ВАЖНЫЙ: Обратите внимание, что ни одна из учетных записей студентов не находится в списке sudoers, только sysadm имеет корневой доступ. Кроме того, продолжающие шоу, когда я ssh в мою собственную учетную запись:

Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-65-generic i686)

* Documentation:  https://help.ubuntu.com/

543 packages can be updated.
350 updates are security updates.

New release '16.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

ОБНОВЛЕНИЕ: похоже, что важной проблемой не является количество символов, опущенных в конце, но том, что возможно войти в систему с первыми восемью или больше символами пароля.

27
задан 11 February 2017 в 11:18

2 ответа

Если у Вас нет доступа администратора, нет очень, можно сделать.

Тем не менее это, кажется, из-за некомпетентности администратора. Это звучит подозрительно подобным шифрованию пароля с помощью классика crypt(3) функция. От man 3 crypt :

crypt()  is  the password encryption function.  It is based on the Data
Encryption Standard algorithm with  variations  intended  (among  other
things) to discourage use of hardware implementations of a key search.

key is a user's typed password.

salt is a two-character string chosen from the set [a-zA-Z0-9./].  This
string is used to perturb the algorithm in one of 4096 different ways.

By taking the lowest 7 bits of each of the first  eight  characters  of
the  key, a 56-bit key is obtained.  This 56-bit key is used to encrypt
repeatedly a constant  string  (usually  a  string  consisting  of  all
zeros).   The returned value points to the encrypted password, a series
of 13 printable ASCII characters (the first  two  characters  represent
the salt itself).  The return value points to static data whose content
is overwritten by each call.

, который звучит знакомым?

Никакая недавняя система Ubuntu не использует это по умолчанию. Ваш администратор, должно быть, вручную настроил установку пароля для использования этого. Или, они могли бы использовать внешнюю аутентификацию (LDAP, или подобные) и не сделали или не могли настроить это надежно.

См. также: пароли в современных системах Unix/Linux, все еще ограниченных 8 символами?

28
ответ дан 23 November 2019 в 01:05

Было время в предыдущее тысячелетие, когда весь Unixen зашифровал их пароли этот путь. Отбросьте все вне восьмого символа, добавьте соль, отбрасывание через хеш-функцию и сделанный.

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

Так, большая победа здесь является теневыми паролями. Однако, люди начали думать, что это не было достаточно хорошо, и каждый вариант Unix реализовал их собственный способ расширить максимальную длину пароля. Они больше не были совместимы.

Некоторое время, если Вы хотели, чтобы несколько машин с различными вариантами Unix использовали тот же пароль, необходимо было использовать старый тип шифрования.

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

Сегодня, вещи лучше. Существует меньше используемых вариантов Unix, и они сотрудничают лучше.

я не достаточно компетентен сказать Вам, как зафиксировать это, но это задача для администратора, не для Вас.

7
ответ дан 23 November 2019 в 01:05

Другие вопросы по тегам:

Похожие вопросы: