module

AF_PACKET packet_set_ring Privilege Escalation

Disclosed
2017-03-29
Created
2018-06-14

Description

This module exploits a heap-out-of-bounds write in the packet_set_ring
function in net/packet/af_packet.c (AF_PACKET) in the Linux kernel
to execute code as root (CVE-2017-7308).

The bug was initially introduced in 2011 and patched in version 4.10.6,
potentially affecting a large number of kernels; however this exploit
targets only systems using Ubuntu Xenial kernels 4.8.0
including Linux distros based on Ubuntu Xenial, such as Linux Mint.

The target system must have unprivileged user namespaces enabled and
two or more CPU cores.

Bypasses for SMEP, SMAP and KASLR are included. Failed exploitation
may crash the kernel.

This module has been tested successfully on Linux Mint 18 (x86_64)
with kernel versions:

4.8.0-34-generic;
4.8.0-36-generic;
4.8.0-39-generic;
4.8.0-41-generic;
4.8.0-42-generic;
4.8.0-44-generic;
4.8.0-45-generic.

Authors

Andrey Konovalov
bcoles bcoles@gmail.com

Platform

Linux

Architectures

x86, x64

Module Options

To display the available options, load the module within the Metasploit console and run the commands ‘show options’ or ‘show advanced’:


msf > use exploit/linux/local/af_packet_packet_set_ring_priv_esc
msf exploit(af_packet_packet_set_ring_priv_esc) > show targets
...targets...
msf exploit(af_packet_packet_set_ring_priv_esc) > set TARGET < target-id >
msf exploit(af_packet_packet_set_ring_priv_esc) > show options
...show and set options...
msf exploit(af_packet_packet_set_ring_priv_esc) > exploit

Title
NEW

Explore Exposure Command

Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.