操作系统安全是指系统面临安全威胁时,为保护操作系统相关资产,如CPU、内存、磁盘以及软件等免受病毒、蠕虫、恶意软件和远程黑客入侵等危险而采取的过程或措施,以确保操作系统的可用性、机密性和完整性。
操作系统面临的安全威胁主要有:
(1)恶意软件。包括病毒、蠕虫、特洛伊木马和其他危险软件。恶意软件的代码通常很短,可能会损坏文件、删除数据、复制自身以进一步传播,甚至使系统崩溃。恶意软件进行恶意行为时,如窃取重要数据,一般不容易被用户觉察到。
(2)网络入侵。网络入侵是指未经授权的用户非法访问系统并使用授权人的账户,或者合法用户进行未经授权的访问并滥用程序、数据或资源,或者流氓用户获得超级用户权限,并试图逃避访问限制和相关的审计。
(3)缓冲区溢出。缓冲区溢出是操作系统最常见、最危险的安全问题。攻击者可利用缓冲区溢出漏洞使系统崩溃或执行恶意软件,从而控制系统。
本书以缓冲区溢出为例讨论二进制代码安全问题,涉及的基本上都是Linux环境下的技术和措施。