|Main Archive Page > Month Archives > linux-security-module archives|
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, 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.
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
-- Stephen Smalley National Security Agency -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to email@example.com More majordomo info at http://vger.kernel.org/majordomo-info.html