高危函数主要是指业界已经明确的存在安全隐患的函数。系统安全漏洞往往来源于程序中,使用高危函数对来自网络报文的不严谨处理。
高危函数 | 危险系数 | 存在的漏洞问题描述 |
void * memcpy( void *dst, const void *src, size_t len); | 很危险 | 当len超过dst实际内存大小时,存在踩越界; |
char* strcpy(char* dest,const char* src) | 很危险 | 当src字符串长度超过dest字符串长度,存在踩越界; |
char * strncpy( void *dst, const void *src, size_t len); | 很危险 | 当len超过dst实际内存大小时,存在踩越界; |
int sprintf(char * buf, const char *fmt, …) | 很危险 | 当参数fmt变长字符串长度超过buf长度,存在踩越界; |
char* strcat(char* dest,const char* src) | 很危险 | 当src字符串长度超过dest剩余长度,存在踩越界; |
char * strncat(char *dest, const char *src, size_t count) | 很危险 | 当count超过dest剩余内存大小时,存在踩越界; |