Grayshell 一些基本的shell代码,当我学习
在学习Gray的过程中,我们会接触到一些基本的shell代码。比如在研究缓冲区溢出(Buffer Overflow)的过程中,可以使用以下命令来编译和调试代码。
在用户权限下运行以下命令:
gcc overflow.c -ggdb -mpreferred-stack-boundary=2 -fno-stack-protector -o overflow
gdb -g overflow
(gdb) run
(gdb) info req eip
(gdb) q
通过这些步骤,您可以进一步了解缓冲区溢出的细节。如果想深入研究缓冲区溢出的相关攻击技术,您可以访问Buffer Overflow Attacks页面,了解更多实际案例和防御措施。
我们继续探讨另一个示例:Meet.c的编译。同样在用户权限下运行:
gcc meet.c -ggdb -mpreferred-stack-boundary=2 -fno-stack-protector -z execstack -o meet
需要注意的是,代码中 ` 和 ' 之间的区别非常关键。特别是在执行如下命令时:
perl -e 'print \"x31xc0x31'
如果您对缓冲区溢出背后的工作原理感兴趣,可以参考A Buffer Overflow Study一文,该文详细探讨了这一技术的各个方面,帮助读者更好地理解和防御此类攻击。
下载地址
用户评论