文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>一个利用缓冲区溢出执行代码的例子

一个利用缓冲区溢出执行代码的例子

时间:2010-06-29  来源:platinum


#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main (int argc, char **argv)
{
        int num = 0;
        char buffer[11] = {0};

        printf("num: %d\n", num);
        num = write(1, "buffer: ", 8);
        num = read(0, buffer, 10);
        printf("num: %d\n", num);
        printf("buffer: %s\n", buffer);

        return 0;
}


第一次运行:
root@platinum:/tmp
# ./a
num: 0
buffer: asdfasdf
num: 9
buffer: asdfasdf

root@platinum:/tmp
#

第二次运行:
root@platinum:/tmp
# ./a
num: 0
buffer: asdfasdfasdf
num: 10
buffer: asdfasdfas
root@platinum:/tmp
# df
文件系统             1K-块      已用      可用 已用% 挂载点
/dev/sda7             10369596   8918040   1451556  87% /
udev                     10240       284      9956   3% /dev
shm                    1028440         0   1028440   0% /dev/shm
/dev/sda1             20972824  14057852   6914972  68% /mnt/c
/dev/sda5            123893248 110845364  13047884  90% /mnt/d
root@platinum:/tmp

第一次运行时没有溢出,运行结果正常
第二次运行时缓冲区外面的 df 被当作了命令被执行了
相关阅读 更多 +
排行榜 更多 +
ooxe官方版下载

ooxe官方版下载

金融理财 下载
ooxe

ooxe

金融理财 下载
OXE交易app安卓版下载

OXE交易app安卓版下载

金融理财 下载