Stack Protector Compiler modification which catches most common stack-smashing problems Original: http://www.trl.ibm.com/projects/security/ssp/ Compiler instruments generated code for each function: Prologue stores a random value (canary) on the stack Function Epilogue aborts if value has changed Integrated into OpenBSD in December 2002 Industry (mostly Google) now making further enhancements