Speculative Buffer Overflows: Attacks and Defenses