Serv-U漏洞解析 防患于未然 serv_u安全设置

如上描述,如果serv_u不做任何安全设置就投入使用,到时候引起后果请大家一定要看下,一句话降低serv_u运行权限,设置密码,如果不会可以找我们帮忙解决。所有的工具我们服务器安全设置频道都有都有。

Serv-U是一个极为强大的FTP服务器软件,界面简洁,容易上手,不论是商业用途,还是自己搭个人FTP,它几乎成了首选软件,而近两年不断爆出的各个版本的安全漏洞,却让大家在使用Serv-U时不得不多留个心眼。

攻击手段

纵览一下当前网络上流行的漏洞攻击方式,软件缺陷所造成的溢出最为关键,简单的说溢出就是针对软件的bug,提交构造的恶意代码,造成软件执行攻击者的代码或指令。从2004到2005年内Serv-U就出现了4~5个溢出漏洞,极其严重的可远程获取电脑的完全管理权限,非常危险,这将直接导致我们的个人隐私完全暴漏,入侵者可以通过漏洞进入我们的计算机,肆意翻看电脑上的文章、照片。当前在网络中出现的攻击手段,主要有嗅探窃听、恶意攻击、权限提升、账号隐藏、漏洞溢出五种方式,而这些又是一个互相关联的过程。

嗅探窃听:这算是对Serv-U攻击的一个前奏。入侵者会通过一些嗅探软件窃听到FTP密码,毕竟一些攻击工具必须拥有账号才能实施攻击。

恶意攻击:使用大容量文件攻击,入侵者会利用这漏洞对Serv-U软件发送大容量的文件,然后导致FTP处理不过来而造成程序没响应或者自动关闭。

权限提升:前提是攻击者取得对Serv-U安装目录完全控制权限。如果Serv-U把配置信息写入扩展名为ini的文件,大部分攻击者会对目标主机Web服务进行渗透入侵,诸如利用流行的SQL注入,上传漏洞来进行入侵,进而对Serv-U的安装目录实施篡改ServUDaemon.ini文件,替换为自己设定好拥有执行权限的配置信息,以此来获取管理员身份特权。

账号隐藏:通过第三方插件(Serv-U扩展库),实现“账号-映射”,也就是让一个固定账号下面映射几个子账号,继承账号权限。攻击者必须拿到Serv-U目录的写权限,利用插件来对账号隐藏。

漏洞溢出:一般情况下,攻击者在确定版本有溢出漏洞之后,会自己编译或者在网络上寻找所对应的溢出漏洞攻击工具对目标系统进行溢出,成功将会取得目标系统的系统权限,由于Serv-U默认是以system权限运行,所以溢出成功后,所得到的权限为system权限。

大家可能会发现,除了软件异常以外,Serv-U目录读写权限已成为关键,可能就会想到设置好Serv-U目录权限,安全就得以保障了,其实不然,安全是一个整体。很多时候,在装有Serv-U的服务器上架设着Web服务器,我们不得不两者兼顾,有的放矢,才能把安全做好。

一次模拟入侵

我们可以从国内权威安全组织“绿盟”漏洞数据库中查找到在过去一年内的相关Serv-U漏洞,结果足让人吃惊,平均下来三个月就有一次漏洞。

2004-09-14 Serv-U FTP服务器设备文件名远程拒绝服务漏洞

2004-08-09 Serv-U本地权限提升漏洞

2004-04-22 Serv-U FTP服务器LIST命令超长-l参数远程缓冲区溢出漏洞

2004-02-27 Serv-U FTP服务器MDTM命令远程缓冲区溢出漏洞

2004-01-29 Serv-U FTP服务器SITE CHMOD命令超长文件名远程溢出漏洞

下面我们就以Serv-U本地权限提升漏洞为例来说明其危害性。

PCS小提示:尽管在Serv-U6.0.0.2中增加了密码安全设置功能。但是本文作者在对Serv-U6.0.0.2进行测试的时候发现,在安装Serv-U的服务器权限设置不当的时候依然能提升权限成功。

漏洞发现日期:2004-08-09

影响版本:RhinoSoft Serv-U 3.0.0.20 至RhinoSoft Serv-U 6.0.0.2

漏洞危害:Serv-U存在设计问题,本地攻击者可以利用这个漏洞以SYSTEM权限在操作系统上执行任意命令。

测试环境:Microsoft Windows Server 2003, Enterprise Edition+Serv-U FTP Server 6.0.0.2

测试过程:

第一步:以普通用户身份登录Windows,在开始菜单的运行窗口中输入cmd,在命令提示符下输入Serv-U6(运行Serv-U6本地提升权限工具,见图1):

输入serv-u6.exe 43958 “net user test test /add”,添加一个名为“test”的用户。

第二步:接着输入serv-u6.exe 43958 “net localgroup administrators test /add”将该账户提升为超级用户权限,如果成功,那么软件界面将会返回提示信息

<220 Serv-U FTP Server v6.0 for WinSock ready...

>USER LocalAdministrator

<331 User name okay, need password.
******************************************************

>PASS #l@$ak#.lk;0@P

<230 User logged in, proceed.
******************************************************

这个时候,你可以使用用户名test,密码test进行登录了,并且发现自己已经成为超级用户了,这里不需要再说明什么了,你已经拥有了系统的超级权限了,入侵者已经可以在你的电脑上为所欲为了。

漏洞解决方案:尽快升级到最新版本,由于此本地提升权限漏洞为软件设计问题,并非程序出现异常。

安全对策

Serv-U安全隐患重重,那么如何才能防范入侵呢?笔者以Windows 2003 Sp1系统、NTFS分区为例,在保证系统安装好最新补丁的情况下,来对系统进行安全部署。首先安装Serv-U最新版本于非系统分区,由于默认情况下系统盘的一些目录都被赋予了everyone权限,这给攻击者在获取Webshell的时候执行攻击程序提供了环境。安装过程很简单,注意安装过程中是否有必要设置匿名登录,否则禁止匿名登录。

1.系统权限设置

第一步:对Serv-U目录设置权限。对用户组进行清理,留下Administrators和system,我们赋予Administrator权限,当然我们还可以新建立一个用户组来对Serv-U操作,把目录赋予此用户完全控制的能力,不过此方法不适合虚拟主机进行日常添加和删除用户操作。

第二步:建立一个FTP用户目录,根目录赋予Administrators完全控制权限,System只读权限。

第三步:为每个用户创建各自的目录,并赋予如下安全策略:

删除 Everyone group(这里尤为关键)

该System account's folder's 完全控制

添加给用此目录的用户完全访问控制

第四步:通过Serv-U设置用户权限,取消“执行”权限。在Web目录中去掉执行权限,以防止取得webshell后运行攻击程序来对Serv-U进行攻击。在进行权限设置的时候请遵循基本规律:有特殊属性的放在前面,共用属性的放在后面!

此外,针对Serv-U的插件实现账号隐藏的攻击方式惟有在目录权限设置不当并且入侵者取得WebShell的时候进行文件替换,挂接Dll。只要权限设置合理,定期对Serv-U目录检查,Serv-U安装后文件并不多,此类攻击方式很容易现形。

2.防范大容量文件攻击

在安装好FTP软件后,首先需要添加自己的域,然后在域上添加FTP的登录用户,当添加用户后,软件一般默认没有对添加的用户进行文件上传、下载的速率进行设置,因此这样一来就有被攻击的隐患,那就是黑客会利用这个漏洞对FTP软件发送大容量的文件,然后导致FTP处理不过来而造成程序没响应或者自动关闭。

在“常规”中能看到“最大上传速度、最大下载速度(KB/秒)”的选项。我们一般默认是不填的,建议用户设置一个具体的数字来限制这个速度。同时,最好把在“空闲超时、任务超时、最大用户数”的选项上也设置一个具体的数值。一般地,默认10分钟就足够了(见图2)。

3.溢出防范

近期内暂未发现软件所造成的缓冲区溢出漏洞,但是建议用户关注安全新闻,注意打补丁,新版本中也解决了出现的BUG,最好的方法就是升级,以免造成不必要的损失。当然这是极为被动的方式,但愿广大朋友对安全多一点认识,多一点细致,多一点防范,也就会少一点损失。

4.端口密码设置

由于笔者使用的是Serv-U6.0.0.2版本,固可以在ServUDaemon.ini中加上LocalSetupPortNo=12345来改变本地管理端口,不用去改ServUDaemon.exe。修改以后我们要利用IPSec来限制IP访问12345端口。在新版本Serv-U6.0.0.2中已经提供对本地密码进行修改的功能,在其主界面右边,我们可以更改设置本地服务器密码,这样一来,就需要输入密码才能进行本地管理,默认的是#l@$ak#.lk;0@P也就是空,不需要密码就可以管理。我们设置和更改密码的时候,旧密码留空,然后设置好你的本地管理密码。设置完成后会在ServUDaemon.ini中添加LocalSetupPassword=eq8BD223881747 DB4FCC458FC5EE3774D6之类的一段(见图3)。

5.传输安全

