Stack Smashing Protection
Siirry navigaatioon
Siirry hakuun
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]
Katso myös
[muokkaa | muokkaa wikitekstiä]Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ On the effectiveness of NX, SSP, RenewSSP and ASLR against stack buffer overflows (PDF) hmarco.org. Viitattu 20.9.2020. (englanniksi)
- ↑ a b c d e f Security Technologies: Stack Smashing Protection (StackGuard) access.redhat.com. 20.8.2018. Viitattu 24.9.2020. (englanniksi)
- ↑ StackGuard: Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks usenix.org. Viitattu 24.9.2020. (englanniksi)
- ↑ Prevent Stack-Smashing Attacks oreilly.com. Viitattu 24.9.2020. (englanniksi)
- ↑ /GS (Buffer Security Check) docs.microsoft.com. 11.4.2016. Viitattu 24.9.2020. (englanniksi)
- ↑ Jake Edge: "Strong" stack protection for GCC lwn.net. 5.2.2014. Viitattu 24.9.2020. (englanniksi)