Skip to main content
← All vulnerabilities
CVE-2017-1000112

Linux kernel: Exploitable memory corruption due to UFO to non-UFO path switch.

Published
Last modified
published
Not listed in CISA KEV
4 on Exploit-DB, 1 Metasploit module, 5 proofs of concept on GitHub

Summary

Linux kernel: Exploitable memory corruption due to UFO to non-UFO path switch. When building a UFO packet with MSG_MORE __ip_append_data() calls ip_ufo_append_data() to append. However in between two send() calls, the append path can be switched from UFO to non-UFO one, which leads to a memory corruption. In case UFO packet lengths exceeds MTU, copy = maxfraglen - skb->len becomes negative on the non-UFO path and the branch to allocate new skb is taken. This triggers fragmentation and computation of fraggap = skb_prev->len - maxfraglen. Fraggap can exceed MTU, causing copy = datalen - transhdrlen - fraggap to become negative. Subsequently skb_copy_and_csum_bits() writes out-of-bounds. A similar issue is present in IPv6 code. The bug was introduced in e89e9cf539a2 ("[IPv4/IPv6]: UFO Scatter-gather approach") on Oct 18 2005.

Timeline

  1. Public exploit on Exploit-DB

    EDB-43418, EDB-45147, EDB-45147, EDB-47169

  2. CVE published
  3. Record last updated
  4. EPSS reached 10%

    FIRST estimates at least a 10% chance of exploitation in the next 30 days

Affected versions

  • n/a n/a

    Version range not reported

References 22

seclists.org

access.redhat.com

securityfocus.com

debian.org

GitHub · xairy/kernel-exploits

securitytracker.com

Exploit-DB

GitHub · rapid7/metasploit-framework

GitHub · IT19083124/SNP-Assignment

GitHub · Spydomain/CVE-2017-1000112-PoC

GitHub · WhatsWrongAndWhy/CVE-2017-1000112

GitHub · hikame/docker_escape_pwn

GitHub · ol0273st-s/CVE-2017-1000112-Adpated