Насколько безопасен ваш пароль в LDAP?

Защищен ли ваш пароль каким-либо образом, если он хранится в LDAP, а не в базе данных или зашифрованном файле?

Ответы

Ответ 1

Пароли хранятся как хешированные строки в каталогах LDAP. OpenLDAP, например, поддерживает схемы соленых SHA1 {SSHA}, crypt {CRYPT} (зависит от ОС), MD5 {MD5}, соленое MD5 {SMD5} и SHA1 {SHA}. Я думаю, что серверы Active Directory хранят какой-то хэш-код LM и/или NT-хэш.

Учитывая тот факт, что хранение пароля в каталоге LDAP не более или менее безопасно, чем хранение хешированного пароля (такого же хэширования) в файле или базе данных SQL. Каждый, кто имеет прямой доступ к базовой структуре данных, может, по крайней мере, считывать значение хэшированного пароля (если данные дополнительно не зашифровываются на основе файловой системы).

Решение о том, следует ли использовать LDAP или какой-либо другой механизм хранения учетной записи, несомненно, не будет основываться на факте сохранения защищенных паролей. Решение скорее будет основано на том, как будет выполняться аутентификация и какие другие требования вы должны выполнить. LDAP пригодится, когда вам нужно подключить разные клиенты к центральной системе аутентификации (например, проприетарное программное обеспечение, серверы электронной почты) или если вы должны интегрировать его в какой-то сценарий аутентификации KERBEROS или SASL.

Ответ 2

Пароли столь же безопасны, как и самая слабая связь между пользователем и местом, где хранится пароль. В основном это означает, что он не только хранит пароль, который должен быть защищен, но и линии соединения между пользователем и хранилищем. Когда сервер и связь защищены, самым слабым звеном часто оказывается пользователь. (Потому что пользователи иногда имеют объем памяти питомца.)

Один мой коллега потерял свой ноутбук, и он был очень обеспокоен тем, что вор получит доступ ко всем секретным вещам в своей системе. Как оказалось, он приложил маленькую записку на своем ноутбуке с его паролем. И, к сожалению, он не единственный человек в этом мире, который просто пишет пароли на заметку рядом со своим компьютером.

Ответ 3

LDAP - это протокол связи, способ хранения пароля в значительной степени зависит от системы каталогов. См. аутентификация пользователей NTLM в Windows для того, что делает Windows, например.

Совместимый с LAN Manager пароль совместимый с паролем, который используемый диспетчером LAN. Этот пароль на основе оригинального оборудования производитель (OEM) набор символов. Эта пароль не чувствителен к регистру и может длиной до 14 символов. OWF версия этого пароля также известна как OWF LAN Manager или ESTD версия. Этот пароль вычисляется используя шифрование DES для шифрования постоянный с четким текстовым паролем. Пароль OWF для LAN Manager равен 16 байтов. Первые 7 байт текстовый пароль используется для вычислить первые 8 байтов локальной сети Пароль менеджера OWF. Второй 7 байты текстового пароля используется для обработки вторых 8 байтов пароль OWF LAN Manager.

Пароль Windows основан на Набор символов Unicode. Этот пароль чувствителен к регистру и может быть до 128 длинные символы. Версия OWF этот пароль также известен как Пароль Windows OWF. Этот пароль вычисленный с использованием RSA MD-4 алгоритм шифрования. Этот алгоритм вычисляет 16-байтовый дайджест строка с переменной длиной четкого текста пароль.

Это не особенно безопасно, но Active Directory обычно реализуется с блокировкой после нескольких неудачных попыток, так что не так уж плохо. В общем, любой код, написанный продавцом, лучше, чем развертывание собственного.

Это также зависит от того, как вы храните свой пароль в базе данных и какие политики применяются. Хранение простого пароля, unhashed или unencrypted - ужасная идея. Обычно система каталогов позаботится об этом. Например, AD может также требовать сложность пароля и предотвратить повторное использование одного и того же пароля и т.д. Ввод его в файл, где он доступен злоумышленнику, будет плохой идеей.

Ответ 4

Пока вы не открываете свой пароль в незашифрованном виде в сети, он так же безопасен, как хранение хэшированных паролей в базах данных. В зависимости от реализации сервера LDAP вы можете использовать множество различных типов хэшей.

OpenLDAP предлагает CRYPT, MD5, SMD5, SSHA и SHA (согласно моей странице).

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

Ответ 5

С LDAP пароль проверяется на сервере. Дизайн не является намного более безопасным по дизайну. Но есть много решений SSO, использующих LDAP, поэтому существует очень большая пользовательская база.