击退入侵!!
通过Internet进行的计算机系统大多数成功入侵都可以归结到很少数量的安全漏洞上。
在Solar Sunrise Pentagon入侵事件中被入侵的大多数系统都是因为同一个漏洞受到攻
击。不久前分布式拒绝服务攻击中被利用的大部分计算机也是因为一个漏洞。最近基于
WindowsNT的WEB服务器的大量入侵也可归结到一个众所周知的漏洞。另外有一个漏洞也
被认为可以被用来入侵超过30000台Linux系统。
少量的软件漏洞对应绝大多数成功的攻击是因为攻击者都是机会主义者-他们采用最简
单最方便的方法。他们用最有效最广泛使用的工具来攻击最著名的漏洞。他们指望组织
没有修补漏洞,他们常常在Internet上扫描有漏洞的系统,作无目的攻击。
系统管理员反映说,他们没有补这些漏洞的原因是他们也不知道超过500个的潜在问题中
那些是最严重的,而他们又太忙,不可能把所有的问题都改正好。
信息安全共同体试图解决这个问题,标出Internet上最严重的安全问题,汇集系统管理
员需要立即解决的漏洞。这个针对TOP TEN列表给出的专家建议展示了史无前例的企业、
政府和学校积极合作的范例。参与者来自最有安全意识的联邦代理、安全软件供应商、
咨询机构、基于大学的顶级安全小组、CERT/CC和SANS研究会。完整的参与者名单在文末
给出。
这里列出专家给出的10个Internet上最常被利用的安全漏洞列表,并给出了如何消除你
系统中这些问题的建议。
对读者提出的三点注意事项:
注1、这是一份随时更新(living)的文档,它包含初始定义,一步步更正漏洞的指导意见
。我们会随时更新这些建议,使它更正确更方便,欢迎你的加入。这是一封公开的建议
文档-你消除漏洞的经验可以帮助后来人。有建议可以"Top Ten Comments"为标题发信
到〈[email protected]〉。想获得最新版本的指导可以"Top Ten Fixes"为标题发信到〈info@
sans.org〉。
注2、你将看到给出了CVE检索项的参考-the Common Vulnerabilities and Exposures
索引号同漏洞相对应,CAN是CVE的候补索引项,它还没有得到完全的认可。对CVE项目更
多的了解可参照:http://cve.mitre.org
注3、在列表的最后,你会看到一个附加章节给出了常被探测和攻击的端口列表。通过在
防火墙或其它边界防护设备阻塞掉这些端口,你可以增加一个额外的防护层保护你的错
误配置。
1. BIND weaknesses: nxt, qinv and in.named allow immediate root compromise.
BIND程序存在的问题,利用nxt,qinv,in.named可直接得到root权限。
BIND(Berkeley Internet Name Domain)软件包是域名服务(DNS)的一个应用最
广泛的实现软件--我们所有人都通过它来定位Internet上的系统,只需知道域
名(如www.sans.org)而不用知道IP地址,由此可体会它的重要性--这使它成
为最受欢迎的攻击目标。
很遗憾,根据1999年中的回顾,Internet上的DNS服务器有50%以上用的是有漏洞
的BIND版本。
比较典型的BIND攻击的例子是,入侵者抹掉系统记录,安装工具获得管理员级别
的访问。他们然后编译安装IRC工具和网络扫描工具,用它们扫描更多的B类网络,
找到其它的使用有漏洞版本的BIND的域名服务器。只需几分钟,他们就可以攻入
成千上百个远程系统,取得更多的入侵成果。
这种混乱的场面说明,在Internet上广泛应用的服务上,如DNS服务,软件中一个
很小的漏洞都是非常可怕的。
受影响的系统:
多数UNIX和Linux系统
到2000年5月22日为止,BIND8.2.2patch5以前的版本都有问题。
CVE检索项:
nxt CVE-1999-0833
qinv CVE-1999-0009
相关检索项: CVE-1999-0835, CVE-1999-0848, CVE-1999-0849,CVE-1999-0851
更正建议:
A、取消所有非授权作为DNS服务器的机器上的BIND后台进程(named)。一些专家
还建议删掉这些DNS软件。
B、把授权作为DNS服务器的软件升级到最新版本,加入最新补丁。(到2000年5
月22日为止,最新版本为8.2.2,patch5)。
采纳如下的其它指导建议:
For the NXT vulnerability: http://www.cert.org/advisories/CA-99-14-bind.html
For the QINV (Inverse Query) and NAMED vulnerabilities:
http://www.cert.org/advisories/CA-98.05.bind_problems.html
http://www.cert.org/summaries/CS-98.04.html
C、以非特权用户身份运行BIND,以便将来受到远程攻击时得到保护。(但是,必
须以root身份运行程序才能配置使用低于1024端口-如DNS要求的53,因此你必须
配置BIND在绑定到指定端口后改变用户身份。)
D、在chroot()过的目录中运行BIND,以便将来受到远程攻击时得到保护。
2. Vulnerable CGI programs and application extensions (e.g., ColdFusion) in
stalled on web servers.
在WEB服务器上安装的有漏洞的CGI程序和应用扩展(如ColdFusion)
大部分WEB服务器支持CGI(Common Gateway Interface)程序以提供WEB页面的交互功能,
如数据采集和检验。很多WEB服务器缺省的安装了CGI例子程序。很不幸,很多CGI程序并
没有考虑到它们有可能被滥用去执行恶意指令。入侵者选择CGI程序作为攻击目标主要因
为它们容易定位,并以同WEB服务器相同的权限运行。入侵者利用有漏洞的CGI程序破坏
主页,盗窃信用卡信息,安装后门以利于将来即使CGI程序被修补好仍然可以入侵。
当司法部的Janet Reno的图片被换成Adolph Hitler时,得出了CGI漏洞是最有可能的入
侵网络的方法的结论。Allaire的ColdFusion是一个WEB服务器应用软件,缺省安装时包
含有漏洞例子CGI程序。作为一个最一般的法则,例子程序应该从系统中删除。
受影响的系统:
所有的WEB服务器。
CVE检索项:
有漏洞例子程序的CGI程序
CAN-1999-0736
CVE-1999-0067
CVE-1999-0068
CVE-1999-0270
CVE-1999-0346
CVE-2000-0207
没有例子程序但有漏洞的CGI程序
CAN-1999-0467
CAN-1999-0509
CVE-1999-0021
CVE-1999-0039
CVE-1999-0058
CVE-1999-0147
CVE-1999-0148
CVE-1999-0149
CVE-1999-0174
CVE-1999-0177
CVE-1999-0178
CVE-1999-0237
CVE-1999-0262
CVE-1999-0279
CVE-1999-0771
CVE-1999-0951
CVE-2000-0012
CVE-2000-0039
CVE-2000-0208
ColdFusion例子程序漏洞
CAN-1999-0455
CAN-1999-0922
CAN-1999-0923
ColdFusion其它漏洞
CAN-1999-0760
CVE-2000-0057
更正建议:
A、不要以ROOT身份运行WEB服务器。
B、去掉BIN目录下的CGI脚本解释器。
http://www.cert.org/advisories/CA-96.11.interpreters_in_cgi_bin_dir.html
C、删掉不安全的CGI脚本。
http://www.cert.org/advisories/CA-97.07.nph-test-cgi_script.html
http: