Stack smashing protection not enforced
栈粉碎保护未强制执行
描述
栈粉碎保护 (Stack Smashing Protection) 是一种漏洞利用缓解措施,有助于检测正在被利用的缓冲区溢出 (buffer overflows),并在恶意代码执行之前中止执行。该功能通过选择适当的函数、在函数序言 (prologue) 处存储一个金丝雀 (canary) 并在结语 (epilogue) 处检查其值来实现。
建议
通过指定 -fstack-protector-all 编译器标志来启用栈粉碎保护 (SSP)。
gcc -o output_file source_file.c -fstack-protector-all
链接
标准
- OWASP_MASVS_L1:
- MSTG_CODE_9
- OWASP_MASVS_L2:
- MSTG_CODE_9
- PCI_STANDARDS:
- REQ_2_2
- REQ_6_2
- REQ_6_3
- REQ_11_3
- OWASP_MASVS_v2_1:
- MASVS_RESILIENCE_4