zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Nixon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-3197) Improve documentation in ZooKeeperServer.superSecret
Date Wed, 26 Dec 2018 18:53:00 GMT

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-3197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16729138#comment-16729138

Brian Nixon commented on ZOOKEEPER-3197:

Password is probably the wrong term for this variable (though it does suggest some potential
future work). It's more of a checksum that's used in reconnection, carries no security weight,
and is treated internally as if it carries no security weight.


[~breed] might be the only one left who knows the full story (it's telling that the secret
decodes to "Ben is Cool").


> Improve documentation in ZooKeeperServer.superSecret
> ----------------------------------------------------
>                 Key: ZOOKEEPER-3197
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3197
>             Project: ZooKeeper
>          Issue Type: Task
>            Reporter: Colm O hEigeartaigh
>            Priority: Trivial
> A security scan flagged the use of a hard-coded secret (ZooKeeperServer.superSecret)
in conjunction with a java Random instance to generate a password:
> byte[] generatePasswd(long id)
> {             Random r = new Random(id ^ superSecret);            
byte p[] = new byte[16];             r.nextBytes(p);             return
p;     }
> superSecret has the following javadoc:
>  /**
>     * This is the secret that we use to generate passwords, for the moment it
>     * is more of a sanity check.
>     */
> It is unclear from this comment and looking at the code why it is not a security risk.
It would be good to update the javadoc along the lines of "Using a hard-coded secret with
Random to generate a password is not a security risk because the resulting passwords are used
for X, Y, Z and not for authentication etc" or something would be very helpful for anyone
else looking at the code.

This message was sent by Atlassian JIRA

View raw message