Bug 1597766 (CVE-2018-13093) - CVE-2018-13093 kernel: NULL pointer dereference in lookup_slow function
Summary: CVE-2018-13093 kernel: NULL pointer dereference in lookup_slow function
Keywords:
Status: CLOSED ERRATA
Alias: CVE-2018-13093
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1597767 1597769 1601780 1601781 1601782 1601783
Blocks: 1597770
TreeView+ depends on / blocked
 
Reported: 2018-07-03 15:07 UTC by Laura Pardo
Modified: 2021-02-17 00:01 UTC (History)
44 users (show)

Fixed In Version: kernel 4.18-rc1
Doc Type: If docs needed, set a value
Doc Text:
An issue was discovered in the XFS filesystem in fs/xfs/xfs_icache.c in the Linux kernel. There is a NULL pointer dereference leading to a system panic in lookup_slow() on a NULL inode->i_ops pointer when doing pathwalks on a corrupted xfs image. This occurs because of a lack of proper validation that cached inodes are free during an allocation.
Clone Of:
Environment:
Last Closed: 2019-08-06 13:18:54 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2019:2029 0 None None None 2019-08-06 12:04:08 UTC
Red Hat Product Errata RHSA-2019:2043 0 None None None 2019-08-06 12:06:34 UTC

Description Laura Pardo 2018-07-03 15:07:07 UTC
An issue was discovered in the XFS filesystem in fs/xfs/xfs_icache.c in the Linux kernel. There is a NULL pointer dereference leading to a system panic in lookup_slow() on a NULL inode->i_ops pointer when doing pathwalks on a corrupted xfs image. This occurs because of a lack of proper validation that cached inodes are free during an allocation.

References:

https://bugzilla.kernel.org/show_bug.cgi?id=199367 	

Upstream patches:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=afca6c5b2595fc44383919fba740c194b0b76aff

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ee457001ed6c (related, mentioned in the first patch)

Comment 1 Laura Pardo 2018-07-03 15:08:43 UTC
Created kernel tracking bugs for this issue:

Affects: fedora-all [bug 1597767]

Comment 7 Vladis Dronov 2018-07-17 09:01:39 UTC
Notes:

While the flaw reproducer works when run as a privileged user (the "root"), this requires a mount of a certain filesystem image. An unprivileged attacker cannot do this even from a user+mount namespace:

$ unshare -U -r -m
# mount -t xfs fs.img mnt/
mount: mnt/: mount failed: Operation not permitted.

The article https://lwn.net/Articles/652468/ discusses unprivileged user mounts and hostile filesystem images:
 
> ... for the most part, the mount() system call is denied to processes running
> within user namespaces, even if they are privileged in their namespaces.

It also states that unprivileged filesystem mounts are not allowed as of now in the Linux kernel and probably won't be allowed in a future. Until that such flaws are considered as not exploitable:

> There were no proposals for solutions to the hostile-filesystem problem.
> But, in the absence of some sort of assurance that they can be made safe,
> unprivileged filesystem mounts are unlikely to gain acceptance; even if the
> feature gets into the kernel, distributions would be likely to disable it.

On the other hand, there is a potential possibility that still an attacker can trick a regular user to mount a malicious filesystem image, like trick him to insert an usb-flash-drive with a forged filesystem to a desktop system which will auto-mount it. In case this results only in a system crash (a DoS due to, for example, a NULL pointer dereference) the flaw impact is low but it still exists. In case of a flaw which results in a privilege escalation the flaw's impact is higher.

So the Red Hat would still consider bugs which require mounting a filesystem image to exploit as security flaws, though with Low severity.

Comment 8 errata-xmlrpc 2019-08-06 12:04:05 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2019:2029 https://access.redhat.com/errata/RHSA-2019:2029

Comment 9 errata-xmlrpc 2019-08-06 12:06:32 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2019:2043 https://access.redhat.com/errata/RHSA-2019:2043

Comment 10 Product Security DevOps Team 2019-08-06 13:18:54 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2018-13093


Note You need to log in before you can comment on or make changes to this bug.