C语言库函数的漏洞总结【笔记】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tianxieeryang/article/details/83789933

C语言库函数漏洞

memset函数

memset函数在初始化为 0 的时候没问题,但是当初始化为 1 时,只有对 1 个字节大小的数据类型有效,比如 char ,float,但是当初始化为 4 个字节的整型或者更长数据类型时,会出现 0001 0001 0001 0001 这样的初始化结果。
因此 memset 函数只能有两种初始化方式,初始化为 0 或者 -1 。因为在计算机中 0 的二进制是 0 ,-1 的二进制是 1 。

strcpy函数

strcpy函数并不检查目的缓冲区的大小边界,而是将源字符串逐一的全部赋值给目的字符串地址起始的一块连续的内存空间,同时加上字符串终止符。

猜你喜欢

转载自blog.csdn.net/tianxieeryang/article/details/83789933