Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Apr 2021 17:29:45 GMT
From:      Kyle Evans <kevans@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 223d6caabd2e - stable/13 - init: use explicit_bzero() for clearing passwords
Message-ID:  <202104011729.131HTjLN033437@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kevans:

URL: https://cgit.FreeBSD.org/src/commit/?id=223d6caabd2ebaa8f0498a4e33b3418661173dad

commit 223d6caabd2ebaa8f0498a4e33b3418661173dad
Author:     Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2021-03-03 03:38:37 +0000
Commit:     Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2021-04-01 17:29:06 +0000

    init: use explicit_bzero() for clearing passwords
    
    This is a nop in practice, because it cannot be proven that this
    particular bzero() is not significant.  Make it explicit anyways, rather
    than relying on an implementation detail of how the password is
    collected.
    
    Discussed with: Andrew Gierth <andrew tao146 riddles org uk>
    
    (cherry picked from commit 852f70b24043885f0e438e8fecedd482a9a96d5e)
---
 sbin/init/init.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sbin/init/init.c b/sbin/init/init.c
index c5f3c121f7f9..943db9f26bd3 100644
--- a/sbin/init/init.c
+++ b/sbin/init/init.c
@@ -908,7 +908,7 @@ single_user(void)
 				if (clear == NULL || *clear == '\0')
 					_exit(0);
 				password = crypt(clear, pp->pw_passwd);
-				bzero(clear, _PASSWORD_LEN);
+				explicit_bzero(clear, _PASSWORD_LEN);
 				if (password != NULL &&
 				    strcmp(password, pp->pw_passwd) == 0)
 					break;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202104011729.131HTjLN033437>