Code Pointer Masking: Hardening Applications against Code Injection Attacks
Low-level software security: Attacks and defenses