Linux 系统安全(二):常见的威胁分析模型
与安全相对应的,是威胁。我们要保障安全,就需要了解威胁是什么。
STRIDE 模型
微软的 STRIDE 模型是常用的威胁模型之一。STRIDE 分别代表着身份欺骗(Spoofing identity)、篡改数据(Tampering with data)、否认性(Repudiation)、信息泄露(Information disclosure)、拒绝服务(Denial of service)、提权(Elevation of privilege)。
STRIDE 模型针对的属性、定义和例子参考如表 1-1 所示。
针对的属性 | 威胁 | 定义 | 例子 |
---|---|---|---|
认证 | 身份欺骗 | 冒充他人或者他物 | A 用户使用 B 用户的账号和密码登录使用系统 |
完整性 | 篡改数据 | 修改数据或者代码 | 未授权的情况下,恶意修改了数据库中的字段数值 |
不可否认性 | 否认性 | 抵赖,声称没有做 | 我没有发送那封邮件 |
机密性 | 信息泄露 | 把信息展示给未授权去看的人 | 航空旅客的身份信息被传播在互联网上 |
可用性 | 拒绝服务 | 使服务对已授权的用户不可用 | 使网站瘫痪,让已授权用户无法进行线上交易 |
授权 | 提权 | 在未授权的情况下,把自己的权限提升到更高的水平 | Linux 普通用户利用系统漏洞变成了 root 用户 |
在分析面对的威胁时,我们应该利用 STRIDE 模型来进行分门别类的总结梳理,这样才能更完整清晰的整理出所有的潜在威胁,并制定出相应的解决方案。
常见的安全威胁来源
如图 1-3 所示,在实际的安全工作中,我们常常见到的信息安全所面对的威胁来自于多个方面:
地震、雷雨、失火、供电中断、网络通信故障都属于破坏物理安全的例子,它们直接破坏了信息的可用性,导致业务中断无法继续向合法授权用户提供服务。
系统漏洞和 Bug 可能会同时破坏机密性、完整性和可用性。
内部人员威胁往往是很多组织在安全体系建设中未加以足够重视的部分,而事实表明,内部人员因误操作或者恶意利用职权而导致的信息泄露和破坏的案例不计其数。 IBM 调查报告中指出,在 2015 年,60% 的攻击是由内部人直接或者间接发起的。内部人员造成威胁的个人因素主要有:出于贪婪或经济利益的需要;因工作原因对公司和上级领导心怀不满;即将跳槽到另一个组织;希望取悦他人;个人生活不得意导致工作行为异常。
黑客渗透是显而易见的威胁,他们可能会利用系统漏洞和 Bug 进行攻击,也可能会辅助以社会工程(Social Engineering)的方式进行攻击;在渗透完成后,黑客往往通过在系统中植入木马后门(包括 Rootkit 等)进行隐秘的长期控制。
病毒和蠕虫的散播让信息基础设施的资源被恶意利用,还可能导致信息的非法泄露和被恶意篡改。
计算机中的“应用逻辑炸弹”是指在特定逻辑条件满足时,实施破坏的计算机程序,该程序触发后造成计算机数据丢失、计算机不能从硬盘或者软盘引导,甚至会使整个系统瘫痪,并出现物理损坏的虚假现象。
实施拒绝服务(Denial of Service)攻击,包括其高级形式–分布式拒绝服务(Distributed Denial of Service)攻击,黑客的目标是让信息系统无法正常工作提供服务,以达到其背后不可告人的目的(例如商业或者政治目的)。