C和C++安全编码(原书第2版)
上QQ阅读APP看书,第一时间看更新

1.4 开发平台

软件漏洞可以从不同的抽象层次观察。在较高的抽象层,对于各种语言和各种操作系统环境,软件漏洞都广泛存在。本书主要关注通常的C和C++编程中容易产生的软件缺陷。漏洞问题通常与其运行环境密切相关,如果不假设一个特定的操作系统则很难进行讨论。编译、链接和执行过程中的不同也会造成显著不同的漏洞利用技术与缓解策略。

为了更好地描述漏洞、漏洞利用技术以及缓解措施,本书主要关注微软Windows和Linux操作系统。选择这两个操作系统是因为它们的流行性,它们在关键的基础设施中广泛采用,而且它们比较容易产生漏洞。操作系统软件漏洞的数量已经被科罗拉多州大学的O.H.Alhazmi和Y.K.Malaiya定量评估[Alhazmi 2005a]。