Re: [PATCH V5 3/3] EVM: Allow runtime modification of the set of verified xattrs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, May 13, 2018 at 9:41 AM Mimi Zohar <zohar@xxxxxxxxxxxxxxxxxx> wrote:

> On Fri, 2018-05-11 at 16:12 -0700, Matthew Garrett wrote:
  > +
> > +     if (strcmp(xattr->name, ".") == 0) {
> > +             evm_xattrs_locked = 1;
> > +             inode = evm_xattrs->d_inode;
> > +             inode_lock(inode);
> > +             newattrs.ia_mode = S_IFREG | 0440;
> > +             newattrs.ia_valid = ATTR_MODE;
> > +             err = notify_change(evm_xattrs, &newattrs, NULL);
> > +             inode_unlock(inode);
> > +             audit_log_format(ab, "locked");
> > +             if (!err)
> > +                     err = count;
> > +             goto out;
> > +     }
> > +
> > +     audit_log_format(ab, "xattr=");
> > +     audit_log_untrustedstring(ab, xattr->name);
> > +
> > +     if (strncmp(xattr->name, XATTR_SECURITY_PREFIX,
> > +                 XATTR_SECURITY_PREFIX_LEN) != 0) {
> > +             err = -EINVAL;
> > +             goto out;
> > +     }

> This test now prevents locking the xattr names list.  Making this an
> else clause will fix it.

Are you sure? The check for "." happens before this, and jumps over the
rest of the function.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux Kernel]     [Linux Kernel Hardening]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux