当前位置:编程学习 > 网站相关 >>

[译]CERT Secure Coding Standard — C语言安全编程规范(1)

译序

看完cert的C安全编程规范已经有2个多月了,我在阅读的过程中顺手把官方文档的主要目录翻译了一 下,其中包含了171条“建议”和106条“规则”,个人认为把这些作为一个C语言安全编程规范的cheatsheet是相当不错的。

CERT Secure Coding Standard Statistics

说明:

1.关于“ 建议(Recommendation)”:可以理解为“可选”的规范,一般是和最终软件产品的安全需求有关。遵循“建议”有助于改进系统安全性。

2.关于“规则(Rules)”:可以理解为“强制”的规范。违反“规则”的编码实践有可能导致产生“可被利用的漏洞”。编程实践与该规则的一致性 可以通过自动化分析、形式化方法或者手工检测技术验证。“规则”是确保使用C语言所开发的软件系统安全性的必要条件(但非充分条件)。

3. 规则编号规则:

  • 前3个字母标示规范所属的章节。
  • 2位数字取值范围:00-99。其中00-29保留用于“建议”,30-99保留用于“规则”。
  • -后面的字母表示编程语言,如C。

4. 部分规则/建议是有”例外“的,需要特别注意。

Section Recommendations Rules
PRE 13 3
DCL 20 9
EXP 19 10
INT 18 6
FLP 6 8
ARR 3 9
STR 11 9
MEM 13 6
FIO 18 16
ENV 5 3
SIG 3 5
ERR 8 3
API 8 0
MSC 21 7
POS 5 12
Recommendations Rules
TOTAL 171 106

总目录

00. 概述
01. 预处理 (PRE)
02.声明和初始化 (DCL)
03. 表达式 (EXP)
04. 整数 (INT)
05. 浮点数 (FLP)
06. 数组 (ARR)
07. 字符(数组)和字符串 (STR)
08. 内存管理 (MEM)
09. 输入输出 (FIO)
10. 环境 (ENV)
11. 信号 (SIG)
12. 错误处理 (ERR)
补充:综合编程 , 安全编程 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,