Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1641878 - (CVE-2018-18559) CVE-2018-18559 kernel: Use-after-free due to race condition in AF_PACKET implementation
CVE-2018-18559 kernel: Use-after-free due to race condition in AF_PACKET impl...
Status: NEW
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
unspecified
All Linux
high Severity high
: ---
: ---
Assigned To: Red Hat Product Security
impact=important,public=20180615,repo...
: Security
Depends On: 1643680 1643681 1643682 1643683 1643684 1643685 1641879 1641880 1641881
Blocks: 1641883
  Show dependency treegraph
 
Reported: 2018-10-23 01:44 EDT by Sam Fowler
Modified: 2018-11-01 07:42 EDT (History)
51 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
A use-after-free flaw can occur in the Linux kernel due to a race condition between packet_do_bind() and packet_notifier() functions called for an AF_PACKET socket. An unprivileged, local user could use this flaw to induce kernel memory corruption on the system, leading to an unresponsive system or to a crash. Due to the nature of the flaw, privilege escalation cannot be fully ruled out.
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Sam Fowler 2018-10-23 01:44:59 EDT
A use-after-free flaw can occur in the Linux kernel due to a race condition between packet_do_bind() and packet_notifier() functions called for an AF_PACKET socket. An unprivileged local user could use this flaw to induce kernel memory corruption on the system, leading to an unresponsive system or to a crash. Due to the nature of the flaw, privilege escalation cannot be fully ruled out, although we believe it is unlikely.

External Reference:

https://blogs.securiteam.com/index.php/archives/3731

A probable fix:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=15fe076edea787807a7cdc168df832544b58eba6
Comment 1 Sam Fowler 2018-10-23 01:46:07 EDT
Created kernel tracking bugs for this issue:

Affects: fedora-all [bug 1641879]
Comment 3 Evgenii Shatokhin 2018-10-26 06:00:56 EDT
I guess, there is a bit of confusion here.

If I understand it correctly, mainline commit 15fe076edea787807a7cdc168df832544b58eba6 "net/packet: fix a race in packet_bind() and packet_notifier()" is the actual fix for the problem.

It seems, its authors just did not know that the race can lead to an exploitable use-after-free as well.

The kernel 3.10.0-862.14.4 from RHEL7 does not have that mainline fix. Not sure about the newer ones.

By the way, I have checked the exploit on our custom kernel based on 3.10.0-862.11.6 from RHEL 7 - if run as a non-root user, it causes kernel crashes or (in some cases) soft lockups within minutes. I added that patch from mainline, tried the exploit again - no such problems happened this time.
Comment 5 Vladis Dronov 2018-10-26 13:42:32 EDT
(In reply to Evgenii Shatokhin from comment #3)
> If I understand it correctly, mainline commit
> 15fe076edea787807a7cdc168df832544b58eba6 "net/packet: fix a race in
> packet_bind() and packet_notifier()" is the actual fix for the problem.

Evgenii, thank you for your update. Indeed, the wording in the securiteam's article regarding 15fe076edea7 is, at least, unclear.

> I added that patch
> from mainline, tried the exploit again - no such problems happened this time.

Yes, RHEL-7 is vulnerable to this flaw without the commit 15fe076edea7 and looks like behaving correctly with this commit. so, probably this is the fix indeed.

Thank you for your research and confirmation!
Comment 8 Justin M. Forbes 2018-11-01 07:42:12 EDT
This was fixed for Fedora with the 4.15 kernel rebases.

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