很多公司或企业将其Web服务器放在内网,并在防火墙上做映射,将来自80端口的请求转向一台内网Web服务器的Web端口。这样做安全性是提高了不少,但并不代表将Web服务器隐藏在内网就一定安全了,因为Web服务器本身还是存在很多问题的,特别是一些CG,程序,往往这是人们最容易忽视的地方。下面就以一台开放80端口的Web服务器为例,来测试其存在的安全隐患问题,并且对存在问题做测试描述,指出问题的症结所在并给出防范错施。
这是某大学的娱乐休闲网站,进去看了看,页面做得不错,先看一看是什么Web服务器吧。
D:\ne -vv www.target.com 80
DNS fwd/rev mismatch:www.target.com!=traget
www.target.com[192.168.0.1]80(http)open
GEP/HTTP/1.0
HOST:www.target.com
HTTP/1.1 200 OK
Server:Microsoft-IIS/5.0
Content-location:http://www.target.com/index.asp
Date:Thu,22 May 2003 12:13:32 GMT
Content-Type:text/html
......
是IIS5.0,看看能不能直接溢出。用最新的IIS的WebDav溢出试试。个人感觉isno写的那个溢出比较好用,但因为它是在内网,这个工具导致溢出后会直接在7788端口绑定一个cmd,这对我们的这次入侵来说肯定是不行的。所以,我将它修改了一下,使它可以反向连接,但最终还是不行,看来对方是打了补丁的。
又逛了一下其他版面,看到有个BBS,是动网的论坛而且版本还比较低(5.00320)。不错,这往往是我们的突破口(第一大失败)。很早以前我和我的好友pskey曾发现一个它的cookie变量未过滤漏洞,他还写了一个Exploit(程序放在光盘中)。通过这个漏洞,我可以随意更改任意用户(包括总版主)的用户密码。我用这个ID进去,进到后台管理,修改设置,允许上传exe、asp等文件。再看看有没有禁用FSO,结果没有禁用(第二大失败)。我通过它上传了一个aspcmdshell。这个aspcmdshell可以使我以guests组权限的用户在Web服务器上执行命令,当然,前题是它没有丢掉guests组对%systemroot%\winnt\cdm.exe的访问执行权限。试试"dir c:\"看看,果然没有禁止运行(第三大失败)。其实,如果它禁止了cmd.exe的运行权限也不要紧的,我们可以自已上传一个上去,再改一下这个aspcmdshell就可以了。有了这个aspcmdshell,我们可以做很多事情。当然这还不够,我的目的是拿到最高权限。此时我就准备提升权限了。先看一看管理员给了guests组哪些权限,看一下ipconfig的返回结果:
Windows 2000 IP Configuration
Ethernet adapter本地连接:
Connection-specific DNS Suffix.:
IP Address.................: 192.168.1.222
Subnet Mask................: 255.255.255.0
Default Gateway............: 192.168.1.1
哟,在内网,不错,再试试C:\可不可写,答案是不可写(不错)。再试试其他目录,整个C.盘都不可写,只给了Web目录的可写权限。再看一看跑了哪些服务,用netstat -an命令来查看一下。
TCP 127.0.0.1:1433
0.0.0.0:0
LISTENING哟!还跑了MSSQL的,不错。这时候第一个想做的就是看看哪些程序使用了MSSQL数据库。再到主页上逛逛,看到有一个新闻系统,很有可能就是它。用刚才那个aspcmdshell去查看一下这个news/目录里面的ASP程序,看到很多文件第一行都有
转载于:https://www.cnblogs.com/ourstyle/archive/2008/09/03/1282514.html