有如下例子:
int check( char *name)
{
int x=0;
char small_buffer[10];
if(strcmp(name,"admin")==0)
x=1;
strcpy(small_buffer,name);
return x;
}
以上代码存在一个缓冲区溢出问题,只要攻击者输入一个超过9个字符的数据作为登录名,都将导致缓冲区溢出.
int check( char *name)
{
int x=0;
char small_buffer[10];
if(strcmp(name,"admin")==0)
x=1;
strcpy(small_buffer,name);
return x;
}
以上代码存在一个缓冲区溢出问题,只要攻击者输入一个超过9个字符的数据作为登录名,都将导致缓冲区溢出.