Dirty COW, tracked as CVE-2016-5195, was a race-condition vulnerability in Linux’s copy-on-write memory-management code. The flaw had existed since Linux kernel 2.6.22, released in September 2007, and allowed a local, unprivileged attacker to turn a read-only file mapping into a writable one. Successful exploitation could grant root privileges, alter protected binaries, install keyloggers, and evade ordinary system-log detection. Remote attackers could potentially chain it with other flaws that enabled non-privileged code execution. Phil Oester discovered the original exploit sample while investigating a compromised machine; its author remained unknown.
The vulnerability affected Linux-based operating systems, including Android devices running kernels predating the relevant fixes, and was reportedly being actively exploited by October 2016. Linus Torvalds committed a patch on October 18, 2016, while acknowledging he had attempted to fix the underlying issue eleven years earlier. Initial fixes were later found incomplete; a revised patch was released on November 27, 2017. Corrected kernel versions included 4.8.3, 4.7.9, and 4.4.26 and later, while Android devices before Android 7 were demonstrated to be rootable. Canonical made it one of the first vulnerabilities addressed through Ubuntu Live Patch, but unpatched legacy systems remained exposed.