linux缓冲区溢出实验.docVIP

  • 20
  • 0
  • 约6.23千字
  • 约 14页
  • 2017-02-27 发布于湖北
  • 举报
缓冲区溢出攻击实验 【实验要求】 1)基本要求: 编写一个能实现缓冲区溢出(整数溢出或堆栈溢出)的程序。语言不限(c,c++,c#,java等均可),环境也不限(linux或windows等)。并在调试状态下(如linux的gdb或其他集成开发环境的调试命令)查看寄存器和相应存储单元内容的变化情况。分析并解释缓冲区溢出的原因。 提交:分析文档(要给出调试过程和运行过程中的一些必要的截图),源代码等。 2)提高要求: 在上述溢出的情况下,改写ret地址,增加shellcode代码,实现本地或远程管理员权限的非授权访问。 例:一个简单的shellcode程序: /* linux下的一个程序*/ #include stdio.h void main() { char *name[2]; name[0]=/bin/sh; name[1]=NULL; execve(name[0],name,NULL); } 也可用gdb对其反汇编(主要分析execve和exit函数调用的机器指令),获得相关的汇编代码,进一步处理为16进制机器代码,形如char shellcode[]=\xeb\xlf.......\bin\sh;然后利用strcpy等脆弱性函数植入shellcode

文档评论(0)

1亿VIP精品文档

相关文档