每一台接入PC都可以看成是企业网络边际的扩展。一旦企业网络的边际受到破坏,这些威胁就会迅速扩散到整个企业网络中,除非用户采取了适当的防御措施。
解决这一问题的办法就是在接入PC上部署个人防火墙。个人防火墙以软件形式安装在最终用户计算机上,阻止由外到内和由内到外的威胁。个人防火墙不仅可以监测和控制网络级数据流,而且可以监测和控制应用级数据流,弥补网关防火墙和防病毒软件等传统防御手段的不足。
同边际防火墙一样,个人防火墙可以开放和关闭端口。例如,Sasser蠕虫试图通过445 TCP端口连接到终端PC上。个人防火墙能够关闭该端口,保护PC即使运行存在安全漏洞的操作系统,也不会受到蠕虫的感染。个人防火墙采用以应用程序为中心的方式控制数据流,根据应用程序开放和关闭端口。此外,个人防火墙能够以隐形方式运行,让外部人员看不到PC。对于一个关闭的但没有隐形的端口来说,个人防火墙将向被拒绝的数据包的发出者发送“拒绝”响应,使发起方计算机知道这次通信尝试是无效的,因为目标PC拒绝连接。但是,攻击者通过研究被拒绝的数据包可以采集以下信息:操作系统信息、安全配置信息以及目标IP地址上是否有一台PC。在隐形模式下,PC不回答未经认可的数据包,因此黑客不知道这个IP地址上存在一台PC。
即使端口开放并接受通信,个人防火墙仍可以通过状态数据包检查过滤掉恶意连接。通过检查每个输入的数据包,查看它是否对应目标PC早先发出的请求,个人防火墙确定哪些数据包是合法通信,哪些是探测数据包。
个人防火墙通过监测应用程序向操作系统发出的通信请求,来进行应用控制。个人防火墙将每个应用程序与它发出的数据流建立关系。然后,个人防火墙根据最终用户定义的规则,允许或拒绝数据流。这样可以防止未经许可的应用建立与本地网或Internet的输出连接。个人防火墙可以在间谍软件、特洛伊木马和病毒试图传播时捕获它们。
恶意软件设计者通过哄骗或劫持获得批准的程序进行恶意通信,来避免被发现。个人防火墙通过应用程序认证来防止这些伎俩。个人防火墙不仅根据文件名来检查应用程序,同时还利用执行程序的MD5函数、动态链接库和其他组件来检查应用程序。如果应用程序引发报警,在未经用户批准时个人防火墙不允许与外界联系。个人防火墙还可以提供额外的保护:在启动过程中,个人防火墙防止直接攻击;通过缺省设置提供直接的保护;通过执行相应的安全政策,提供自动的网络检测;以及提供响应或纠正安全事件的知识库。
总之,个人防火墙提供了一条抵御人工和自动攻击的有效防线,能够阻止攻击在企业内部传播。