服务器安全和网络安全同等重要,这是因为服务器中常常贮存着机构内部的大量重要信息。如果一个服务器泄密了,其中的所有内容都可以被怪客随心所欲地利用。以下各节讨论了一些主要问题。
红帽企业 Linux 的完整安装包括1200多个应用程序和库软件包。不过,多数服务器管理员并不打算安装发行版本中的每个软件包,而倾向于进行基本安装,再包括几个服务器程序。
在系统管理员中常会发生的是,他们安装了操作系统却不关注那些被安装了的程序。这可能会导致问题,因为不需要的服务可能会被安装,并使用默认设置配置,而且可能还被默认启用。这就会导致不需要的服务,如 Telnet、DHCP、或 DNS 在服务器或工作站上运行,而管理员对此却一无所知。由此而带来到该服务器的不受欢迎的交通,甚至给怪客制造了一条潜在的路径。关于关闭端口和禁用不使用的服务的信息,请参阅第5章 。
多数被包括在默认安装中的服务器程序是稳定的、被全面测试过的软件。在生产环境中被使用了多年后,这些软件的源码已经被全面精化,许多软件中存在的错误已被发现并修正。
然而,世界上并不存在完美无缺的软件,万事都有提高的余地。除此之外,由于更新的软件在生产环境中的使用时间不长,或者因为它没有其它服务器软件那么流行,它可能没有像人们所期待的一样被全面测试过。
开发者和系统管理员经常会在服务器程序中发现可被当作漏洞而利用的程序错误并在错误跟踪和安全相关的网站(如 Bugtraq 邮件列表:http://www.securityfocus.com)或计算机紧急响应组(CERT)的网站(http://www.cert.org)上公开这些信息。虽然这些机制是向社区发出安全弱点警告的有效方法,但它却要依靠管理员来及时地给各自的系统打补丁。如果怪客也能够获得同样的弱点跟踪服务,他们一有机会就会使用这些信息来攻击未加补丁的系统。优秀的系统管理要求你时刻警惕、时刻跟踪错误、并且进行正确的系统维护来保证安全的计算环境。
关于保持系统更新状态的详情,请参阅第3章 。
忘记给系统打补丁的管理员是威胁服务器安全的最大因素。据系统管理网络和安全学院(System Administration Network and Security Institute,SANS)调查,计算机安全弱点的主要导致原因是“指派未经培训的人员来维护安全,并且不提供使其能够胜任的培训和时间”[1]。这不仅是指那些没有经验的管理员,也是指那些过分自信或自以为是的管理员。
某些管理员忘记了给他们的服务器和工作站打补丁,而另一些则忘记了查看来自系统内核或网络交通的日志消息。另一个常见错误是不改变服务的默认口令或密码。例如,某些数据库有默认的管理口令,因为数据库开发者假定系统管理员在安装后会立即改变这些口令。如果某个数据库管理员忘记了改变口令,甚至一个毫无经验的怪客也能够使用众所周知的默认口令来获得到数据库的管理特权。这里仅列举了几种漫不经心的管理给服务器所带来的潜在威胁。
如果所选的网络服务带有固有的不安全因素,即便是警惕性最高的组织也可能成为受害者。例如,许多服务是在用于可信任网络的假定条件下被开发的;然而,一旦这些服务可通过互联网被使用,这个假定条件就不适用了。互联网本身就带有固有的不可信任性。
还有一类不安全网络服务是那些需要用户名和口令来验证的服务。Telnet 和 FTP 就属于这类服务。如果分组嗅探软件正在监视远程用户和这类服务器间的交通,口令就能够被轻而易举地窃取。
以上提及的服务还会轻易地遭到安全行业称之为“中间人”(man-in-the-middle)的攻击。在这类攻击中,怪客会设计让网络上的一个已攻破的的名称服务器指向自己的机器而不是实际的目标服务器来重新导向网络交通。一旦某人打开了一个到该服务器的远程会话,怪客的机器就会充当一个隐型导管,悄悄地坐在远程服务和毫无疑心的用户间截取信息。怪客可以用这种方法来收集管理性口令和原始数据,服务器和用户对此却一无所知。
另一类不安全服务是网络文件系统和信息服务,如 NFS 或 NIS。它们仅仅是为 LAN 而开发的,但是不幸的是,后来又被扩展来包括 WAN(以方便于远程用户)。按照默认设置,NFS 没有配置任何验证或安全机制来防止怪客挂载 NFS 共享以便存取其中的数据。同样的,NIS 也有网络上的每个计算机都必须知道的重要信息,包括口令和文件权限。它们都存在于一个纯文本的 ACSII 或 DBM(由 ASCII 推导出的)数据库中。能够进入这个数据库的怪客就能够进入网络上的每个用户帐号,包括管理员的帐号。
按照默认设置,Red Hat 关闭此类服务。然而,管理员经常会发现他们不得不使用这些服务,因此谨慎配置就至关重要。关于安全地设置这类服务的更多信息,请参阅第5章 。
[1] | 来自:http://www.sans.org/newlook/resources/errors.html,“assign untrained people to maintain security and provide neither the training nor the time to make it possible to do the job.” |