当前位置: 首页 > Linux

linux文件洞

时间:2023-04-06 02:46:48 Linux

APUE中的文件漏洞#include#include#include#include#include#include#defineFILE_MODE(S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)intmain(void){charbuf1[]="abcdefghij";charbuf2[]="ABCDEFGHJIJ";诠释;if((fd=creat("file.hole",FILE_MODE))<0)printf("创建文件错误!\r\n");if(write(fd,buf1,sizeof(buf1))!=sizeof(buf1))printf("buf1写入错误!\r\n");if(lseek(fd,16384,SEEK_SET)==-1)printf("lseek错误!");if(write(fd,buf2,sizeof(buf2))!=sizeof(buf2))printf("buf2写入错误!");exit(0);}结果如下:jason@ubuntu:~/apue$od-cfile.hole0000000abcdefghij\0\0\0\0\0\00000020\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0*0040000ABCDEFGHJIJ\00040014每行开头的七位数字是从文件开头偏移的十六进制形式的距离,单位为字节