Где линукс хранит пароли пользователей

Where is my password stored on Linux? [duplicate]

Is there a specific location where the passwords are stored ? Is it depending on which version is used ? Are they salted ?

2 Answers 2

Linux passwords are stored in the /etc/shadow file. They are salted and the algorithm being used depends on the particular distribution and is configurable.

From what I recall, the algorithms supported are MD5 , Blowfish , SHA256 and SHA512 . Most recent distributions should be on SHA512 by default if my memory serves me right.

It’s important to note that while the crypt documentation refers to MD5 , SHA256 , SHA512 that they are not one application of the simple cryptographic hash function, but it uses en.wikipedia.org/wiki/Crypt_(C) which generally provide 1000 (MD5) to default of 5000 rounds of the cryptographic hash function.

@drjimbob, Is this 5000 rounds of applying the same hash function to reduce the likelihood of a collision? It seems that repetitively applying the same hash function would only increase the amount of time it would take an attacker to brute force the hash rather than actually increasing the security of how the system handles passwords.

@sherrellbc — The 5000 rounds is to simply slow down brute force attacks by a factor of roughly 5000. See: en.wikipedia.org/wiki/Key_stretching The chance of salt+pw collision is extremely small — there’s an 8 character long base64 salt (64^8 ~ 2.8 x 10^14 different salts). So its quite unlikely two people would have both the same salt and password. Getting the hashes to collide by chance is negligible; if you used a billion computers each generating a trillion hashes per second, it would take over a billion years before it’s likely for one pair of collisions with 256 bit hashes.

Passwords in unix were originally stored in /etc/passwd (which is world-readable), but then moved to /etc/shadow (and backed up in /etc/shadow- ) which can only be read by root (or members of the shadow group).

The password are salted and hashed. The default formats are MD5-crypt, bcrypt, sha256-crypt, sha512-crypt, and for historical reasons DES (note DES only allows 8-byte passwords). Note, sha512-crypt is typically involves 5000 rounds of SHA512-ing the password and the number of rounds is configurable.

For more info consult man crypt , man shadow , man passwd .

how are the passwords salted? Since the Linux kernel is open source, is not the salt algorithm known by the world and therefor useless?

@Rox — First, salts work by being at high-probability a unique string that’s concatenated to the password before its hashed. Therefore, someone can’t attack millions of passwords in parallel; (e.g., generate sha256crypt’s of a list of 100 million common passwords once and then compare against all million hashes you have until you find matches). Instead to attack just one hash with a unique salt, you’d have to try all the common passwords (concatenated with that unique salt) until one worked. Note the salt is stored with the hash, as to check a password you need to use the salt.

Читайте также:  Ati radeon driver linux mint

@Rox — Furthermore, the linux kernel being open-source is not relevant either. IIRC, the random salt is created from /dev/random , which uses true random bits are accumulated from measuring the noise properties of your system (e.g., did it take an even or odd number of clock cycles to access something from disk or time between keystrokes/mouse movements); so it is not predictable, even if it is open source.

Источник

Linux узнать свой пароль

В Linux нет особого реестра, где бы хранились настройки программ, данные пользователей и другие компоненты системы. Всё хранится в файлах. В этой небольшой статье мы поговорим о том, где хранятся пароли пользователей Linux.

Изначально для хранения паролей использовался файл /etc/passwd. Но этот файл доступен для чтения всем пользователям. Поэтому, из соображений безопасности, пароли пользователей были перенесены в файл /etc/shadow. Этот файл доступен для чтения только пользователю root. Важно отметить, что пароли в этом файле хранятся не в открытом виде, а в хэшированном. Существует несколько алгоритмов хэширования паролей для Linux. Подробно всё это рассматривалось в статье про смену пароля Linux. Сейчас же давайте посмотрим на общий синтаксис файла /etc/shadow: sudo cat /etc/shadow

  • root — имя пользователя, для которого сохранен пароль;
  • $6$yr. — хэш пароля, длина хэша от пароля никак не зависит, в данном случае зашифровано слово password;
  • 18376 — дата последнего изменения пароля;
  • 0 — количество дней на смену пароля, если его срок действия истёк;
  • 999999 — количество дней от момента последней смены пароля до момента, когда надо сменить пароль принудительно;
  • 7 — за сколько дней пользователь будет предупреждён о необходимости смены пароля.
  • Ещё три поля — задают параметры отключения учётной записи пользователя.

