A Guide to Kernel Exploitation: Attacking the Core