Code-reuse attacks: new frontiers and defenses
Defeating return-oriented rootkits with "Return-Less" kernels