C++:最常见的漏洞是什么,如何避免?

21

当我编写代码时,我始终注重安全性。问题在于我需要知道该注意什么并且如何预防。

是否有一个清单列出了最常见的(C++)软件漏洞以及如何避免它们?

对于特定用途的C++软件,比如Linux控制台软件或Web应用程序,怎么办呢?


代码无法编译是最常见的错误 :) - Chubsdad
4
我原本以为你的代码无法编译会是防止漏洞发生的最佳方式之一。 - user70568
我同意,没有可执行文件就没有安全漏洞。在像C++这样的语言中进行静态代码检查非常困难,如果可能的话。 - Display Name
3个回答

17

5

3
strncpy 很糟糕,因为它可能会留下没有以 null 结尾的字符串,导致更严重的缓冲区溢出。替代方案如 strlcpy, strcpy_smemcpy 更好。 - Gabe

2

还有一些问题可能会引起您的关注,例如: 1. 分段错误 2. 内存泄漏 3. 内存分配错误等等...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接