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 < 4.8.0-46, 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.
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_escmsf undefined(af_packet_packet_set_ring_priv_esc) > show actions ...actions...msf undefined(af_packet_packet_set_ring_priv_esc) > set ACTION < action-name >msf undefined(af_packet_packet_set_ring_priv_esc) > show options ...show and set options...msf undefined(af_packet_packet_set_ring_priv_esc) > runPrioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub