APP下载

Windwos 2003平台下基于Serv-U的FTP服务器安全防护策略研究

2012-04-24王峰

卷宗 2012年2期
关键词:防护漏洞

王峰

摘要:本文深入探讨了Windows2003服务器中基于Serv-U的FTP服務器存在的严重权限提升漏洞及常见攻击方法,提出了通过修改Serv-U进程的运行身份、加强权限设置等一系列方法降低漏洞危害、防止跨站攻击、保证服务器安全的策略和方法。

关键词:ServU FTP 漏洞 防护

近年来,随着互联网的快速发展,网站大量涌现。目前除专门维护的独立服务器外,绝大多数虚拟主机和Web服务器都采用FTP方式实现数据上传下载。而在所有FTP服务软件中,Serv-U以其操作简单、功能强大而被广泛运用,市场占有率极高。它设置简单,功能强大,性能稳定,支持Windows全系列操作系统。Serv-U使得搭建FTP服务器变得简单便捷。Serv-U不仅完全符合通用FTP标准,也包括众多的独特功能可为每个用户提供文件共享完美解决方案。它可以设定多个FTP 服务器、限定登录用户的权限、登录主目录及空间大小等。此外还支持SSL FTP传输,支持在多个Serv-U和FTP客户端通过SSL加密连接保护您的数据安全等。但是,随着Serv-U的大面积使用,一些攻击者也针对Serv-U开展攻击,暴露出很多严重漏洞。有些漏洞如不加以处理,可以使黑客轻而易举地获取整个服务器的超级管理员帐号,并可以远程开启3389端口并实现远程桌面链接,将服务器完全暴露于人,导致不可挽回的重大损失。本文旨在提出一些切实可行的方法,彻底杜绝由Serv-u带来的安全隐患。

1.Serv-U的提权漏洞分析

Serv-U安装后,在本机有一个默认监听端口,即127.0.0.1:43958。默认情况下这个端口只有在本地才能连接。默认管理账号是LocalAdministrator,默认密码是"#l@$ak#.lk;0@P",这个密码是内置固定的。所以几乎所有的针对Serv-U的攻击木马便是利用此漏洞来添加Serv-U用户的,比如增加一个将主目录指向C盘的全权限管理员用户,就能将服务器的关键目录全部暴露于黑客监控之下。下面我们用一个常用的ASP木马举例说明。

我们知道,在当前绝大多数虚拟主机中,一台服务器上往往存放多个站点,服务器管理员会为每个网站管理员分配一个FTP帐号来实现文件的上传下载。网站管理员凭借FTP帐号可以登录到服务器,并且对其所在的目录拥有全部权限(添加、修改、删除、运行等)。一般情况下,用户无法越过自己所在的主目录,因此网站文件的安全性比较有保障。但是倘若用户上传一个普通Web代码编写的木马程序到FTP目录,并运行之,如果服务器对执行权限限制不足,就会调用SHELL指令实现对系统的操作。比如,网上常见的ASP版的Serv-U提权木马,上传到FTP目录后,运行之后可以轻松添加Serv-U帐号。如下图所示。

提权成功后,攻击者可以直接通过木马执行命令添加操作系统的管理员帐户,并且管理员帐户是隐藏的(在普通windows的用户管理界面中无法发现)。如果成功,用这个帐户远程登录到服务器,创建一个克隆的管理员帐户,将这个账户的名称设置成与系统正常管理员账户相似的名称,如SQLDebugger等,非常具有迷惑性,一般管理员无法发现。攻击者便掌握了整台服务器。

2.Serv-U使用中的安全防护策略

2.1 Serv-U安装中的安全策略

Serv-U安装时安装目录的选择是安全性的第一步。首先不应安装在默认的系统盘目录里,因为此目录极易被猜到。另外,系统盘的权限控制也比较严格,不利于下一步对Serv-U的运行身份进行限制。因此建议安装在自定义的目录中。在安装选择中,Serv-u的用户配置文件有两种方式,一种是存放在注册表,一种是存放在ServUDaemon.ini文件,推荐使用存放在.ini文件里面的方式,这种方式便于Serv-U软件的升级,也便于重装系统后的ftp用户的恢复,在权限设置上也相对方便。本文中我们假设serv-u软件放在的的D:softServ-U目录里。

2.2 Serv-U的运行权限设置策略

Serv-U安装后,默认以系统用户中的SYSTEM权限运行。这是一个权限极高的用户,如果Serv-U被黑客攻击的手,就可以借助SYSTEM权限进行危险性操作。因此,要给Serv-U单独的、较低的用户权限运行。具体方法是:

(1)在计算机管理中新增帐户ftp,设置用户不能更改密码,密码永不过期,并设置一个复杂的密码,更改ftp用户隶属于权限较低的Guests组(默认是USERS组),也可以设置为不属于任何组。

(2)启动Serv-U(这时是使用默认的system权限运行的),选择本地服务器,自动开始,将Serv-U设置为系统服务,这样服务器在每次重启时Serv-U就会自动启动,这里我们主要利用其可以在服务中配置给Serv-U单独用户。

(3)设置D:softServ-U目录的权限为只保留administrators,ftp两个用户的权限,权限都是完全控制即可,并将权限应用到所有子目录。

(4) 在计算机管理中找到服务,找到Serv-U FTP 服务器,右键属性,在登录选项卡中将登录身份从本地系统帐户改为此帐户,帐户选择ftp,并输入设置好的密码。确定后会提示将在服务重启后生效,重新启动后,Serv-U就在低权限下运行了,如图所示。

(5)上传目录权限的设置。因为Serv-U是用ftp这个帐户运行的,所以上传的目录给予ftp用户的完全访问权限。比如我们可以设置D、E、F盘的权限为administrators和ftp完全控制的权限,System权限不需要设置,这就实现了在不影响FTP使用的前提下,一定程度上提高了这些目录的安全性。

2.3 Serv-U密码保护策略

针对权限提升等重大漏洞,采用Serv-U密码保护策略能够较好地封堵该漏洞。也就是所有增加删除修改serv-u的用户及更改设置的操作,都需要经过本地密码验证。可能有些管理员认为服务器密码只有本人知道,攻击者无法登录服务器,就无法增加serv-u帐户了,所以就不设置密码,这就埋下了巨大的安全隐患。在Serv-U中设置密码保护非常简单,只需要按照向导完成即可。

另外,通过本文第一节的分析不难看出,Serv-U采用固定的用户名密码作为默认管理帐号是非常不安全的。其实,我们可以通过对Serv-U主程序servUAdmin.exe的反编译,强行修改其默认密码,以保证安全性。方法如下:

用UltraEdit-32打开Serv-U安装目录下的可执行文件servUAdmin.exe ,如图所示,查找关键字“LocalAdministrator”和“#l@$ak#.lk;0@P”,将这两个字符串修改为等长度的字符串保存即可,注意因为我们是对编译后的exe文件进行修改,不能改变其长度,否则程序将出错,因此一定是等长度的。再打开ServUDaemon.exe,重复上述操作,并保证两次修改的内容一致。 经过设置Serv-U本地管理密码和修改Serv-u文件后,通过Web木马虽然也能提示执行命令成功,但实际服务器却没有任何变化,权限提升失败。FTP服务器安全性大大增强。

3.Serv-U的工作模式和防火墙设置

很多管理员可能都发现,在开了防火墙的服务器上利用FTP传输总有这样那样的小问题,传输数据“不够流畅”。究其原因,主要是FTP服务器的工作模式导致的。

3.1 主动FTP模式下的防火墻设置

主动FTP模式是指客户端从一个任意的非特权端口N(N>;1024)连接到FTP服务器的命令端口,也就是21端口。然后客户端开始监听端口N+1,并发送FTP命令“port N+ 1”到FTP服务器。接着服务器会从它自己的数据端口(20)连接到客户端指定的数据端口(N+1)。

在主动模式下,在防火墙设置中必须允许以下通讯才能支持主动方式FTP:任何端口到FTP服务器的21端口 (客户端初始化的连接 S);FTP服务器的21端口到大于1023的端口(服务器响应客户端的控制端口 S->C); FTP服务器的20端口到大于1023的端口(服务器端初始化数据连接到客户端的数据端口 S->C);大于1023端口到FTP服务器的20端口(客户端发送ACK响应到服务器的数据端口 S)。

3.2 被动FTP模式下的防火墙设置

被动模式页脚PASV方式,当客户端通知服务器它处于被动模式时才启用。 在被动方式FTP中,命令连接和数据连接都由客户端,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。当开启一个FTP连接时,客户端打开两个任意的非特权本地端口(N >; 1024和N+1)。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交PASV命令。这样做的结果是服务器会开启一个任意的非特权端口(P >; 1024),并发送PORT P命令给客户端。然后客户端发起从本地端口N+1到服务器的端口P的连接用来传送数据。

对于服务器端的防火墙来说,必须允许下面的通讯才能支持被动方式的FTP:从任何端口到服务器的21端口 (客户端初始化的连接 S);服务器的21端口到任何大于1023的端口 (服务器响应到客户端的控制端口的连接 S->C);从任何端口到服务器的大于1023端口 (入;客户端初始化数据连接到服务器指定的任意端口 S);服务器的大于1023端口到远程的大于1023的端口(出;服务器发送ACK响应和数据到客户端的数据端口 S->C)。

4.结语

综上所述,Serv-U作为当前最流行的FTP服务器软件之一,具有很多有点,但也因为软件本身漏洞和使用者安全意识和防范措施不够等原因带来很问题,严重威胁服务器安全。本文根据笔者从事服务器管理的经验,提出了一系列加强FTP服务器安全防范的具体办法,如果能够严格注重以上几点,基本可以实现安全地使用Serv-u。当然,服务器的安全是一个整体,任何地方的疏忽都有可能造成整个服务器的安全隐患,要保证服务器安全,还需要不断从整体上予以强化。

参考文献

[1]如何增强FTP服务器安全性.计算机与网络[J].2007年06期

[2]钟智. 基于云架构的FTP服务安全性研究.长春大学学报[J].2010年06期

[3]浅议FTP安全性问题.中国IT实验室. http://ciw.chinaitlab.com/ tutorial/7435.html

猜你喜欢

防护漏洞
漏洞
侦探推理游戏(二)
镁合金的腐蚀特性及防护探讨
三明:“两票制”堵住加价漏洞
木结构建筑的鉴赏与防护
低温冻害对浙中地区枇杷生产的影响及防护对策探讨
浅谈如何强化灭火救援战斗中的安全防护
高铁急救应补齐三漏洞
细数监管漏洞