Очистить запрос LDAP_bind - PullRequest
       11

Очистить запрос LDAP_bind

4 голосов
/ 17 декабря 2010

Я знаю, что когда я запрашиваю базу данных MySQL на PHP из введенных пользователем данных, данные должны быть обработаны.Для проекта, который я запускаю, я буду проходить аутентификацию в Active Directory для использования входа в систему с помощью функции ldap_bind ().

Я предпринял шаги, чтобы проверить пароль для предотвращения попытки анонимного связывания, но мне интересно, нужно ли мне предпринимать какие-либо другие меры предосторожности, которые я обычно принимаю при использовании введенных пользователем данных.Или Active Directory позаботится о себе?

Ответы [ 2 ]

4 голосов
/ 17 декабря 2010

Я парень из OpenLDAP, но, если я не ошибаюсь, нет способа использовать это с помощью специальных символов.

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

$ myname = preg_replace ("/ [^ a-zA-Z0-9_ \ -] /", "", $ myname);

Это исключило бы все, кроме строчных, прописных, чисел, подчеркивания, пробелов и тире. Всегда безопаснее использовать логику «разрешить только это», а не «отклонять что-то». Вы никогда не сможете думать обо ВСЕХ вещах, от которых можно отказаться.

2 голосов
/ 19 декабря 2010

Будьте внимательны, чтобы убедиться, что пароль не нулевой.Звучит глупо, но в соответствии со стандартом LDAP привязка с именем пользователя и паролем не считается анонимной привязкой и будет успешной.

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

...