Statements (32)
Predicate | Object |
---|---|
gptkbp:instanceOf |
Security feature
|
gptkbp:alsoKnownAs |
gptkb:Stack_Protector
SSP |
gptkbp:category |
Computer security
Compiler feature |
gptkbp:detects |
Checks canary value before function return
|
gptkbp:effect |
Terminates program on stack corruption
|
https://www.w3.org/2000/01/rdf-schema#label |
Stack Smashing Protection
|
gptkbp:implementedIn |
gptkb:GCC
gptkb:Clang gptkb:Microsoft_Visual_Studio |
gptkbp:introducedIn |
gptkb:GCC_4.1
Early 2000s |
gptkbp:limitation |
Can be bypassed with advanced exploits
Does not protect all functions by default |
gptkbp:option |
-fstack-protector
-fstack-protector-all -fstack-protector-strong /GS |
gptkbp:protectedBy |
Return address
Stack frame |
gptkbp:purpose |
Prevent stack buffer overflow attacks
|
gptkbp:relatedTo |
gptkb:Data_Execution_Prevention
gptkb:Address_Space_Layout_Randomization Buffer overflow Control flow integrity |
gptkbp:usedBy |
gptkb:Windows
gptkb:macOS gptkb:Linux |
gptkbp:uses |
Canary value
|
gptkbp:bfsParent |
gptkb:Hardened_Gentoo
|
gptkbp:bfsLayer |
7
|