Это всё, что следует знать об этом файле. В Linux есть ещё одно место, где приложения хранят свои пароли, SSH-ключи и другие секретные данные. Это хранилище ключей. В Gnome утилита называется SeaHorce. Вы можете найти её по названию в главном меню:

В самой утилите вы сможете найти и удалить ключи от различных приложений, ключ от хранилища паролей Chromium, токен доступа в Skype, а также все SSH-ключи, добавленные к вашей системе.

Естественно, здесь всё тоже захэшировано и просто прочитать пароль не получиться, если, конечно, какое-нибудь приложение не хранит их в открытом виде. Теперь вы знаете, где хранятся пароли в Linux. На этом всё.

Как узнать пароль на root

как можно изменить пароль? не могу войти на компьютер. спрашивает пароль пользователя? как я могу найти его.

4 ответа 4

По поводу заголовка вопроса:В Убунте вход от имени пользователя root по-умолчанию запрещён, и пароля у него нет. Воспользуйтесь командой sudo и вводите свой пароль. Пользователь, соответственно, должен иметь привилегии (см /etc/sudoers).Ссылко

Читайте также:  Ассемблер системные вызовы linux

Можно только сбросить на новый при наличии физического доступа к машине — http://habrahabr.ru/post/54103/

Узнать пароль просто так не получится, но зато его можно сбросить, установить новый. Есть несколько простых способов это сделать.

Загрузка в однопользовательский режим

Если на нужной машине в качестве загрузчика используется GRUB без пароля, подойдут такие действия.

  1. Включите компьютер и дождитесь экрана выбора ОС (если выбор не появляется, нужно нажать клавишу ESC во момент загрузки).
  2. Как только удалось попасть в меню загрузчика, наведите курсор на нужную систему и нажмите клавишу E . Вы попадёте в простой редактор для этого пункта.
  3. Найдите строчку, начинающуюся с linux , и добавьте в конец слово single .
  4. Загрузитесь с изменёнными настройками, нажав F10 .
  5. Через некоторое время вы попадёте в привилегированный режим. Наберите там команду passwd пользователь и установите пароль указанного пользователя системы.
  6. Затем введите команду exit , и загрузка продолжится как обычно. Но пароль уже будет сменён.

Подмена демона инициализации

Однопользовательский режим загрузки может быть заблокирован*. В этом случае можно попытаться подменить путь к программе начальной инициализации.

    Для этого на этапе редактирования настроек пункта в загрузчике (см. №3 выше) надо вместо параметра single писать init=/bin/bash .

Загрузившись (клавиша F10 ), надо примонтировать корневой раздел на запись.

Затем аналогично меняете пароль утилитой passwd.

* в systemd это делается маскированием юнита rescue.target .

Загрузка с Live образа

Администратор может запретить менять параметры загрузки, поставив пароль на GRUB. Это осложнит предыдущие пункты, и придётся прибегнуть к помощи установочной флешки.

Загрузив Live систему с флешки (или по-старинке с CD), в терминале примонтируйте системный раздел целевой ОС. Найти его можно утилитами fdisk или GParted.

Потом смените корневой каталог

Смените пароль также как и в предыдущих вариантах программой passwd.

В качестве противодействия этому варианту предлагается поставить пароль и на BIOS и повесить замок на корпус или опечатать его.

Редактирование базы данных пользователей

