Stack Smashing Protection (SSP, StackGuard) on puskurin ylivuotovirheiden havaitsemiseen käytetty tekniikka.[1][2] Tekniikkaa käytetään tietoturvahaavoittuvuuksien kuten ROP-hyökkäyksiltä suojaamiseen.[2]
Vuonna 1998 GCC-kääntäjässä esiteltiin StackGuard.[2][3] Menetelmä lisää pinossa olevien muuttujien ja paluuosoitteen väliin pienen canary-arvon (kanarialintu).[2] Kun ylivuoto tapahtuu canary-arvo ylikirjoittuu.[2] Funktiosta palattaessa arvo tarkistetaan ja jos arvo on muuttunut ohjelma pysäytetään.[2] IBM:llä on vastaava kääntäjässä toteutettava tekniikka nimeltään ProPolice.[4] Microsoftin Visual Studion /GS
-optio toteuttaa vastaavan ominaisuuden.[5]
Suojauksen tasoon voi myös vaikuttaa kääntäjän optioilla.[6]