12

我正在寻找 C++ 中安全编码实践的综合记录。由于我还没有在这里找到这样的列表,我们不妨把它变成一个社区 wiki,以供进一步参考。我正在寻找安全问题的解决方案,例如基于堆栈和堆的缓冲区溢出和下溢、整数溢出和下溢、格式字符串攻击、空指针取消引用、堆/内存检查攻击等。

注意:除了编码实践之外,防御此类攻击的安全库也值得一提。

LE:正如 MSalters 在评论中所建议的,这个问题已被分成两个单独的问题,一个针对 C++,一个针对 C。另请参阅Secure C coding practice

4

6 回答 6

4

编写安全代码》一书(此链接中仅提供示例页面)非常擅长解释安全问题以及如何避免这些问题。这本书已经出版了一段时间,但所涵盖的大部分主题仍然是相关的。

于 2011-01-24T09:35:43.703 回答
4

Herb Sutter “卓越的 C++”和“C++ 编码标准”。无价。

Marshall Cline C++ 常见问题解答。将告诉您有关常见陷阱的所有信息。网上免费。

于 2011-01-24T10:03:27.443 回答
1

我发现这本书对 C 和 C++ 的安全编程食谱非常有用:密码学、身份验证、输入验证等食谱

与前面提到的编写安全代码,第二版不同,它有很多适用于 Linux (posix) 和 Windows 的示例。

于 2011-01-24T09:41:47.607 回答
1

联合 攻击战斗机 C++ 编码标准 是一个好的开始,尽管它主要适用于可靠性而不是安全性。

于 2011-01-24T12:07:16.383 回答
1

SEI CERT C++ 编码标准是专门为涵盖所有类型的安全问题而开发的。CERT 代表 Computer Emergency Response Team,这是一个处理计算机安全事件的专家组。

于 2017-10-08T22:10:27.783 回答
0

让我开始吧

  • 避免使用 malloc 动态分配内存
  • (相关)尽可能使用固定大小的数组,或者实际上在 C++ 中避免使用 C 样式数组
  • 避免使用(void *)
于 2011-01-24T09:36:17.337 回答