在我们的职业生涯中大都曾经有过一次这样的经历——我是说你认为足以让你丢掉饭碗的失误。我的第一次重大失误是曾经重启了校园里的所有,不是一个接一个的,而是所有一次完成。我写了一个脚本,为所有的路由器安装一个安全更新,然后依次重启这些路由器——至少我是这样想的。事实上我的脚本有误,遗漏了路由器之间的等待时间。
当时我认为自己肯定要被解雇了,但是谢天谢地,我没有。有些重大的事故,最后往往都为我们的学习提供重要帮助。我们都或多或少的知道些危机管理,所有的东西从在线备份中恢复过来,我的老板花了几个小时的时间教会我如何正确的检测网络是否正常运行。
好消息是大部分的时间,我们所犯的错误并没有这么严重,而坏消息是很多失误并不会当时就表现出来。也就是说,这种失误会一直遗留而不能被发现,有可能是几个星期,也有可能是几个月或者几年,直到有一天它们引发了严重的中断事故,或者被审计人员发现来传唤我们。在网络安全一线,管理是这样一个行当——对规则和配置文件进行更改时,一个小小的错误可能给你带来巨大的后患。以下是一些常犯的失误:
一、创建毫无意义的防火墙组
一名防火墙管理员在把设备加入到网络中时,拥有超过一半的规则权限。后来这便用一个球星的名字来命名,我们称之为Joe_Montana.出论任何时候,管理员需要某台设备加入到网络中,他们就把这台设备的IP地址添加到他们常用的、拥有许多授权的规则当中去,添加到这样的组里。最后,这些规则库让审计员看起来可能是没问题的,因为这里面没有“任意”这样的规则,但是事实上却埋下了许多的防火墙漏洞。防火墙规则变得毫无意义,如果一旦被审计整改,清理这些规则库的活是费力不讨好的任务,需要很多个月的时间来解决规则库问题,以安全、适当地映射到业务需求。
二、从不升级你的防火墙软件
有数量惊人的组织使用过时的防火墙软件。当被问及原因时,得到的往往是非常类似的几个回复“我们要保持版本的稳定性”或者“防火墙不能撤下进行升级”…等等。事实上,防火墙厂商升级自己的软件是有原因的。你不需要安装最新发布的防火墙版本,但如果您正在运行一个已经过时15或20个版本的软件,或者已经7、8年没有更新版本,那么请立即停止抱怨,开始更新!
三、使用错误的技术
我们都听过的把方形钉砸进圆洞的说法,在防火墙行业里也有这么一说。一个网络安全管理员激烈的和他们的审计员争论,因为他们有一个防火墙布置在安全的前面,这样就构成了一个双重身份验证:一个密码和一个防火墙。这家伙的创造力可以打A,但是防火墙(本身)不是一个双重身份验证解决。双重身份认证需要您的用户有一个令牌和密码。
四、意外宕机事件
我听过这样一个意外宕机事件,防火墙管理员正在收集一些防火墙数据。管理员无意中碰到桌子上的鼠标,而此时的鼠标正悬停在开始菜单上。如同命中注定一样,鼠标令人难以置信的激活了开始菜单,并且恰好悬停在“关闭”菜单项上。是的,就这样那个金融公司的人看着他们的防火墙就这样被关闭了。
五、创建糟糕的防火墙配置文档
你经常会听到有些防火墙管理员忙的焦头烂额,试图了解到底他们之前所做的防火墙规则是用来干什么的。图得一时省事(马虎创建防火墙文档)让自己以后变得繁忙,还是花时间来创建合理的防火墙文档?马虎对待防火墙文档等于给自己创建一个定时炸弹。调查一些参与管理防火墙的管理员,常常会听到这样的抱怨“现在我害怕调整我的防火墙,所有的高级管理人员已经离开,而我们不知道那些防火墙文档,里面那些大多数的名字的意思,或这些规则是用来做什么的。”
六、请勿使用路由作为您的安全策略
我见到很多这样的防火墙,他们的规则库在做出修正时,需要路由器相应做出改变,以适应新的防火墙规则。或许这是可以理解的——当处在防火墙之内的网络,需要重新组建时,但事实往往是网络并没有发生变化,只是防火墙需要作出变化。有两种类似这种“绑架”路由器的错误,在工作中经常发生。
第一种情况,是防火墙没有默认路由。每条路由线路都被手动添加到防火墙,而且,往往使用最小的子网掩码,许多不在计划之内的设备,在将来如果不设置防火墙策略就会受到阻碍,无法通过路由。这听起来很棒,貌似更加安全,但它是完全不必要的——如果你删除这条防火墙策略,那么该策略将会恢复成“忽略所有”。
这个设计将会使防火墙变得难以管理,之后的防火墙团队将会害怕做出改变,因为这将会牵扯到很多东西。每个策略更改都需要一个工程师来检查路由,因此每一个防火墙策略更改花费的时间太长,大大影响了网络维修任务,所以,这是没有实际价值的增加安全性。
这种错误看法还有一种情况,在设备管理员群体中最常出现,比方说管理员需要建立一个访问控制列表,这个控制列表包括两个设备之间的任何源地址或目标地址。他们的本意实际上是指两个设备之间中的所有地址,而并非在任何的时候。但是管理员太懒了,他们不想花力气输入地址。这样,只有知道连接防火墙的路由表,才能知道这条防火墙策略实际的。这些是需要管理员记在脑子里的,对一个初级防火墙管理员来说,这太难接管这个防火墙了。
七、使用路由器DNS对象作为防火墙策略对象
很多防火墙提供这么一个功能选项,允许管理员插入一个DNS对象作为源或目标地址,比方说www..com.这听起来不错,因为 google.com可以作用于这么多的IP地址,这样即使google.com的ip地址发生改变的时候,我的防火墙,也还是可以作用于该下的地址。这种错误做法,会导致许多风险,大多数组织应该考虑不要使用这种做法。
首先防火墙现在很容易受到拒绝服务攻击,你能想象防火墙不能解析google.com域名时会发生什么吗?第二个,在为所有的数据包做DNS解析时,防火墙需要查找每个数据包,以试图决定该数据包是否属于google.com时,会极大的浪费CPU、内存和网络IO.第三,如果你的中毒,你的防火墙将允许所有的僵尸网络命令通过,并记录它作为正常域名。