Underground InformatioN Center [&Forum] 
[hacking & security news] [articles, programing info] [uinC info board] [links, soft & more...][home]
[Follow Ups] [Post Followup] [Underground InformatioN Center [Forum]] [Forum FAQ] [Archive/Архив]

Пароли в UNIX
Posted by: Антон on February 12, 2003 at 17:26:58
Posters Details: [195.151.158.180], X-Forwarded 4: []
[Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)]

Кое-что из NETHACK.FAQ.

===
2.2.1 Пароли в UNIX.

В классическом UNIX'е информация о пользователях хранится в файле
/etc/passwd. Этот файл содержит для каждого пользователя системы, семь
полей, разделенных знаком ':'.
Пример записи на одного пользователя из /etc/passwd:

will:5fg63fhD3d5g:9406:12:Will Spencer:/home/fsg/will:/bin/bash

Каждая запись содержит :
Имя пользователя (login): will
Зашифрованный пароль: 5fg63fhD3d5g
Номер пользователя: 9406
Номер группы: 12
Информация о пользователе: Will Spencer
Домашний каталог: /home/fsg/will
Оболочка (Shell): /bin/bash

Важное примечание:
В современных UNIX'ах зашифрованные пароли не хранятся в доступном
всем /etc/passwd, а хранятся в файле, доступном только администратору:
/etc/master.passwd или /etc/shadow. В поле пароля /etc/passwd в этом
случае стоит символ '*'. Что делать? На довольно старых версиях SunOS
может помочь следующая программа:

#include <pwd.h>
main()
{
struct passwd *p;
while(p = getpwent())
printf("%s:%s:%d:%d:%s:%s:%s\n", p->pw_name, p->pw_passwd, p->pw_uid,
p->pw_gid, p->pw_gecos, p->pw_dir, p->pw_shell);
}
---

2.2.2 Как узнать пароль в UNIX ?

Вопреки распространенным мнениям, пароли в UNIX не могут быть
расшифрованы. Шифpуются не паpоли. Шифpуется Salt. Salt - это две
первые буквы (5f) в 5fg63fhD3d5g - это то, что все считают шифрованным
паролем и находится в passwd во втором поле записи, cм. пред. пример.

Как задается пароль в Unix ?
a) Система вырабатывает Salt - случайные две буквы.
б) Запрашивает у пользователя пароль.
в) Шифрует Salt используя DES, пароль используется как ключ. (*)
г) Записывает Salt, плюс pезультат шифpования в passwd.
===========

В данном случае хеш - 5fg63fhD3d5g.
Вопрос: почему он такой короткий? В ВинНТ с помощью DES'а получается LMHash, который состоит из двух "половинок" по 8 байт. А тут не понятно как он был получен - длина 10(12) байт и еще символы, которые в HEX не входят (g, например). Как это обЪяснить?

Follow Ups:

Post a Followup
Name:
E-Mail:
Subject: Subject:

Comments:
Optional link:
Link title:
Optional image:


K-Words: иконка в адресной строке, password hack

[hacking & security news] [articles, programing info] [uinC info board] [links, soft & more...][home]
 Underground InformatioN Center [&Forum]