是什么设置fs:[0x28](堆栈金丝雀)?
从这篇文章中可以看出,这FS:[0x28]是一个堆栈-canary。我正在使用此功能的GCC生成相同的代码, void foo () { char a[500] = {}; printf("%s", a); } 具体来说,我正在开会。 0x000006b5 64488b042528. mov rax, qword fs:[0x28] ; [0x28:8]=0x1978 ; '(' ; "x\x19" 0x000006be 488945f8 mov qword [local_8h], rax ...stuff... 0x00000700 488b45f8 mov rax, qword [local_8h] 0x00000704 644833042528. xor rax, qword fs:[0x28] 0x0000070d 7405 je 0x714 0x0000070f e85cfeffff …