wstcjmg created ZOOKEEPER-4839:
----------------------------------

             Summary: When DigestMD5 is used to enable mandatory client 
authentication,Users that do not exist can log in
                 Key: ZOOKEEPER-4839
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4839
             Project: ZooKeeper
          Issue Type: Bug
          Components: security
    Affects Versions: 3.9.2, 3.5.10
            Reporter: wstcjmg


When DigestMD5 is used to enable mandatory client authentication. Consider the 
following scenario: After successfully logging in with the correct user and 
password for the first time, change the user to keep the correct password for 
the last time, and you can still log in normally. I looked at both versions 
3.5.10 and 3.9.2. See the class SaslServerCallbackHandler server-side code. A 
global private variable called userName is defined, but in the 
handleNameCallback method, if the given user name is not configured, it simply 
returns without updating userName. This results in the handlePasswordCallback 
method still using the userName of the last successful login to retrieve, and 
naturally can find the last password, and the comparison is correct.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to