The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Dovecot авторизация позволяет дописать к паролю что угодно"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта / FreeBSD)
Изначальное сообщение [ Отслеживать ]

"Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 24-Апр-12, 17:59 
Здравствуйте!

Имеем: Dovecot 2.1.3, авторизацию mysql, пароли в схеме CRYPT и запрос пароля вида:

password_query = SELECT email as user, password FROM users WHERE email = '%n@%d'

Для создания пароля используется mysql-функция ENCRYPT.
-------------

Проблема 1: при авторизации, если дописать к паролю какую-нибудь абракадабру, то авторизация выполняется успешно.

Проблема 2: если пароль 'mysecretcity' изменить на 'mysecretcity495', то авторизация будет и дальше происходить успешно по паролю 'mysecretcity'.
Если изменить пароль на совсем другой '4sdfgwdsfs', то авторизация уже не происходит.

Подскажите кто знает, куда копать?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 24-Апр-12, 18:25 
Вот что понял: он считает пароль верным, если совпадают первые 8 символов!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Dovecot авторизация позволяет дописать к паролю что угодно"  +1 +/
Сообщение от cryo (ok) on 24-Апр-12, 18:29 
> Вот что понял: он считает пароль верным, если совпадают первые 8 символов!

http://forums.mysql.com/read.php?30,7208,8396

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Andrey Mitrofanov on 24-Апр-12, 18:30 
> Вот что понял: он считает пароль верным, если совпадают первые 8 символов!

""The traditional DES-crypt scheme only uses the first 8 characters of the password, the rest are ignored."" - http://wiki.dovecot.org/Authentication/PasswordSchemes

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 24-Апр-12, 18:37 
>> Вот что понял: он считает пароль верным, если совпадают первые 8 символов!
> ""The traditional DES-crypt scheme only uses the first 8 characters of the
> password, the rest are ignored."" - http://wiki.dovecot.org/Authentication/PasswordSchemes

Да вот тоже читаю это сейчас и никак не пойму что же мне теперь делать.

У знакомого в Linux с такой же схемой нет таких глюков.

Вот думаю надо этой строкой из вики:

"Dovecot uses libc's crypt() function, which means that CRYPT is usually able to recognize MD5-CRYPT and possibly also other password schemes. Please see the notes below regarding glibc's crypt() and SHA-256/512 support. "

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Dovecot авторизация позволяет дописать к паролю что угодно"  +1 +/
Сообщение от Andrey Mitrofanov on 24-Апр-12, 19:38 
> Да вот тоже читаю это сейчас и никак не пойму что же
> мне теперь делать.

Я на локалхосте ни до чего не додумался :( - положил пароли плейнтекстом.

> Вот думаю надо этой строкой из вики:
> "Dovecot uses libc's crypt() function, which means that CRYPT is usually able
> to recognize MD5-CRYPT and possibly also other password schemes. Please see
> the notes below regarding glibc's crypt() and SHA-256/512 support. "

Посмотреть (как?), что умеет имеющийся на руках libc и его сrypt().

Попробовать хеши паролей, например, в "других" схемах, те что $1$ / $5$ / $6$ / чего там ещё?...

)))
$ echo 'CRYPT MD5 MD5-CRYPT SHA SHA1 SMD5 SSHA PLAIN CLEARTEXT CRAM-MD5 HMAC-MD5 DIGEST-MD5 PLAIN-MD4 PLAIN-MD5 LDAP-MD5 LANMAN NTLM RPA'|xargs -n1 /usr/sbin/dovecotpw -p 1 -u x -s

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 24-Апр-12, 20:36 

> Попробовать хеши паролей, например, в "других" схемах, те что $1$ / $5$
> / $6$ / чего там ещё?...
> )))
> $ echo 'CRYPT MD5 MD5-CRYPT SHA SHA1 SMD5 SSHA PLAIN CLEARTEXT CRAM-MD5
> HMAC-MD5 DIGEST-MD5 PLAIN-MD4 PLAIN-MD5 LDAP-MD5 LANMAN NTLM RPA'|xargs -n1 /usr/sbin/dovecotpw
> -p 1 -u x -s

