C 标准库危险函数
目录

C程序语言并不像其他一些编程语言一样自动的做数组或者指针的边界检查。 因此下列函数可能产生缓冲区溢出:

  • strcpy(char *dest, const char *src) 可导致dest缓冲区溢出,建议用strncpy代替
  • strcat(char *dest, const char *src) 可导致dest缓冲区溢出,建议用strncat代替
  • gets(char *s) 可导致s缓冲区溢出,建议用fgets代替
  • [vf]scanf(const char *format, ...) 可导致参数溢出
  • [v]sprintf(char *str, const char *format, ...) 可导致str缓冲区溢出
  • getwd(char *buf) 可导致buf缓冲区溢出
  • realpath(char *path, char resolved_path[]) 可导致path缓冲区溢出

参考

发表评论