码迷,mamicode.com
首页 > 其他好文 > 详细

Buffer Over Flow Vulnerability

时间:2015-06-03 11:37:55      阅读:93      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!