On Tue, 2010-03-02 at 19:01 +1100, James Morris wrote: > I noticed that there are differences in the behavior of listxattr(2) for > xattrs in the trusted namespace. > > Some filesystems, such as ext[234], require CAP_SYS_ADMIN for this, i.e. > trusted xattr names are hidden from unprivileged users. > > I audited the kernel for users of the trusted xattr namespace, and found > the following filesystems not checking for CAP_SYS_ADMIN: > > - jffs2 > - ocfs2 > - btrfs > - xfs > > I've created patches for jffs2 (tested) and ocfs2 (not tested) to add the > check -- see following emails. btrfs and xfs have custom listxattr > operations and will need a bit more work to fix. > > I'm not sure what the initial intention was for the behavior, although > given that several major filesystems are have been fielded with the > CAP_SYS_ADMIN check, it seems most prudent to make this the standard > behavior for all filesystems, in case any users are depending on it. > > Thoughts? Should it be using has_capability_noaudit() rather than capable() so that merely calling listxattr() on a file that happens to have trusted xattrs does not set PF_SUPERPRIV on the task and does not trigger an audit message? -- Stephen Smalley National Security Agency -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html