Re: HEADS UP: Re: FreeBSD Security Advisory FreeBSD-SA-07:01.jai

看板FB_security作者時間19年前 (2007/01/16 10:21), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串12/22 (看更多)
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Colin Percival wrote: > No. `cp -f` unlinks the existing file and creates a new file, but will > still follow a symlink if one is created between the "unlink" syscall and > the "open" syscall. > > /* remove existing destination file name, > * create a new file */ > (void)unlink(to.p_path); > if (!lflag) > to_fd = open(to.p_path, O_WRONLY | O_TRUNC | O_CREAT, > fs->st_mode & ~(S_ISUID | S_ISGID)); You are right. Atomically in binary is not atomical enough. mv in its rename()-form will do the job, so we need to create a file in .. by mktemp and mv it to the real name when filled. Regards erdgeist -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (Darwin) iD8DBQFFrDWmImmQdUyYEgkRAgSgAJ0c5mcaM4LByBUE0LC1Iqdj8ZFSAACdF9qM fFETX4I+Fvue0u+343bBG8c= =MkSh -----END PGP SIGNATURE----- _______________________________________________ freebsd-security@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-security To unsubscribe, send any mail to "freebsd-security-unsubscribe@freebsd.org"
文章代碼(AID): #15h3QU00 (FB_security)
討論串 (同標題文章)
完整討論串 (本文為第 12 之 22 篇):
文章代碼(AID): #15h3QU00 (FB_security)