Где в моей системе хранится мой пароль Linux и как я могу его получить? [дубликат]

На этот вопрос уже есть ответ здесь:

В настоящее время я вошел в свою систему Linux и хочу вывести свой пароль Linux и имя пользователя на свой терминал, что команды, которые мне нужно записать, и в каком файле они хранятся и как их получить?

2
задан 8 June 2013 в 19:56

3 ответа

Короче говоря: вы не можете узнать, какой у вас пароль.

Хотя он хранится в файле /etc/shadow, он хранится в «защищенном» формате, который называется хэш . Это похоже на запеченный пирог с набором ингредиентов, нет способа вернуть муку обратно из пирога.

0
ответ дан 8 June 2013 в 19:56

Как вы знаете из других ответов, вы не видите свой пароль. Позвольте мне объяснить, почему. Конструкция, в которой пароли хранятся в их обычной форме (она называется простой), не очень безопасна (не только для операционных систем), поскольку, если список таких паролей попадает в руки злоумышленника, он может войти в систему мгновенно, поскольку список имен пользователей обычно легко получить (в Linux из файла /etc/passwd). Вот почему вместо этого используются хэш-функции. Это односторонние функции - вы можете создать хеш на основе значения, но вы не можете создать значение на основе хеша. Если злоумышленник получает список значений хеш-функции, он не может извлечь из них действительные пароли (или, по крайней мере, это сложнее), и пользователь все равно может войти в систему - когда он передает свой пароль, он преобразуется в хэш и сравнивается с сохраненным значением. ]

Время от времени вы можете услышать, что кто-то взломал какой-то сайт и получил пароли, или что какой-то список паролей где-то просочился. Если они были сохранены в виде простого текста, злоумышленник получил мгновенный доступ к некоторым учетным записям. Если они были хешированы, он должен был сначала их сломать. Это означает больше проблем для него и больше времени для реакции, такой как смена пароля на новый. Linux (и любая система, основанная на Unix) следует этому принципу, и поэтому вы не можете напечатать свой пароль любым другим способом, который хэшируется - только если у вас есть привилегии пользователя root и вы можете прочитать файл /etc/shadow.

Чтобы напечатать ваше имя пользователя, введите whoami.

0
ответ дан 8 June 2013 в 19:56

Пароли вообще нигде не хранятся в системе. В /etc/shadow хранятся так называемые хеши паролей.

Хэш некоторого текста создается путем выполнения так называемой односторонней функции над текстом (паролем), таким образом создавая строку для проверки. По замыслу «невозможно» ( вычислительно неосуществимо ) обратить этот процесс вспять.

Что можно сделать, это попробовать атаку «грубой силой» - хешируя много возможных паролей, пока результат не будет равен найденному хешу. Нет другого способа, вы не можете вычислить текст (= пароль), который соответствует вашему хешу.

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

Типичными текущими алгоритмами являются

  • MD5
  • SHA-1 (также называемый SHA)

оба не должны использоваться в целях криптографии / безопасности больше!

  • SHA-256
  • SHA-512
  • SHA-3 (KECCAK был объявлен победителем в конкурсе на новый утвержденный федеральный алгоритм хеширования в октябре 2012 г.) - еще не используется в Ubuntu.
0
ответ дан 8 June 2013 в 19:56

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

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