Netscape、Java和UNIX的脆弱性
2000年8月的第一周,一位名叫Dan Brumleve的黑客发布了一个示范性的利用漏洞的软件,名字叫做Brown Orifice(BOH)。它是一个会影响Netscape Communicator 4.04~4.74的Java小程序。您可能在不知不觉中下载一个版本的BOH并运行它,或者在访问别人的网页时,不小心运行下载到您的系统上的一个木马程序。
一旦加载BOH,它就会像一个Web服务器那样工作,允许远程Web浏览器显示您的系统上的任何文件。但是,WatchGuard Fireboxes将它变成一个本地网络问题,因为Firebox禁止从外到内的、到任意服务器的连接。换言之,BOH漏洞只能向Firebox内部的其他网络用户开放您的系统。如果您信任“城门后面”的人,这个问题就不是太大。
但是,BOH同时提供了源代码,任何人都可以轻松地下载Java小程序并修改它。通过配置BOH,可以打开从受害者的系统回到攻击的一个连接。此时的危险在于,您的Firebox通常没有配置成禁止系统建立从内向外的连接。即使您的Firebox配置非常严格,修改过的BOH也能使用HTTP来连接攻击者的系统,这是大多数Firebox配置所允许的。攻击者的系统不会像一个真正的Web服务器那样运行。相反,它是采取隧道化(tunneling)技术,作为伪装成Web服务器的一个工具来使用,能通过远程控制来操纵修改过的BOH。
只要您的浏览器启用了Java功能,那么安全风险总是存在的。对安全问题非常在意的用户一般会在Netscape Navigator中禁用Java(选择Edit/Preferences/Advanced/unset Enable Java)。所以,对于这部分人来说,这个问题并为严重。除非确实有必要(例如,您访问的网站要求使用Java,或者您使用的一个软件要求Java支持,比如WatchGuard远程身份验证),否则就应该禁用Java功能。即使需要启用Java功能,也最好是在需要完成一个特定的任务时启用Java功能,在完成任务后再将其禁用。
Unix系统也可能感染木马,虽然这种情况较为少见。UNIX使用一个不同的系统在每次重新启动时启动服务。在配置文件/etc/inetd.conf中,包含了要启动的部分服务。其他程序是通过脚本来启动的(/etc/rc*,或者/etc/rc.d目录中的其他脚本)。当黑客成功入侵一个UNIX系统后,通常要修改这些脚本或者inetd.conf,所以你应该注意这些文件,使用像tripwire(www.tripwire.com)这样的工具来检测对它们的更改。
总结:全面考虑
木马和隧道为网络保护带来了严峻的挑战。除了尽量将攻击者阻挡在外,还必须在他们成功入侵后检测到他们的存在。能够防患于未然总是最好的,所以您应该:
§及时更新病毒扫描软件
§及时更新Microsoft软件(如有必要,每周都进行更新)
§不要执行电子邮件的附件
§使用netstat检查新的网络服务。
通常,应该时刻警惕系统和网络中的异常行为——当心带礼物的希腊人。
参考资源:
UNIX系统下的Lsof源码(以及一些预编译的版本):
http://freshmeat.net/projects/lsof
NT下的Lsof相似产品:
Administrator's Pak 4.0可以列出哪些进程容纳着开放的端口:
www.winternals.com
由Arne Vidstrom/ntsecurity.nu提供的另一款lsof for NT(免费): http://ntsecurity.nu/toolbox/inzider/
部分Windows木马程序使用的端口地址列表(您可以使用netstat来检查)
http://anti-trojan.virtualave.net/page61.html
作者简介:
Rik Farrow 独立顾问,CSI委员会中倍受尊重的一位技术顾问,曾撰写《UNIX 安全系统》一书。从1982开始对Unix系统的进行研究,从1987起从事有关网络安全的教育工作。
上一页 [1] [2]