Но у меня уже в базе существует >300 юзеров в CRYPT.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Dovecot авторизация позволяет дописать к паролю что угодно"  +1 +/
Сообщение от Andrey Mitrofanov on 25-Апр-12, 09:50 
> Но у меня уже в базе существует >300 юзеров в CRYPT.

Во http://wiki2.dovecot.org/HowTo/ConvertPasswordSchemes , шайтан-арба!

Добавляет к старому CRYPY хэшу новый SSHA256 шпионскимВ)) скриптом прямо _во _время логина пользователя, внутри pop3 сервера.

При этом оно "едет" и на _"перемешанных"_ хешах: старые лежат с префиксом {CRYPT}, новые - уже с {SSHA256.hex}.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Andrey Mitrofanov on 25-Апр-12, 09:54 
> Добавляет к старому CRYPY хэшу новый SSHA256

_Заменяет старый новым, точнее.

ЗЫ:
- $ echo 'CRYPT MD5 MD5-CRYPT SHA SHA1 SMD5 SSHA PLAIN CLEARTEXT CRAM-MD5 HMAC-MD5 DIGEST-MD5 PLAIN-MD4 PLAIN-MD5 LDAP-MD5 LANMAN NTLM RPA'|xargs ...
+ $ /usr/sbin/dovecotpw -l |xargs ...

Надо было man почитать ещё немного, предже чем копипастить %)ашлело.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

10. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 25-Апр-12, 10:58 
> ...
> + $ /usr/sbin/dovecotpw -l |xargs ...
> Надо было man почитать ещё немного, предже чем копипастить %)ашлело.

А у меня нет dovecotpw. :(

find /usr -type f -name 'dovecotpw'

...и ничего

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

9. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 25-Апр-12, 10:51 
>> Но у меня уже в базе существует >300 юзеров в CRYPT.
> Во http://wiki2.dovecot.org/HowTo/ConvertPasswordSchemes , шайтан-арба!

Оо! Спасибо) Проглядел в вики эту страничку )

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

11. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 25-Апр-12, 11:32 
Я так понимаю, этим способом из вики можно сконвертить все пароли в md5, а потом юзать md5 при создания пароля через SQL-функцию... А то что-то я не нашел другого типа шифрования, чтобы и Dovecot и MySQL 5.1 поддерживали из коробки.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Andrey Mitrofanov on 25-Апр-12, 13:18 
> то что-то я не нашел другого типа шифрования, чтобы и Dovecot
> и MySQL 5.1 поддерживали из коробки.

А зачем тебе поддержка именно в mysql? Хранит себе _строку и хранит.

Давкот хеши по {ИМЕНАМ} схемы понимает/различает.

Так что единственная проблема - тот, кто _добавляет/изменяет пароли пользователей в базе.

Postfixadmin, например, умеет всяние схемы, в т.ч. все, что умеет dovecotpw, явно (через него и пропускает, видимо).

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

13. "Dovecot авторизация позволяет дописать к паролю что угодно"  +/
Сообщение от Nas_tradamus (ok) on 25-Апр-12, 13:28 
>> то что-то я не нашел другого типа шифрования, чтобы и Dovecot
>> и MySQL 5.1 поддерживали из коробки.
> А зачем тебе поддержка именно в mysql? Хранит себе _строку и хранит.
> Давкот хеши по {ИМЕНАМ} схемы понимает/различает.
> Так что единственная проблема - тот, кто _добавляет/изменяет пароли пользователей в базе.
> Postfixadmin, например, умеет всяние схемы, в т.ч. все, что умеет dovecotpw, явно
> (через него и пропускает, видимо).

Дело в том, что юзеры добавляются через phpmyadmin - там просто выбираешь функцию ENCRYPT и не надо ничего шаманить.
Нужно чтобы и эникейщики могли справиться с генерацией пароля :)

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру