①:ROP位数差别
这篇文章讲的很细:
(1条消息) [CTF pwn]傻傻分不清的execve、int80、syscall、system及shellcode_漫小牛的博客-优快云博客
核心区别就是:
对于32位和64位,要遵循各自的调用约定,32位时摆在栈空间,64位时放在rdi寄存器。
②:system与execve
参见这篇详细的讲解文章:
(1条消息) [CTF pwn]傻傻分不清的execve、int80、syscall、system及shellcode_漫小牛的博客-优快云博客
关键点就是:
- execve(“/bin/s
本文探讨了32位和64位ROP的调用约定差异,32位利用栈空间,64位则使用rdi寄存器。同时详细解释了system与execve的区别,execve是系统调用,会替换进程中的程序,而system是库函数,通过fork+execve+waitpid启动新进程,并因waitpid阻塞。system调用中,直接使用"/bin/sh"或通过环境变量"sh"均可启动shell。
订阅专栏 解锁全文
713

被折叠的 条评论
为什么被折叠?



