[转载]Linux系统上不安全的程序及替代程序
<p>信息来源:赛迪网技术社区</p><p style="TEXT-INDENT: 2em">WuFTD从1994年就开始就不断地出现安全黑客</font /></a />很容易就可以获得远程root访问(Remote Root Access)的权限,而且很多安全<a class="channel_keylink"><font color="#000000">漏洞</font></a>甚至不需要在FTP服务器上有一个有效的<font color="#000000">帐号</font></a />。最近,WuFTP也是频频出现安全漏洞</font /></a />。 </p><p style="TEXT-INDENT: 2em">它的最好的替代程序是ProFTPD。ProFTPD很容易配置,在多数情况下速度也比较快,而且它的源代码也比较干净(缓冲溢出的错误比较少)。有许多重要的站点使用ProFTPD。sourceforge.net就是一个很好的例子(这个站点共有3,000个开放源代码的项目,其负荷并不小啊!)。一些Linux的发行商在它们的主FTP站点上使用的也是ProFTPD,只有两个主要Linux的发行商(SuSE和Caldera)使用WuFTPD。 </p><p style="TEXT-INDENT: 2em">ProFTPD的另一个优点就是既可以从inetd运行又可以作为单独的daemon运行。这样就可以很容易解决inetd带来的一些问题,如:拒绝<font color="#000000">服务</font></a />的攻击(denial of service attack),等等。系统越简单,就越容易保证系统的安全。 </p><p style="TEXT-INDENT: 2em">WuFTPD要么重新审核一遍全部的源代码(非常困难),要么完全重写一遍代码,否则WuFTPD必然要被ProFTPD代替。 </p><p style="TEXT-INDENT: 2em"><b>Telnet </b></p><p style="TEXT-INDENT: 2em">Telnet是非常非常不安全的,它用明文来传送密码。它的安全的替代程序是OpenSSH。OpenSSH在Linux上已经非常成熟和稳定了,而且在Windows平台上也有很多<a class="channel_keylink"><font color="#000000">免费</font></a>的客户端软件。Linux的发行商应该采用OpenBSD的策略:安装OpenSSH并把它设置为默认的,安装Telnet但是不把它设置成默认的。 </p><p style="TEXT-INDENT: 2em">对于不在美国的Linux发行商,很容易就可以在Linux的发行版中加上OpenSSH。美国的Linux发行商就要想一些别的办法了(例如:Red Hat在德国的FTP<a class="channel_keylink"><font color="#000000">服务</font></a>器上(ftp.redhat.de)就有最新的OpenSSH的rpm软件包)。Telnet是无可救药的程序。要保证系统的安全必须用OpenSSH这样的软件来替代它。 </p><p style="TEXT-INDENT: 2em"><b>Sendmail </b></p><p style="TEXT-INDENT: 2em">最近这些年,Sendmail的安全性已经提高很多了(以前它通常是<a class="channel_keylink"><font color="#000000">黑客</font></a>重点攻击的程序)。然而,Sendmail还是有一个很严重的问题。一旦出现了安全<a class="channel_keylink"><font color="#000000">漏洞</font></a>(例如:最近出现的Linux内核错误),Sendmail就是被<a class="channel_keylink"><font color="#000000">黑客</font></a>重点攻击的程序,因为Sendmail是以root权限运行而且代码很庞大容易出问题。 </p><p style="TEXT-INDENT: 2em">几乎所有的Linux发行商都把Sendmail作为默认的配置,只有少数几个把Postfix或Qmail作为可选的软件包。但是,很少有Linux的发行商在自己的邮件<a class="channel_keylink"><font color="#000000">服务</font></a>器上使用Sendmail。SuSE和Red Hat都使用基于Qmail的系统。 </p><p style="TEXT-INDENT: 2em">Sendmail并不一定会被别的程序完全替代。但是它的两个替代程序Qmail和Postfix都比它安全、速度快,而且特别是Postfix比它容易配置和维护。 </p><p style="TEXT-INDENT: 2em"><b>su </b></p><p style="TEXT-INDENT: 2em">su是用来改变当前用户的ID,转换成别的用户。你可以以普通用户登录,当需要以root身份做一些事的时候,只要执行“su”命令,然后输入root的密码。su本身是没有问题的,但是它会让人养成不好的习惯。如果一个系统有多个管理员,必须都给他们root的口令。 </p><p style="TEXT-INDENT: 2em">su的一个替代程序是sudo。Red Hat 6.2中包含这个软件。sudo允许你设置哪个用户哪个组可以以root身份执行哪些程序。你还可以根据用户登录的位置对他们加以限制(如果有人“破”了一个用户的口令,并用这个<a class="channel_keylink"><font color="#000000">帐号</font></a>从远程计算机登录,你可以限制他使用sudo)。Debian也有一个类似的程序叫super,与sudo比较各有优缺点。 </p><p style="TEXT-INDENT: 2em">让用户养成良好的习惯。使用root<a class="channel_keylink"><font color="#000000">帐号</font></a>并让多个人知道root的密码并不是一个好的习惯。这就是www.apache.org被入侵的原因,因为它有多个系统管理员他们都有root的特权。一个乱成一团的系统是很容易被入侵的。 </p><p style="TEXT-INDENT: 2em"><b>named </b></p><p style="TEXT-INDENT: 2em">大部分Linux的发行商都解决了这个问题。named以前是以root运行的,因此当named出现新的<a class="channel_keylink"><font color="#000000">漏洞</font></a>的时候,很容易就可以入侵一些很重要的计算机并获得root权限。现在只要用命令行的一些参数就能让named以非root的用户运行。而且,现在绝大多数Linux的发行商都让named以普通用户的权限运行。 </p><p style="TEXT-INDENT: 2em"><b>INN </b></p><p style="TEXT-INDENT: 2em">在INN的文档中已经明确地指出:“禁止这项功能(verifycancels),这项功能是没有用的而且将被除掉”。大约在一个月前,一个<a class="channel_keylink"><font color="#000000">黑客</font></a>发布了当“verifycancels”生效的时候入侵INN的方法。Red Hat是把“verifycancels”设为有效的。任何setuid/setgid的程序或<a class="channel_keylink"><font color="#000000">网络</font></a><a class="channel_keylink"><font color="#000000">服务</font></a>程序都要正确地安装并且进行检查以保证尽量没有安全<a class="channel_keylink"><font color="#000000">漏洞</font></a>。</p>页:
[1]