<div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div><div>I have seen a strange behaviour when I try to set a password longer than 512 bytes.<br></div><br>I guess because of CVE-2015-3238 the limit of the password was set to 512 bytes. That is why if I set a password of more than 512 bytes only first 512 are saved (<a href="https://git.fedorahosted.org/cgit/linux-pam.git/tree/modules/pam_unix/pam_unix_passwd.c#n313" target="_blank">maybe in this line</a>). The problem is the remaining characters. Using passwd, the rest of the characters go outside the command and are interpreted by next command (usually another prompt). That is why if you set, for example, this password:<br><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">ThisisalooooooooooooongpasswordAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnm0123456789012345678901234567890CVEecho "Hello"<br></blockquote><br></div><div>that is, 512 random characters and then echo "Hello", passwd set the password (only 512 characters) BUT the remaining characters are executed as a command. So with that password, passwd will update the password and then execute <br><br></div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">echo "Hello"<br></blockquote><br><br></div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">[root@localhost ~]# passwd username<br>Changing password for user username.<br>New password: <br>Retype new password: <br>passwd: all authentication tokens updated successfully.<br>[root@localhost ~]# echo "Hello"<br>Hello<br></blockquote><br></div><div>Why the remaining characters are executed? Why do not drop them? How can I manage them to prevent being interpreted by next command?<br></div><div><br></div><div>Cheers, <br></div><div><br clear="all"><div><div><div dir="ltr"><div>Pablo Hinojosa.    <a href="https://pgp.mit.edu/pks/lookup?op=get&search=0x947319E2CC58B86B" style="font-size:12.8px" target="_blank">CC58B86B</a><br><a href="http://pablohinojosa.is/this?utm_source=firma&utm_medium=correo&utm_campaign=firma" target="_blank">PabloHinojosa.is</a></div><div><br></div><div><br></div></div></div></div>
</div></div>
</div><br></div>