WELCOME



Онлайн всего: 1
Гостей: 1
Пользователей: 0
 
Главная » 2007 » Апрель » 26 » Пароли в Unix'e
Пароли в Unix'e
7:48 PM
Файл паролей в UNIX'e - это /etc/passwd. Причем маленькими буквами, если кто не в курсе.

Если вместо паролей стоят *, это значит: либо нет входа по этим паролям, либо пароли спрятаны- shadowed. Тогда пароли хранятся в файле /etc/shadow или /etc/master.passwd, который недоступен для чтения. Есть варианты, когда в поле пароля стоит текст типа "##root", "##egor", то есть имена пользователей - тогда зашифрованный пароль берется из /etc/shadow или master.passwd, по соответствующему пользователю. То есть если логин egor имеет запись в поле паролей "##quake", тогда его пароль берется из поля пароля в файле passwd пользователя quake. To есть, это просто ссылка. В таких системах (например, Minix) спрятанные пароли являются родными.

Файл паролей, который вы можете ftpнуть - это фейк. FTP-каталог формируется так:

/home/ftp/bin

/home/ftp/etc

/home/ftp/pub

/hone/ftp/

Когда вы телнетитесь на порт 21 (или делаете ftp) то для вас корнем становится каталог /home/ftp/ удаленной машины. А на ней в /home/ftp/etc есть и файл групп - group и файл passwd, которые являются, по сути, фейком.

Пароли в Unixе шифруются так: salt+пароль зашифровывается по ключу пароль.

Таким образом, если мы вводим себе пароль "doomii", то отфонарно генерится salt (две буквы) и производится такая зашифровка: ".i" - salt, "doomii" - то, что шифруется, и "doomii" - ключ. Шифровка осуществляется алгоритмом DES. salt - это две буквы, специальная примочка для хакеров - они генерятся отфонарно в момент шифровки. Таким образом, исключается написание компиляторов словарей - программы, которая бы один раз зашифровала весь файл паролей, и перебор длился бы приблизительно 1 сек. Итак, мы пришли к тому, что функция шифрования является односторонней. Когда пользователь при входе вводит пароль, читаются две буквы из файла паролей - первые две буквы зашифрованного пароля - salt. По ним производится та же операция, что и выше, только saltом являются эти две буквы. После шифрования зашифрованный текст сравнивается. И если он совпадает, то это либо юзер, либо хакер. Пароль может состоять из: 32-127. По определению - не короче 6 символов, не длиннее 8.

Но. Некоторые Юниксы пропускают пароли любой длины до 8 символов, а некоторые - до 16.

Как правило, когда вы решаете менять свой пароль, Юникс проверяет приведенный пароль на следующие вещи: чтобы все буквы не были одного case-a, и чтобы это не было слово. Юникс прошаривает у себя словарь (около двух метров, как правило) на тему: а не ввел ли юзер обычное слово. И такие пароли отвергает. Есть еще некоторые нюансы, по которым он определяет, что пароль слишком прост для взлома - например, если все цифры. Этого всего не происходит, если пароль вводит root -предполагается, что рут может делать все, что хочет, в т.ч. и вводить простые пароли.

Форма файла паролей такова:

login: password: UID: GID: comments: home: shell

где

login: имя логина, например, egor, vasya, или root. Кстати, рут, как правило, не может дистанционно залогинится на машину.

password: пароль в том самом зашифрованном виде. Например:

"piGH5fh32IjPb" - это поле, как правило, 13 символов. Также тут содержатся подполя, которые используются для определения возраста пароля - если он, скажем, достаточно стар, то Юникс потребует его сменить, или не даст сменить, если пароль недостаточно стар. Как правило, такую фичу не используют.

UID: User ID. Номер пользователя для файловой системы.

GID: Group ID. Номер группы для файловой системы.

Comments: Как правило, имя пользователя. Также есть подполя, в которых указывается офис, номер телефона офиса, дома и т.д.

home: домашний каталог. Это отдельная файловая система, которая монтируется как /usr, где подкаталог egor, скажем, является для меня домашним. Либо, домашний каталог может относится к /home.

shell: шелл для логина. Как правило, /bin/sh.

Формат /etc/shadow aka /etc/master.passwd:

login: password

Теперь ближе к теме: как ломать. Ломать пароли статистическим методом нельзя - давайте вычислим скорость работы. Итак, 127-32 символа = 95. Теперь 95^количество_букв. Как правило, 8. Это 95*95*95*95*95*95*95*95 =...

Теперь смотрите. Зашифровка 2000*8 байт длится на 486dx4-120 около 900 ms - то есть секунда - это 2100*8 байт. Если мы разделим 95^8 на (2100*8) - мы получим количество секунд для полного перебора всех вариантов одного логина. Но это на 486dx4-120 - около двух лет!!! Так что этот метод отбрасывается напрочь.

Но ломают же как-то? Просто. Brute-force метод - метод словаря. Мы имеем словарь английских слов, который и перебирается. Больше словарь - больше шансов.

Многочисленные программы brute-force крэкинга, умеют извращать слова из словаря по ходу крэкинга.

Таким образом, когда попадается в словаре слово "spaces", то программа проверяет: "spaces", "Spaces", "SPACES", "SpaceS", "spaceS", ну и т.д.

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

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

Возможно, вас это удивит, но такой подход все равно используется (например, в QCrackby Crypt Keeper). 4096 различных salt'oв - не так много. Тем более, если учесть, что достаточно хранить по одному байту от шифрованных слов (т.е. получаем 4 Kb на слово), т.к. можно использовать такой алгоритм перебора: если первый байт шифрованного пароля не совпадает - к следующему, если совпадает, ну, ничего не поделать - вызов crypt(). Получаем быстродействие в 256 раз выше, чем в обычных wordlist крекерах ценой размера wordlist'a, который увеличится примерно в 500 раз. Так что можно взять wordlist где-нибудь на мегабайт, один раз зашифровать, записать на CD-ROM и продавать.

http://ave666satanas.narod.ru/BEST-HACKER/paroli-v-UNIXE.html

Категория: Хакерство и компьютер | Просмотров: 724 | Добавил: privatelife | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Суббота
2024-05-04
9:46 PM
Календарь новостей
«  Апрель 2007  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30
Разделы новостей
ХРИСТАНСТВО [4]
MISTIKA [46]
WELCOME
GAMES [16]
EROTIC [18]
Интернет и компьютеры [14]
Хакерство и компьютер [12]
SATANISM [6]
Древнее и Соврименные Языки [8]
Форма входа
Приветствую Вас Гость!
Наш опрос
Оцените мой сайт
Всего ответов: 42
Друзья сайта

Copyright MyCorp © 2024
Создать бесплатный сайт с uCoz