LDAP 服务器、PHP,并且不允许使用空密码。
我的代码当前检查密码是否为 true(是的,我将排除一些可能是有效的非空 LDAP 密码的值,例如"0"
)以避免允许使用 LDAP 进行空白密码登录。但这足够了吗?
是否可以创建一个 PHP 认为非空但会被 LDAP 视为空白密码的值?也许是一个带有0x0
(空 C 字符串)的字符串或其他一些类似骇客的怪物?
LDAP 服务器、PHP,并且不允许使用空密码。
我的代码当前检查密码是否为 true(是的,我将排除一些可能是有效的非空 LDAP 密码的值,例如"0"
)以避免允许使用 LDAP 进行空白密码登录。但这足够了吗?
是否可以创建一个 PHP 认为非空但会被 LDAP 视为空白密码的值?也许是一个带有0x0
(空 C 字符串)的字符串或其他一些类似骇客的怪物?
LDAP 标准涵盖了关于简单 BIND 操作的三种可能性,以及标准未解决的一种可能性:
最后,LDAP 标准没有解决:
服务器对前两个所做的取决于服务器的配置,但由于没有进行身份验证,如果服务器配置正确,则应该拒绝 BIND 操作。