由于Serv-U在未开启SSL时,FTP传输是以明文方式传输数据,在位于路由或交换环境下,这很容易被嗅探工具捕获,如强大的Sniffer Pro、NetXray,小一点的arpsniffer、Dsniffer都可以抓到,利用此方式攻击,很多安全站点被渗透也不是什么新鲜的话题了。所以下面我们来看看如何启用Serv-U的SSL功能。

第一步: 首先为Serv-U创建新的SSL服务器证书,启动Serv-U管理员,Serv-U默认为我们提供了一个证书,但所有默认安装的SSL证书私人密钥均一样。为安全起见,我们需重新建立一个,很简单,打开Serv-U“本地服务器”的“设置”选项,在管理界面右边,打开“SSL证书”,依次填入“普通名称(FTP服务器的IP地址)”、“电子邮件”等相关信息(见图4),点“应用”按钮将会在Serv-U目录下覆盖掉原Serv-U提供的证书ServUCert.crt。

第二步:初次使用我们应该对证书进行认证,把它安装到受信任的区域,点击“安装证书”,进入下一步“证书导入向导”,选择默认存储区域,点击“下一步”或者自行选择存储区域、完成,接着会弹出安全性警告(因为没有从证书颁发机构安装),这里不管它,点击“是”,进行证书安装,成功后会弹出“证书导入成功”对话框,确定后,我们再次打开ServUCert.crt,OK,证书已经信任了,这方便了FTP客户端进行登录时候不会弹出“是否信任”烦人的提示框,下一步我们来设置Serv-U以提供SSL支持(见图5)。

第三步:打开Serv-U服务器下面的域,比如www.xhacker.cn),在右边出现的“安全性”下拉框中,有三个选项,默认的是“仅仅规则FTP,无SSL/TLS会话”,既然我们要对FTP服务器进行SSL支持,我们就选择下面的“只允许SSL/TSL会话”,也可以根据需要选择“同时允许规则FTP,SSL/TSL会话”,应用后,Serv-U服务器就已经具备了SSL传输加密传输功效。

为安全考虑,只有对FTP客户端也启用SSL连接。以FlashFxp为例,首先在FlashFxp的快速连接窗口中,选择“SSL”,然后在“安全套接字”下面选择“认证SSL”。这样我们就可以使用SSL连接了,连接成功后,我们将会在FlashFxp的状态栏下看到一把小锁的标志,说明已经进行成功SSL安全连接。现在大家可以用嗅探工具对ftp端口进行嗅探,在未使用SSL传输连接的时候,可以嗅探到明文密码,通过使用SSL加密传输连接,逃过了明文传输被嗅探这一劫。

现在Serv-U FTP服务器在国内应用相当广泛,小到个人,大到集团,只要BUG一发现,针对漏洞的攻击代码一流传起来,将给诸多企业及个人用户带来巨大的灾难。对此,我们惟有确保安全部署好系统的情况下,对安全界投以关注的目光,时刻关注最新漏洞,做好防范措施,发现漏洞,及时给系统打上补丁,才能够保证Serv-U不被入侵。

(0)

