git: f9d3c6f4b5d1 - stable/13 - nfsclient: Avoid copying uninitialized bytes into statfs

Mark Johnston markj at FreeBSD.org
Thu Jul 29 12:13:54 UTC 2021


The branch stable/13 has been updated by markj:

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

commit f9d3c6f4b5d1a2a35b05a52bf598ebfca21d3322
Author:     Mark Johnston <markj at FreeBSD.org>
AuthorDate: 2021-07-15 16:18:17 +0000
Commit:     Mark Johnston <markj at FreeBSD.org>
CommitDate: 2021-07-29 12:11:16 +0000

    nfsclient: Avoid copying uninitialized bytes into statfs
    
    hst will be nul-terminated but the remaining space in the buffer is left
    uninitialized.  Avoid copying the entire buffer to ensure that
    uninitialized bytes are not leaked via statfs(2).
    
    Reported by:    KMSAN
    Reviewed by:    rmacklem
    Sponsored by:   The FreeBSD Foundation
    
    (cherry picked from commit 44de1834b53f4654cc2f6d76406f5705f8167927)
---
 sys/fs/nfsclient/nfs_clvfsops.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/fs/nfsclient/nfs_clvfsops.c b/sys/fs/nfsclient/nfs_clvfsops.c
index 974bc684bf5b..2fe30035b904 100644
--- a/sys/fs/nfsclient/nfs_clvfsops.c
+++ b/sys/fs/nfsclient/nfs_clvfsops.c
@@ -1562,7 +1562,7 @@ mountnfs(struct nfs_args *argp, struct mount *mp, struct sockaddr *nam,
 	nmp->nm_fhsize = argp->fhsize;
 	if (nmp->nm_fhsize > 0)
 		bcopy((caddr_t)argp->fh, (caddr_t)nmp->nm_fh, argp->fhsize);
-	bcopy(hst, mp->mnt_stat.f_mntfromname, MNAMELEN);
+	strlcpy(mp->mnt_stat.f_mntfromname, hst, MNAMELEN);
 	nmp->nm_nam = nam;
 	/* Set up the sockets and per-host congestion */
 	nmp->nm_sotype = argp->sotype;


More information about the dev-commits-src-branches mailing list