В предыдущем случае, чтобы прошёл фокус со сменой корня, подопытная система и система с флешки должны быть архитекурно совместимы. Если это не так, можно отредактировать файл /etc/passwd целевой ОС.

    Откройте passwd файл, который содержит список пользователей, в любом текстовом редакторе (или даже в любой ОС, в которой есть поддержка линуксовой ФС).

Найдите нужного пользователя (имена в первой колонке до двоеточия) и уберите любые символы вплоть до второго двоеточия в строке. Это сбросит пароль пользователя на пустой.

Загрузившись в целевую систему желательно заново установить пароль.

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

можно ли узнать пароль пользователя?

Проблемы с сыном (14 лет), болен интернетом (соц сетями). Решил регулировать доступ. Поставил linux mint 17 (сделан из ubuntu 14.04, сам пользую mint mate 13). Создал пользователя. Пароль взял предложенный системой, безсмысленный набор символов. Пароль никому не показывал, не записывал, просто запомнил. Оставил сына на некоторое время в системе, не смотрел, что делает (живем не вместе, приходится оставлять). Сейчас узнаю, что он как то узнал пароль пользователя и пользует комп в мое отсутствие. Как это можно сделать? Всегда считал, что линух не взломать и пользуюсь им уже много лет. Прочитал кучу статей по этому поводу. Везде пишут, что можно только скинуть пароль рута, используя при загрузке восстановление системы. Но пароли не изменились. Подскажите кто знает. Сына надо лечить ограничением доступа в инет.

Читайте также:  Linux microsoft access driver

Коллега на работе рассказывал, что его брат узнал пароль у отца оставив фотомыльницу на запись так, чтобы она была направлена на клавиатуру.

Сына надо лечить ограничением доступа в инет.

А больше времени с ним проводить не приходила мысль? По теме — мог много раз видеть, как ты набираешь и запомнить. Дети на такое способны.

пароль узнать нельзя. Строго говоря, система его тоже не знает, она знает только как проверить верен ли он.

— загрузился в режиме восстановления системы, создал нового пользователя

— поменял пароль рута и работает из под него

Вообще, советую посмотреть /etc/passwd на предмет появления новых пользователей.

Хотя вариант с подсмотренным паролем тоже очень даже имеет право на существование

При входе в систему сына рядом не было. Мысль правильная, но не реализуемая. Живем не вместе.

Это понятно. А где нибудь фиксируется кто и когда входил в систему?

Сейчас узнаю, что он как то узнал пароль пользователя и пользует комп в мое отсутствие. Как это можно сделать?

Скорее всего init=/bin/bash через граб

Значит в самом деле видео записал. И проверить нет ли новых пользователей. А еще такое — он точно сидит с установленной ОС? Может с флешки какой-то. Если нет, то ваш сын смог сделать то, что считается практически невозможным.

Кстати, а загрузка с флешки разрешена? Правда нужно ещё ограничить сброс биоса, а то можно просто грузиться с флешки-лайвсиди и использовать интернет вдоволь.

Немного по подробнее можно? Я не очень в администрировании.

А где нибудь фиксируется кто и когда входил в систему?

В системных log-файлах, в зависимости от дистрибутива.

live cd запускает наверное ::)

В меню grub нажимаем «Е» на клавиатуре и в конец строки linux вводим init=/bin/bash

Затем там уже меняем пароль пользователя

Ограничивай не доступ к пк, а доступ к сети.

То есть доступ был ограничен только паролем к установленной системе? Не был запрещён доступ в биос, не запрещена загрузка с внешних носителей, не запрещёно редактирование меню grub, доступ внутрь системника тоже не ограничен?

Ограничивай не доступ к пк, а доступ к сети.

Проще отказаться от услуг провайдера. Но пацанчика это не остановит 🙂 Придется запрещать весь город или держать пацана взаперти 🙂

сделай в кроне проверку пароля по хешу, если пароль отличается от эталонного меняешь его, или при загрузке проверь пароль, в общем вариантов много. А вообще гордись сыном!

А больше времени с ним проводить не приходила мысль?

Источник

Оцените статью
Adblock
detector