相关推荐

  • SERV-U打造最安全的FTP安全设置教程[图文]第1/5页

    首先是SERV-U的SITE CHMOD漏洞和Serv-U MDTM漏洞,即利用一个账号可以轻易的得到SYSTEM权限.其次是Serv-u的本地溢出漏洞,即Serv-U有一个默认的管理用户(用户名:localadministrator,密码:# @$ak#. k;0@p),任何人只要通过一个能访问本地端口43958的账号就可以随意增删账号和执行任意内部和外部命令. 此时,人们才开始重视起SERV-U的安全来,并采取了一些相关措施,如修改SERV-U的管理端口.账号和密码等.但是,修改后的内容还是

  • 图解经典FTP服务器工具 SERV-U最安全的设置【防止被入侵】

    作为一款精典的FTP服务器软件,SERV-U一直被大部分管理员所使用,它简单的安装和配置以及强大的管理功能的人性化也一直被管理员们称颂.但是随着使用者越来越多,该软件的安全问题也逐渐显露出来. 首先是SERV-U的SITE CHMOD漏洞和Serv-U MDTM漏洞,即利用一个账号可以轻易的得到SYSTEM权限.其次是Serv-u的本地溢出漏洞,即Serv-U有一个默认的管理用户(用户名:localadministrator,密码:# @$ak#. k;0@p),任何人只要通过一个能访问本地端口

  • serv-u安全配置完整版

    一.serv-u安全隐患及利用.二.serv-u安装及安全设置详解.三.serv-u相关的模式与防火墙设置.四.关于serv-u的Banner及登录消息的设置. Serv-U是一款十分经典的FTP服务器软件,一直被大部分管理员和虚拟主机所使用,它简单的安装和配置以及强大的管理功能也一直被管理员们称颂.但是随着使用者越来越多,也有越来越多的主机被通过Serv-U软件所入侵. 本文旨在提出一些切实可行的方法,彻底杜绝由Serv-u带来的安全隐患. 1.Serv-u的安装: 关于Serv-u的安装网上

  • serv-u FTP 安全设置简单版 图文教程

    1.首先打开serv-u管理添加serv-u为系统服务,在自动开始打上勾 2.下面就到了该对SERV-U进行安全设置的时候了.首先建立一个WINDOWS账号(例如ftptest,密码设置复杂些)点击开始-所有程序-管理工具-计算机管理-本地用户和组 3.建好账号以后,双击建好的用户编辑用户属性,从"隶属于"里删除USERS组. 4.在开始菜单的管理工具里找到"服务"点击打开.在"Serv-U FTP Server服务"上点右键,选择属性继续. 然

  • Serv-U 安全设置图文教程

    先参考服务器安全设卸载最不安全的组件置. 用十六进制编辑器打开ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P, 修改成等长度的其它字符就可以了,ServUAdmin.exe也一样处理 另外注意设置Serv-U所在的文件夹的权限,不要让IIS匿名用户有读取的权限,否则人家下走你修改过的文件, 照样可以分析出你的管理员名和密码.Serv-U默认是以System组的身份运行的,对本机有完全操作的权限. 所以如果攻击者利用Serv-U程

  • 架设自己的FTP服务器 Serv-U详细配置图文教程[推荐]

    所有不是很要求安全的情况下是可以用serv_U的,当然我们也可以通过一些设置,保证serv_u安全运行.这里就分享下serv_u的安装方法,也分享姐不错的ftp服务器软件给大家. Serv-U FTP Server v6.4.0.6 汉化特别版(使用最广泛的FTP服务器) FTP服务器 FileZilla Server 绿色汉化版首先:Serv-U设置匿名登录帐户的操作是非常简单的 其次:匿名 的英文是:Anonymous 最后:在Serv-U的现有域里新建一个帐户名为Anonymous的用户,

  • Serv-U中禁止某类文件上传的设置方法

    一.禁止某类文件上传 在用户的"目录访问"那里添加一条访问规则,路径设置为 *.exe ,取消所有的权限,并把这个规则放在最上面的位置. Path=*.exe Access=--– 这样处理后,该用户就不能在自己的目录上传*.exe的文件了,同时目录下面的*.exe文件也不会被列出来,也不能修改已经上传的文件后缀为exe.在Serv-U 6版本中测试正常. 二.只允许某类文件上传 1.在用户的"目录访问"那里添加一条访问规则,路径设置为 *.html,设置 读取.写

  • Serv-U防溢出提权攻击解决设置方法

    前言: 大家应该都还没有忘记三年前在Serv-U5.004版的之前所有版本的"Serv-U FTPMDTM命令缓冲区溢出"与"Serv-U FTP服务器LIST命令超长-l参数远程缓冲区溢出漏洞"吧,这个漏洞让很多服务器管理员立坐不安,也让很多大型的站点.甚至电信级的服务器沦陷了...随着Serv-U新版本的推出,这个漏同已经不存在了:虽然溢出不存在了,但黑客永远也没有停止,所以伴随着来的又是Serv-U5.0到6.0之黑客常用的本地提升权限缺陷.(注:最常见的就如

  • serv-U FTP软件的攻击防守修改教程[图文]

    在看这篇文章之前,有几点要注意 1.everyone用户完全控制目录在服务器上绝对不能出现 2.WEB目录上的权限都是独立的一般情况下是读取和写入,无运行权利 3.ipsec做了限定相关出入站端口访问Serv-u本地默认管理端口,以默认管理员登陆新建域和用户来执行命令,Serv-u V3.x以上的版本默认本地管理端口是:127.0.0.1:43958,所以只能本机连接,默认管理员: LocalAdministrator,默认密码:#l@$ak#.lk;0@P,这是集成在Serv-u内部的,可以以

  • Serv-U漏洞解析 防患于未然 serv_u安全设置

    如上描述,如果serv_u不做任何安全设置就投入使用,到时候引起后果请大家一定要看下,一句话降低serv_u运行权限,设置密码,如果不会可以找我们帮忙解决.所有的工具我们服务器安全设置频道都有都有. Serv-U是一个极为强大的FTP服务器软件,界面简洁,容易上手,不论是商业用途,还是自己搭个人FTP,它几乎成了首选软件,而近两年不断爆出的各个版本的安全漏洞,却让大家在使用Serv-U时不得不多留个心眼. 攻击手段 纵览一下当前网络上流行的漏洞攻击方式,软件缺陷所造成的溢出最为关键,简单的说溢出

  • Serv_U 安全设置以后出现530 Not logged in, home directory does not exist的解决方法

    一般情况都是因为文件的上级目录不存在浏览权限.一般情况下,我们创建ftpadmin用户.文件结构如 : d:\wwwroot\jb51.net那么需要给wwwroot如下权限然后给ftpadmin用户jb51.net目录的全部权限,完全控制以外的都要选上即可. 在serv_u中我们需要定位到得目录是jb51.net目录.即可. 因为我们服务器开启了防火墙所以需要客户端(flashfxp)被动模式. 详细说明:Serv_U安装设置以及530 Not logged in, home director

  • phpcmsv9.0任意文件上传漏洞解析

    漏洞存在地址: burp抓包 POST /phpcms_v9.6.0_UTF8/install_package/index.php?m=member&c=index&a=register&siteid=1 HTTP/1.1 Host: 192.168.0.109 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0 Accept: text/html,ap

  • Vps 安全设置 Win2003中IIS的安全设置技巧

    一.禁止默认共享. 方法一:建立一个记事本,填上以下代码.保存为*.bat并加到启动项目中 net share c$ /del net share d$ /del net share e$ /del net share f$ /del net share ipc$ /del net share admin$ /del 方法二:修改注册表,(注意修改注册表前一定要先备份一下注册表,备份方法.在 运行>regedit,选择 文件>导出 ,取个文件名,导出即可,如果修改注册表失败,可以找到导出的注册

  • Windows DNS服务器曝"蠕虫级"漏洞,已存在长达17年

    漏洞介绍 SigRed漏洞的高危害性在于其是可蠕虫的,也就是可以自传播的,无需用户交互就能传播到易受攻击的设备上,允许未经身份验证的远程攻击者获得针对目标服务器的域管理员特权,并完全控制组织的IT基础架构. 漏洞运行机制 攻击者可以通过将恶意DNS查询发送到Windows DNS服务器并实现任意代码执行来利用SigRed漏洞,从而使黑客能够拦截和操纵用户的电子邮件和网络流量,使服务不可用,收获用户的电子邮件. 当DNS服务器无法解析给定域名(例如www.google.com)的IP地址时,查询会

  • Windows 2016 服务器安全设置

    话说跟2008的服务器安全设置很像 系统更新配置 更换Windows更新服务器 如果你觉得默认的Windows更新服务器比较慢,或者如果选择了阿里云或腾讯云服务器的话,可以更换Windows服务器. 右键开始菜单图标,选择"运行",然后输入gpedit.msc,依次选择 "计算机配置" - "管理模板" - "Windows 组件" - "Windows 更新",双击"指定 Intranet Mi

  • 详解各种PHP函数漏洞

    1.MD5 compare漏洞 PHP在处理哈希字符串时,会利用"!="或"=="来对哈希值进行比较,它把每一个以"0E"开头的哈希值都解释为0,所以如果两个不同的密码经过哈希以后,其哈希值都是以"0E"开头的,那么PHP将会认为他们相同,都是0. 常见的payload有 0x01 md5(str) QNKCDZO 240610708 s878926199a s155964671a s214587387a s214587387

  • php使用parse_url和parse_str解析URL

    PHP中有两个方法可以用来解析URL,分别是parse_url和parse_str. parse_url 解析 URL,返回其组成部分 mixed parse_url ( string $url [, int $component = -1 ] ) 本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分. 本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分.不完整的 URL 也被接受,parse_url() 会尝试尽量正确地将其解析. 参数 url

  • 浅谈PHP解析URL函数parse_url和parse_str

    PHP中有两个方法可以用来解析URL,分别是parse_url和parse_str. parse_url 解析 URL,返回其组成部分 mixed parse_url ( string $url [, int $component = -1 ] ) 本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分. 本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分.不完整的 URL 也被接受,parse_url() 会尝试尽量正确地将其解析. 参数 url

  • VPS(win2003)安全设置教程

    一.禁止默认共享. 方法一: 建立一个记事本,填上以下代码.保存为*.bat并加到启动项目中 复制代码 代码如下: net share c$ /del net share d$ /del net share e$ /del net share f$ /del net share ipc$ /del net share admin$ /del 方法二:修改注册表,(注意修改注册表前一定要先备份一下注册表,备份方法.在运行>regedit,选择 文件>导出,取个文件名,导出即可,如果修改注册表失败

随机推荐