Think Like a Hacker: Understanding Your Attackers to Understand Your Defenses