Identifying, Attacking and Preventing Buffer Overflows