最近学习ASP,想申请一个免费空间。找到一个满意的一看,限制还真不少,不但最多只能放30MB的文件,单个上传文件还不能超过1.5MB,而且也不支持ASP。这怎么行呢?严重打击我学习的积极性。于是我就想能不能突破网站的限制。

  首先用X-Scan2.3扫描,不一会儿结果出来了,有用的信息有:“Windows 2000操作系统,139端口开放”、“80端口开放,Web服务器用的是IIS”、“1433端口开放,用的是MS SQL Server”、“3389远程管理端口在开启状态”。

  看来只有对Web下手了。观摩了一下这个PHP个人主页系统,不管了,先用简单的办法碰碰运气。用自己的账号和密码登录进去,(这是一个Web方式管理的个人主页系统,不支持FTP),在个人主页根目录下建立一个rich4文件夹,把自己曾玩过的save1.dat(游戏记录文件)传上去。这时我看到IE的地址栏变成了:“http://***.php?action=chdr&file=%2Frich4”,看到这个地址的奇怪之处没有,我把rich4文件名改成“/.”,地址栏就成了“http://***.php?action=chdr&file=%2F/.”。再接再厉,把“/..”改成“/../..”即“***.php?action=chdr&file=%2F/../..”居然看到了Recycled目录。看来进入硬盘根目录下了。这个硬盘有不少文件夹,有个人主页目录Free(这个目录下放着很多个人主页的文件夹),还有一个备份目录。有什么呢?进去看看,在admin子目录中有个global.asa文件,点击编辑,哈哈,果然看到账户了。后面的过程就不说了。
后 记:

  其实这个免费主页空间的管理员还是有一定安全意识的(Windows 2000系统安装在C盘,IIS安装在D盘,个人主页安装在F盘)。问题出在什么地方呢?

  1.个人主页采用PHP系统,但是没有过滤“/”、“.”等特殊符号,所以可以遍阅F盘下的任何文件;

  2.个人主页后台管理系统采用ASP系统,放在D盘下,但是居然在F盘里放了一个备份,让我阅读了global.asa文件,看到了MS SQL Server的“sa”账户密码;

  3.没有取消“sa”账号的远程连接,也没有删除xp_cmdshell,使得我可以执行cmd本地命令。