9.3、对策
就像本书中很多故事所讲的那样,这里的攻击者没有在其目标公司身上发现太多的安全漏洞。但正是他们发现的一丁点漏洞,就足以使他们获得对公司整个计算机系统域内的控制权,而计算机系统对商业运作是至关重要的。以下是一些值得注意的教训。
9.3.1、临时解决方案
之前的某个时候,3COM设备曾经直接插到了Cisco路由器的串行端口上。虽然是为缓解突发需求的压力而釆用的临时技术捷径,但是没有一个公司可以承担让“临时措施”变成“永久措施”带来的后果。应当建立一个检查网关设备配置状况的时间安排,通过物理或者逻辑方式进行检查,或者使用一个安全工具,对主机或设备上任何打开的端口是否与公司的安全策略相一致,进行持续监控。
9.3.2、使用高端口
安全公司配置了一个Cisco路由器,允许通过一个高端口建立远程连接,并自以为一个高端口就足够隐蔽,使得永远不会被攻击者偶然发现——这是“通过隐蔽获取安全”方法的另一种版本。
我们在本书的章节中,对于那些基于此种态度做出的愚蠢安全决策,已经不止一次地讨论过。本书中的故事一遍又一遍地说明了这样一个道理:如果你留下一个漏洞,某个攻击者早晚会发现它。最好的安全实践就是确保所有系统和设备的接入点,不管隐蔽与否,都应该屏蔽来自任何不信任网络的访问。
9.3.3、口令
需要再一次指出,在系统和设备将要运作之前,任何设备的所有默认口令都应该更改。即使技术上的外行人士都知道这个常见的疏忽,知道该如何利用它(Web上的一些网址,如www.phenoelit.de/dpl/dpl.html,提供了默认用户名和口令的列表)。
9.3.4、确保个人膝上计算机的安全
公司的外地职员使用的系统连接到公司的整个网络上,而这个网络几乎没有任何安全措施,这种状况再常见不过了。一个客户端程序仅仅需要配置一下PCAnywhere,甚至都不需要口令,就可以建立远程连接。即使计算机通过拨号连接到Internet,连接仅仅只是在很有限的一段时间里,每一个连接都会创建一个暴露给黑客的时间窗口。攻击者通过运行PCAnywhere连接到膝上计算机,就能够远程控制这台机器。同时由于建立远程连接不需要口令,攻击者只要知道用户的IP地址,就可以控制用户的桌面程序了。
策略的设计者应该考虑到这样一个需求:客户端系统在被允许连接到组织的网络之前,应该维持一定级别的安全性。某些可用的软件产品,在客户端系统上安装代理,确保用户对计算机安全控制与公司安全策略相一致;否则,如果与公司的安全策略不一致,这样的客户端程序对组织计算资源的访问将被拒绝。不怀好心的人将通过研究整个网络布局来分析他们的目标。这意味着你要尝试确定是否有用户远程连接过来,如果有,还要确定这些连接的源头在哪。攻击者知道,如果他或她能够捕获一台被信任的计算机,并且这台计算机常常连接到组织的网络上,那么很可能对该计算机的信任将被滥用,以获得对组织信息资源的访问权。
即使当安全问题在公司内部处理得很好,通常还是会存有忽略雇员的膝上计算机和家庭计算机这样的倾向。雇员们通过这些膝上计算机和家庭计算机访问公司的网络,就留下了一个可供攻击者利用的漏洞,就像本章故事里描述的那样。雇员的膝上计算机和家庭计算机,只要连接到了内部网上,就一定要确保安全;否则,雇员的计算机系统将可能成为被利用的安全缺口。
9.3.5、认证
这个案例中,攻击者能够从客户端系统中提取认证信息,同时被攻击者还豪无察觉。正如在之前的几个章节里反复强调的那样,很严格的认证将及时阻断黑客的入侵,并且公司应当考虑使用动态变化的口令、智能卡、标记或数字证书等措施,来作为对VPN或其他敏感系统远程访问的认证。
9.3.6、过滤不必要的服务
职员应当考虑创建一个过滤规则集合,来实现对接入和接出连接的控制,这些连接大多发自不可信任的网络,如Internet,还有发自公司内部的半信任(DMZ)网络,要求连接到特定的主机或服务。
9.3.7、加强措施
这个故事对某些IT职员还是一个提醒,他们不愿花费功夫加强对连入内部网的计算机系统的管理,也不愿意保持安全补丁的实时更新,抱着被攻击的风险很小的侥幸心理。这种做法让坏人有机可乘。一旦攻击者发现一种访问某个安全措施不牢的内部网上系统的方法,他就能够成功捕获它,这样就可以开启扩大非法访问权的门,攻击者可以对被捕获计算机信任的其他系统进行非法访问。另外,仅仅依赖于边界防火墙就想把黑客们拒之门外,而不愿花费功夫在加强连入内部网的系统管理上,这就好像你将你的所有家当换成100元的钞票,堆在饭厅的桌上,然后你认为这很安全,因为你家的前门是锁着的。