安全增强 Linux (SELinux) 剖析

http://tech.ddvip.com   2008年06月05日    社区交流

内容摘要:SELinux 通过对内核和用户空间进行修改,对现有的 GNU/Linux 操作系统进行了扩展,从而使其变得坚不可摧。如果您现在正在使用 2.6 版的内核,就会惊奇地发现您已经在使用 SELinux 了!本文将探究 SELinux 背后的思想及其实现方法。

  简介

  公共网络(比如 Internet)充满着危险。只要将电脑连接到 Internet(即使只连接很短的时间),您就会感受到这一点。攻击者可以利用不安全性来获得对一个系统的访问,获得对信息的未授权访问,或者对一台计算机进行改造,以利用它发送垃圾邮件或攻击其他高端系统(使用 SYN 泛洪攻击,一种分布式拒绝服务攻击)。

  分布式拒绝服务攻击(DDoS)通过 Internet 上的多个系统来实现(所以也称为僵尸电脑),这些系统消耗目标系统上的资源,(利用 TCP 的三向握手)使其不能被合法的用户访问。一种带有 cookie 的四向握手协议(Stream Control Transmission Protocol [SCTP])可以防御这种攻击,更多信息请参见 参考资料 一节。

  GNU/Linux 非常安全,但它也非常动态:所做的更改会为操作系统带来新的漏洞,这些漏洞可能被攻击者利用,尽管人们都非常关心阻止未授权访问,但是发生入侵后会发生什么呢?

  本文将探究 SELinux 背后的思想及其基本架构。关于 SELinux 的完整描述涉及一整本书的内容(参见 参考资料 一节),所以本文只关注其基本原理,使您了解 SELinux 的重要性及其实现过程。

  访问控制方法

  大多数操作系统使用访问控制来判断一个实体(用户或程序)是否能够访问给定资源。基于 UNIX® 的系统使用一种自主访问控制(discretionary access control,DAC)的形式。此方法通常根据对象所属的分组来限制对对象的访问。例如,GNU/Linux 中的文件有一个所有者、一个分组和一个权限集。权限定义谁可以访问给定文件、谁可以读取它、谁可以向其写入,以及谁可以执行它。这些权限被划分到三个用户集中,分别表示用户(文件所有者)、分组(一个用户组的所有成员)和其他(既不是文件所有者,又不是该分组的成员的所有用户)。

来源:ibm    作者:M. Tim Jones    责编:豆豆技术应用

正在加载评论...