I'm writing a report for a university assignment about the Dirty COW vulnerability that was discovered last October (CVE-2016-5195).
I grasp most of how the attack takes place.
However I have found pretty much nothing that explains what is really going on in the kernel, i.e. where the race condition is or more in general what enables the write on the read-only memory mappings.
The only seemingly relevant information I've found is this analysis, but it's just vaguely commented and I can't really extrapolate much information from it.
I would like to be able to at least give an overview of what really happens kernel-wise.
Is there any kernel expert who is able to explain it?